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.hbase.classification.InterfaceAudience;
26 import org.apache.hadoop.hbase.Cell;
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<Cell> {
32
33 public static ResultGenerator fromRowSpec(final String table,
34 final RowSpec rowspec, final Filter filter, final boolean cacheBlocks)
35 throws IOException {
36 if (rowspec.isSingleRow()) {
37 return new RowResultGenerator(table, rowspec, filter, cacheBlocks);
38 } else {
39 return new ScannerResultGenerator(table, rowspec, filter, cacheBlocks);
40 }
41 }
42
43 public static Filter buildFilter(final String filter) throws Exception {
44 return ScannerModel.buildFilter(filter);
45 }
46
47 public abstract void putBack(Cell kv);
48
49 public abstract void close();
50 }