Package org.apache.hadoop.hbase.index.client

Examples of org.apache.hadoop.hbase.index.client.MultiIndexExpression


    // TODO add assertions
  }

  @Test
  public void testMultiIndexExpression() throws Exception {
    MultiIndexExpression multiIndexExpression = new MultiIndexExpression(GroupingCondition.AND);
    String index1 = "idx1";
    SingleIndexExpression singleIndexExpression = new SingleIndexExpression(index1);
    byte[] value2 = Bytes.toBytes(1234);
    Column column = new Column(FAMILY1, QUALIFIER2);
    EqualsExpression equalsExpression = new EqualsExpression(column, value2);
    singleIndexExpression.addEqualsExpression(equalsExpression);
    column = new Column(FAMILY1, QUALIFIER3);
    byte[] value3_1 = Bytes.toBytes(10.4F);
    byte[] value3_2 = Bytes.toBytes(16.91F);
    RangeExpression re = new RangeExpression(column, value3_1, value3_2, true, false);
    singleIndexExpression.setRangeExpression(re);
    multiIndexExpression.addIndexExpression(singleIndexExpression);

    MultiIndexExpression multiIndexExpression2 = new MultiIndexExpression(GroupingCondition.OR);
    String index2 = "idx2";
    singleIndexExpression = new SingleIndexExpression(index2);
    byte[] value1 = Bytes.toBytes("asdf");
    column = new Column(FAMILY1, QUALIFIER1);
    equalsExpression = new EqualsExpression(column, value1);
    singleIndexExpression.addEqualsExpression(equalsExpression);
    multiIndexExpression2.addIndexExpression(singleIndexExpression);

    String index3 = "idx3";
    singleIndexExpression = new SingleIndexExpression(index3);
    byte[] value4 = Bytes.toBytes(567.009D);
    column = new Column(FAMILY2, QUALIFIER1);
    equalsExpression = new EqualsExpression(column, value4);
    singleIndexExpression.addEqualsExpression(equalsExpression);
    multiIndexExpression2.addIndexExpression(singleIndexExpression);

    multiIndexExpression.addIndexExpression(multiIndexExpression2);

    Scan scan = new Scan();
    scan.setAttribute(Constants.INDEX_EXPRESSION, IndexUtils.toBytes(multiIndexExpression));
View Full Code Here


  }

  private FilterNode convertIdxExpToFilterNode(IndexExpression indexExpression,
      Map<String, IndexSpecification> nameVsIndex, String tableName) {
    if (indexExpression instanceof MultiIndexExpression) {
      MultiIndexExpression mie = (MultiIndexExpression) indexExpression;
      NonLeafFilterNode nlfn = new NonLeafFilterNode(mie.getGroupingCondition());
      for (IndexExpression ie : mie.getIndexExpressions()) {
        FilterNode fn = convertIdxExpToFilterNode(ie, nameVsIndex, tableName);
        nlfn.addFilterNode(fn);
      }
      return nlfn;
    } else {
View Full Code Here

TOP

Related Classes of org.apache.hadoop.hbase.index.client.MultiIndexExpression

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.