private Query createUpdatedSinceTimeRange(long timeInMicros) { long limitToNowInMicros = Utils.fromNowMicrosUtc(TimeUnit.SECONDS.toMicros(10)); NumericRange<Long> range = NumericRange.createLongRange(timeInMicros, limitToNowInMicros, true, false); range.precisionStep = 64; // 4 and 8 doesn't work. 16 works but set 64 to be certain. QueryTask.Query latestSinceCondition = new QueryTask.Query() .setTermPropertyName(ServiceDocument.FIELD_NAME_UPDATE_TIME_MICROS) .setNumericRange(range) .setTermMatchType(MatchType.TERM); latestSinceCondition.occurance = Occurance.MUST_OCCUR; return latestSinceCondition; }
private Query createUpdatedSinceTimeRange(long timeInMicros) { long limitToNowInMicros = Utils.getNowMicrosUtc() + TimeUnit.SECONDS.toMicros(10); NumericRange<Long> range = NumericRange.createLongRange(timeInMicros, limitToNowInMicros, true, false); range.precisionStep = 64; // 4 and 8 doesn't work. 16 works but set 64 to be certain. QueryTask.Query latestSinceCondition = new QueryTask.Query() .setTermPropertyName(ServiceDocument.FIELD_NAME_UPDATE_TIME_MICROS) .setNumericRange(range) .setTermMatchType(MatchType.TERM); latestSinceCondition.occurance = Occurance.MUST_OCCUR; return latestSinceCondition; }
@Test public void testSimpleLongLessThanOrEqualQuery() throws Throwable { Query expected = new Query(); // The test $filter is (age le 50). This corresponds to a range query. NumericRange<Long> r = QueryTask.NumericRange.createLongRange(Long.MIN_VALUE, (long) 50, true, true); expected.setNumericRange(r); expected.setTermPropertyName("age"); String odataFilter = String.format("%s le 50", expected.term.propertyName); Query actual = toQuery(odataFilter); assertQueriesEqual(actual, expected); }
private QueryTask buildEventLogCountQuery(List<String> tenantLinks) { QueryTask qt = QueryUtil.buildQuery(EventLogState.class, true); if (!tenantLinks.isEmpty()) { qt.querySpec.query.addBooleanClause(QueryUtil.addTenantGroupAndUserClause(tenantLinks)); } long nMinutesAgo = Utils.fromNowMicrosUtc(-EVENTS_TIME_INTERVAL_MICROS); QueryTask.Query numOfInstancesClause = new QueryTask.Query() .setTermPropertyName(ServiceDocument.FIELD_NAME_UPDATE_TIME_MICROS) .setNumericRange(NumericRange.createLongRange(nMinutesAgo, Long.MAX_VALUE, true, false)) .setTermMatchType(MatchType.TERM); qt.querySpec.query.addBooleanClause(numOfInstancesClause); QueryTask.Query eventTypeClause = new QueryTask.Query() .setTermPropertyName(EventLogState.FIELD_NAME_EVENT_LOG_TYPE) .setTermMatchValue(EventLogState.EventLogType.INFO.toString()) .setTermMatchType(MatchType.TERM); eventTypeClause.occurance = Occurance.MUST_NOT_OCCUR; qt.querySpec.query.addBooleanClause(eventTypeClause); QueryUtil.addCountOption(qt); return qt; }
@Test public void testSimpleLongGreaterThanQuery() throws Throwable { Query expected = new Query(); // The test $filter is (age gt 50). This corresponds to a range query. NumericRange<Long> r = QueryTask.NumericRange.createLongRange((long) 50, Long.MAX_VALUE, false, true); expected.setNumericRange(r); expected.setTermPropertyName("age"); String odataFilter = String.format("%s gt 50", expected.term.propertyName); Query actual = toQuery(odataFilter); assertQueriesEqual(actual, expected); }
private QueryTask createGraphQueryStage(int stageIndex) { QueryTask stage = QueryTask.Builder.create() .addOption(QueryOption.SELECT_LINKS) .addLinkTerm(QueryValidationServiceState.FIELD_NAME_SERVICE_LINKS) .setQuery(Query.Builder.create() .addRangeClause(QueryValidationServiceState.FIELD_NAME_LONG_VALUE, NumericRange.createLongRange((long) stageIndex, (long) stageIndex, true, true)) .addKindFieldClause(QueryValidationServiceState.class) .build()) .build(); return stage; }
@Test public void testSimpleLongGreaterThanQuery() throws Throwable { Query expected = new Query(); // The test $filter is (age gt 50). This corresponds to a range query. NumericRange<Long> r = QueryTask.NumericRange.createLongRange((long) 50, Long.MAX_VALUE, false, true); expected.setNumericRange(r); expected.setTermPropertyName("age"); String odataFilter = String.format("%s gt 50", expected.term.propertyName); Query actual = toQuery(odataFilter); assertQueriesEqual(actual, expected); }
@Test public void testSimpleLongGreaterThanOrEqualQuery() throws Throwable { Query expected = new Query(); // The test $filter is (age ge 50). This corresponds to a range query. NumericRange<Long> r = QueryTask.NumericRange.createLongRange((long) 50, Long.MAX_VALUE, true, true); expected.setNumericRange(r); expected.setTermPropertyName("age"); String odataFilter = String.format("%s ge 50", expected.term.propertyName); Query actual = toQuery(odataFilter); assertQueriesEqual(actual, expected); }
@Test public void testSimpleLongLessThanOrEqualQuery() throws Throwable { Query expected = new Query(); // The test $filter is (age le 50). This corresponds to a range query. NumericRange<Long> r = QueryTask.NumericRange.createLongRange(Long.MIN_VALUE, (long) 50, true, true); expected.setNumericRange(r); expected.setTermPropertyName("age"); String odataFilter = String.format("%s le 50", expected.term.propertyName); Query actual = toQuery(odataFilter); assertQueriesEqual(actual, expected); }
@Test public void testSimpleLongLessThanQuery() throws Throwable { Query expected = new Query(); // The test $filter is (age lt 50). This corresponds to a range query. NumericRange<Long> r = QueryTask.NumericRange.createLongRange(Long.MIN_VALUE, (long) 50, true, false); expected.setNumericRange(r); expected.setTermPropertyName("age"); String odataFilter = String.format("%s lt 50", expected.term.propertyName); Query actual = toQuery(odataFilter); assertQueriesEqual(actual, expected); }
@Test public void testSimpleLongEqualQuery() throws Throwable { Query expected = new Query(); // The test $filter is (age eq 50). NumericRange<Long> r = QueryTask.NumericRange.createLongRange((long) 50, (long) 50, true, true); expected.setNumericRange(r); expected.setTermPropertyName("age"); String odataFilter = String.format("%s eq 50", expected.term.propertyName); Query actual = toQuery(odataFilter); assertQueriesEqual(actual, expected); }
@Test public void testSimpleLongGreaterThanOrEqualQuery() throws Throwable { Query expected = new Query(); // The test $filter is (age ge 50). This corresponds to a range query. NumericRange<Long> r = QueryTask.NumericRange.createLongRange((long) 50, Long.MAX_VALUE, true, true); expected.setNumericRange(r); expected.setTermPropertyName("age"); String odataFilter = String.format("%s ge 50", expected.term.propertyName); Query actual = toQuery(odataFilter); assertQueriesEqual(actual, expected); }
public static NumericRange<?> createEqualRange(Number num) { if (num instanceof Double) { return createDoubleRange((Double) num, (Double) num, true, true); } return createLongRange((Long) num, (Long) num, true, true); }
public static NumericRange<?> createLessThanRange(Number max) { if (max instanceof Double) { return createDoubleRange(Double.MIN_VALUE, (Double) max, true, false); } return createLongRange(Long.MIN_VALUE, (Long) max, true, false); }
private QueryTask createGraphQueryStage(int stageIndex) { QueryTask stage = QueryTask.Builder.create() .addOption(QueryOption.SELECT_LINKS) .addLinkTerm(QueryValidationServiceState.FIELD_NAME_SERVICE_LINKS) .setQuery(Query.Builder.create() .addRangeClause(QueryValidationServiceState.FIELD_NAME_LONG_VALUE, NumericRange.createLongRange((long) stageIndex, (long) stageIndex, true, true)) .addKindFieldClause(QueryValidationServiceState.class) .build()) .build(); return stage; }
@Test public void testSimpleLongLessThanQuery() throws Throwable { Query expected = new Query(); // The test $filter is (age lt 50). This corresponds to a range query. NumericRange<Long> r = QueryTask.NumericRange.createLongRange(Long.MIN_VALUE, (long) 50, true, false); expected.setNumericRange(r); expected.setTermPropertyName("age"); String odataFilter = String.format("%s lt 50", expected.term.propertyName); Query actual = toQuery(odataFilter); assertQueriesEqual(actual, expected); }
public static NumericRange<?> createGreaterThanOrEqualRange(Number min) { if (min instanceof Double) { return createDoubleRange((Double) min, Double.MAX_VALUE, true, true); } return createLongRange((Long) min, Long.MAX_VALUE, true, true); }
@Test public void testSimpleLongEqualQuery() throws Throwable { Query expected = new Query(); // The test $filter is (age eq 50). NumericRange<Long> r = QueryTask.NumericRange.createLongRange((long) 50, (long) 50, true, true); expected.setNumericRange(r); expected.setTermPropertyName("age"); String odataFilter = String.format("%s eq 50", expected.term.propertyName); Query actual = toQuery(odataFilter); assertQueriesEqual(actual, expected); }
public static NumericRange<?> createGreaterThanRange(Number min) { if (min instanceof Double) { return createDoubleRange((Double) min, Double.MAX_VALUE, false, true); } return createLongRange((Long) min, Long.MAX_VALUE, false, true); }
public static NumericRange<?> createLessThanOrEqualRange(Number max) { if (max instanceof Double) { return createDoubleRange(Double.MIN_VALUE, (Double) max, true, true); } return createLongRange(Long.MIN_VALUE, (Long) max, true, true); }