1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.hadoop.hbase.codec.prefixtree.column.data;
20
21 import java.util.List;
22
23 import org.apache.hadoop.hbase.KeyValue;
24 import org.apache.hadoop.hbase.codec.prefixtree.column.TestColumnData;
25 import org.apache.hadoop.hbase.util.ByteRange;
26 import org.apache.hadoop.hbase.util.SimpleByteRange;
27 import org.apache.hadoop.hbase.util.byterange.ByteRangeSet;
28 import org.apache.hadoop.hbase.util.byterange.impl.ByteRangeTreeSet;
29 import org.apache.hadoop.hbase.util.test.RedundantKVGenerator;
30
31 import com.google.common.collect.Lists;
32
33 public class TestColumnDataRandom implements TestColumnData {
34
35 private List<ByteRange> inputs = Lists.newArrayList();
36 private List<ByteRange> outputs = Lists.newArrayList();
37
38 public TestColumnDataRandom(int numColumns) {
39 RedundantKVGenerator generator = new RedundantKVGenerator();
40 ByteRangeSet sortedColumns = new ByteRangeTreeSet();
41 List<KeyValue> d = generator.generateTestKeyValues(numColumns);
42 for (KeyValue col : d) {
43 ByteRange colRange = new SimpleByteRange(col.getQualifier());
44 inputs.add(colRange);
45 sortedColumns.add(colRange);
46 }
47 for (ByteRange col : sortedColumns.compile().getSortedRanges()) {
48 outputs.add(col);
49 }
50 }
51
52 @Override
53 public List<ByteRange> getInputs() {
54 return inputs;
55 }
56
57 @Override
58 public List<ByteRange> getOutputs() {
59 return outputs;
60 }
61
62 }