@Override public boolean apply(T input) { return max != null && input.getInterval().overlaps(max.getInterval()); } }
@Override public boolean apply(T input) { return input.getInterval().overlaps(first.getInterval()) || input.getInterval() .overlaps(second.getInterval()); } }
@Override public boolean apply(T input) { return (min != null && input.getInterval().overlaps(min.getInterval())) || (max != null && input.getInterval().overlaps(max.getInterval())); } }
@Override public boolean apply(T input) { return (input.getInterval().overlaps(targetInterval)); } }
@Override public <T extends LogicalSegment> List<T> filterSegments(SegmentMetadataQuery query, List<T> segments) { if (!query.isUsingDefaultInterval()) { return segments; } if (segments.size() <= 1) { return segments; } final T max = segments.get(segments.size() - 1); DateTime targetEnd = max.getInterval().getEnd(); final Interval targetInterval = new Interval(config.getDefaultHistory(), targetEnd); return Lists.newArrayList( Iterables.filter( segments, new Predicate<T>() { @Override public boolean apply(T input) { return (input.getInterval().overlaps(targetInterval)); } } ) ); }
if (query.isDescending()) { while (it.hasNext()) { Interval interval = it.next().getInterval(); Map.Entry<Long, Long> ceiling = granularThresholds.ceilingEntry(granularity.bucketStart(interval.getEnd()).getMillis()); if (ceiling == null || interval.getStartMillis() >= ceiling.getValue()) { Interval interval = it.next().getInterval(); Map.Entry<Long, Long> floor = granularThresholds.floorEntry(granularity.bucketStart(interval.getStart()).getMillis()); if (floor == null || interval.getEndMillis() <= floor.getValue()) {