HTable table = new HTable(conf, userTableName);
rangePutForIdx2(table);
rangePutForIdx3(table);
rangePutForIdx4(table);
FilterList masterFilter = new FilterList(Operator.MUST_PASS_ALL);
FilterList filterList1 = new FilterList(Operator.MUST_PASS_ONE);
SingleColumnValueFilter scvf =
new SingleColumnValueFilter("cf1".getBytes(), "c1".getBytes(), CompareOp.GREATER_OR_EQUAL,
"2".getBytes());
SingleColumnValueFilter scvf2 =
new SingleColumnValueFilter("cf1".getBytes(), "c1".getBytes(), CompareOp.LESS_OR_EQUAL,
"4".getBytes());
SingleColumnValueFilter scvf3 =
new SingleColumnValueFilter("cf1".getBytes(), "c1".getBytes(), CompareOp.GREATER_OR_EQUAL,
"1".getBytes());
filterList1.addFilter(scvf);
filterList1.addFilter(scvf2);
filterList1.addFilter(scvf3);
SingleColumnValueFilter scvfsub =
new SingleColumnValueFilter("cf1".getBytes(), "c1".getBytes(), CompareOp.GREATER,
"2".getBytes());
SingleColumnValueFilter scvf2sub =
new SingleColumnValueFilter("cf1".getBytes(), "c2".getBytes(), CompareOp.LESS_OR_EQUAL,
"6".getBytes());
SingleColumnValueFilter scvf3sub =
new SingleColumnValueFilter("cf1".getBytes(), "c3".getBytes(), CompareOp.EQUAL,
"2".getBytes());
RowFilter rowFilter =
new RowFilter(CompareOp.EQUAL, new BinaryComparator(Bytes.toBytes("row1")));
FilterList filterList2 = new FilterList(Operator.MUST_PASS_ONE);
filterList2.addFilter(scvfsub);
filterList2.addFilter(scvf2sub);
filterList2.addFilter(scvf3sub);
filterList2.addFilter(rowFilter);
SingleColumnValueFilter scvfsub1 =
new SingleColumnValueFilter("cf1".getBytes(), "c1".getBytes(), CompareOp.GREATER,
"2".getBytes());
SingleColumnValueFilter scvf2sub2 =
new SingleColumnValueFilter("cf1".getBytes(), "c2".getBytes(), CompareOp.LESS_OR_EQUAL,
"6".getBytes());
SingleColumnValueFilter scvf3sub3 =
new SingleColumnValueFilter("cf1".getBytes(), "c3".getBytes(), CompareOp.EQUAL,
"2".getBytes());
RowFilter rowFilter2 =
new RowFilter(CompareOp.EQUAL, new BinaryComparator(Bytes.toBytes("row1")));
FilterList subFilterList = new FilterList(Operator.MUST_PASS_ONE);
subFilterList.addFilter(scvfsub1);
subFilterList.addFilter(scvf2sub2);
subFilterList.addFilter(scvf3sub3);
subFilterList.addFilter(rowFilter2);
filterList1.addFilter(subFilterList);
masterFilter.addFilter(filterList1);
masterFilter.addFilter(filterList2);
Scan scan = new Scan();