1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package org.apache.hadoop.hbase.rest;
21
22 import java.io.IOException;
23 import java.util.Iterator;
24
25 import org.apache.hadoop.classification.InterfaceAudience;
26 import org.apache.hadoop.hbase.KeyValue;
27 import org.apache.hadoop.hbase.filter.Filter;
28 import org.apache.hadoop.hbase.rest.model.ScannerModel;
29
30 @InterfaceAudience.Private
31 public abstract class ResultGenerator implements Iterator<KeyValue> {
32
33 public static ResultGenerator fromRowSpec(final String table,
34 final RowSpec rowspec, final Filter filter) throws IOException {
35 if (rowspec.isSingleRow()) {
36 return new RowResultGenerator(table, rowspec, filter);
37 } else {
38 return new ScannerResultGenerator(table, rowspec, filter);
39 }
40 }
41
42 public static Filter buildFilter(final String filter) throws Exception {
43 return ScannerModel.buildFilter(filter);
44 }
45
46 public abstract void putBack(KeyValue kv);
47
48 public abstract void close();
49 }