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