Example usage for org.apache.lucene.search IndexOrDocValuesQuery IndexOrDocValuesQuery

List of usage examples for org.apache.lucene.search IndexOrDocValuesQuery IndexOrDocValuesQuery

Introduction

In this page you can find the example usage for org.apache.lucene.search IndexOrDocValuesQuery IndexOrDocValuesQuery.

Prototype

public IndexOrDocValuesQuery(Query indexQuery, Query dvQuery) 

Source Link

Document

Create an IndexOrDocValuesQuery .

Usage

From source file:org.elasticsearch.index.mapper.RangeFieldQueryStringQueryBuilderTests.java

License:Apache License

public void testIntegerRangeQuery() throws Exception {
    Query query = new QueryStringQueryBuilder(INTEGER_RANGE_FIELD_NAME + ":[-450 TO 45000]")
            .toQuery(createShardContext());
    Query range = IntRange.newIntersectsQuery(INTEGER_RANGE_FIELD_NAME, new int[] { -450 },
            new int[] { 45000 });
    Query dv = RangeFieldMapper.RangeType.INTEGER.dvRangeQuery(INTEGER_RANGE_FIELD_NAME,
            BinaryDocValuesRangeQuery.QueryType.INTERSECTS, -450, 45000, true, true);
    assertEquals(new IndexOrDocValuesQuery(range, dv), query);
}

From source file:org.elasticsearch.index.mapper.RangeFieldQueryStringQueryBuilderTests.java

License:Apache License

public void testLongRangeQuery() throws Exception {
    Query query = new QueryStringQueryBuilder(LONG_RANGE_FIELD_NAME + ":[-450 TO 45000]")
            .toQuery(createShardContext());
    Query range = LongRange.newIntersectsQuery(LONG_RANGE_FIELD_NAME, new long[] { -450 },
            new long[] { 45000 });
    Query dv = RangeFieldMapper.RangeType.LONG.dvRangeQuery(LONG_RANGE_FIELD_NAME,
            BinaryDocValuesRangeQuery.QueryType.INTERSECTS, -450, 45000, true, true);
    assertEquals(new IndexOrDocValuesQuery(range, dv), query);
}

From source file:org.elasticsearch.index.mapper.RangeFieldQueryStringQueryBuilderTests.java

License:Apache License

public void testFloatRangeQuery() throws Exception {
    Query query = new QueryStringQueryBuilder(FLOAT_RANGE_FIELD_NAME + ":[-450 TO 45000]")
            .toQuery(createShardContext());
    Query range = FloatRange.newIntersectsQuery(FLOAT_RANGE_FIELD_NAME, new float[] { -450 },
            new float[] { 45000 });
    Query dv = RangeFieldMapper.RangeType.FLOAT.dvRangeQuery(FLOAT_RANGE_FIELD_NAME,
            BinaryDocValuesRangeQuery.QueryType.INTERSECTS, -450.0f, 45000.0f, true, true);
    assertEquals(new IndexOrDocValuesQuery(range, dv), query);
}

From source file:org.elasticsearch.index.mapper.RangeFieldQueryStringQueryBuilderTests.java

License:Apache License

public void testDoubleRangeQuery() throws Exception {
    Query query = new QueryStringQueryBuilder(DOUBLE_RANGE_FIELD_NAME + ":[-450 TO 45000]")
            .toQuery(createShardContext());
    Query range = DoubleRange.newIntersectsQuery(DOUBLE_RANGE_FIELD_NAME, new double[] { -450 },
            new double[] { 45000 });
    Query dv = RangeFieldMapper.RangeType.DOUBLE.dvRangeQuery(DOUBLE_RANGE_FIELD_NAME,
            BinaryDocValuesRangeQuery.QueryType.INTERSECTS, -450.0, 45000.0, true, true);
    assertEquals(new IndexOrDocValuesQuery(range, dv), query);
}

From source file:org.elasticsearch.index.mapper.RangeFieldQueryStringQueryBuilderTests.java

License:Apache License

public void testDateRangeQuery() throws Exception {
    QueryShardContext context = createShardContext();
    RangeFieldMapper.RangeFieldType type = (RangeFieldMapper.RangeFieldType) context
            .fieldMapper(DATE_RANGE_FIELD_NAME);
    DateMathParser parser = type.dateMathParser;
    Query query = new QueryStringQueryBuilder(DATE_RANGE_FIELD_NAME + ":[2010-01-01 TO 2018-01-01]")
            .toQuery(createShardContext());
    Query range = LongRange.newIntersectsQuery(DATE_RANGE_FIELD_NAME,
            new long[] { parser.parse("2010-01-01", () -> 0) },
            new long[] { parser.parse("2018-01-01", () -> 0) });
    Query dv = RangeFieldMapper.RangeType.DATE.dvRangeQuery(DATE_RANGE_FIELD_NAME,
            BinaryDocValuesRangeQuery.QueryType.INTERSECTS, parser.parse("2010-01-01", () -> 0),
            parser.parse("2018-01-01", () -> 0), true, true);
    assertEquals(new IndexOrDocValuesQuery(range, dv), query);
}

From source file:org.elasticsearch.index.mapper.RangeFieldQueryStringQueryBuilderTests.java

License:Apache License

public void testIPRangeQuery() throws Exception {
    InetAddress lower = InetAddresses.forString("192.168.0.1");
    InetAddress upper = InetAddresses.forString("192.168.0.5");
    Query query = new QueryStringQueryBuilder(IP_RANGE_FIELD_NAME + ":[192.168.0.1 TO 192.168.0.5]")
            .toQuery(createShardContext());
    Query range = InetAddressRange.newIntersectsQuery(IP_RANGE_FIELD_NAME, lower, upper);
    Query dv = RangeFieldMapper.RangeType.IP.dvRangeQuery(IP_RANGE_FIELD_NAME,
            BinaryDocValuesRangeQuery.QueryType.INTERSECTS, lower, upper, true, true);
    assertEquals(new IndexOrDocValuesQuery(range, dv), query);
}

From source file:org.elasticsearch.xpack.security.authz.accesscontrol.FieldExtractorTests.java

License:Open Source License

public void testIndexOrDocValuesQuery() {
    Set<String> fields = new HashSet<>();
    Query supported = IntPoint.newExactQuery("foo", 42);
    Query unsupported = NumericDocValuesField.newSlowExactQuery("bar", 3);

    IndexOrDocValuesQuery query = new IndexOrDocValuesQuery(supported, supported);
    FieldExtractor.extractFields(query, fields);
    assertEquals(asSet("foo"), fields);

    IndexOrDocValuesQuery query2 = new IndexOrDocValuesQuery(unsupported, unsupported);
    expectThrows(UnsupportedOperationException.class,
            () -> FieldExtractor.extractFields(query2, new HashSet<>()));

    fields = new HashSet<>();
    IndexOrDocValuesQuery query3 = new IndexOrDocValuesQuery(supported, unsupported);
    FieldExtractor.extractFields(query3, fields);
    assertEquals(asSet("foo"), fields);

    fields = new HashSet<>();
    IndexOrDocValuesQuery query4 = new IndexOrDocValuesQuery(unsupported, supported);
    FieldExtractor.extractFields(query4, fields);
    assertEquals(asSet("foo"), fields);
}