@Override public DateTime getTimestamp() { return delegate.getTimestamp(); }
@Override public DateTime getTimestamp() { return row.getTimestamp(); }
@Override public DateTime getTimestamp() { return row.getTimestamp(); }
@Override public int compareTo(Row o) { return timestamp.compareTo(o.getTimestamp()); }
@Override public int compareTo(Row o) { return timestamp.compareTo(o.getTimestamp()); } }
private DateTime adjustTimestamp(final Row row) { if (query.getGranularity() instanceof AllGranularity) { return row.getTimestamp(); } else { return query.getGranularity().bucketStart(row.getTimestamp()); } } }
@Override public long apply(Row row) { return query.getGranularity().bucketStart(row.getTimestamp()).getMillis(); } };
@Override public int compareTo(Row o) { return getTimestamp().compareTo(o.getTimestamp()); } };
@Nullable private Comparator<Row> getTimeComparator(boolean granular) { if (Granularities.ALL.equals(getGranularity())) { return null; } else if (granular) { return (lhs, rhs) -> Longs.compare( getGranularity().bucketStart(lhs.getTimestamp()).getMillis(), getGranularity().bucketStart(rhs.getTimestamp()).getMillis() ); } else { return NON_GRANULAR_TIME_COMP; } }
@Override @SuppressWarnings("unchecked") public Result apply(final SegmentId segmentId, final Interval interval, final Iterable<Row> results) { return new Result( results.iterator().next().getTimestamp(), new BySegmentResultValueClass( Lists.newArrayList(results), segmentId.toString(), interval ) ); } }
private static void assertResult(List<Row> rows) { Assert.assertEquals(10000, rows.size()); rows.sort((r1, r2) -> { int c = r1.getTimestamp().compareTo(r2.getTimestamp()); if (c != 0) { return c; } c = Integer.valueOf(r1.getDimension("a").get(0)).compareTo(Integer.valueOf(r2.getDimension("a").get(0))); if (c != 0) { return c; } return Integer.valueOf(r1.getDimension("b").get(0)).compareTo(Integer.valueOf(r2.getDimension("b").get(0))); }); for (int i = 0; i < 100; i++) { for (int j = 0; j < 100; j++) { final Row row = rows.get(i * 100 + j); Assert.assertEquals(DateTimes.utc(20171220 + i), row.getTimestamp()); Assert.assertEquals(i, Integer.valueOf(row.getDimension("a").get(0)).intValue()); Assert.assertEquals(j, Integer.valueOf(row.getDimension("b").get(0)).intValue()); } } }
private void assertResult(List<Row> rows, List<String> sqls) { Assert.assertEquals(10 * sqls.size(), rows.size()); rows.sort((r1, r2) -> { int c = r1.getTimestamp().compareTo(r2.getTimestamp()); if (c != 0) { return c; } c = Integer.valueOf(r1.getDimension("a").get(0)).compareTo(Integer.valueOf(r2.getDimension("a").get(0))); if (c != 0) { return c; } return Integer.valueOf(r1.getDimension("b").get(0)).compareTo(Integer.valueOf(r2.getDimension("b").get(0))); }); int rowCount = 0; for (int i = 0; i < 10; i++) { for (int j = 0; j < sqls.size(); j++) { final Row row = rows.get(rowCount); String timestampSt = StringUtils.format("2011-01-12T00:0%s:00.000Z", i); Assert.assertEquals(timestampSt, row.getTimestamp().toString()); Assert.assertEquals(i, Integer.valueOf(row.getDimension("a").get(0)).intValue()); Assert.assertEquals(i, Integer.valueOf(row.getDimension("b").get(0)).intValue()); rowCount++; } } }
expected.getTimestamp(), actual.getTimestamp() );
input -> { boolean inInterval = false; DateTime rowTime = input.getTimestamp(); for (Interval queryInterval : queryIntervals) { if (queryInterval.contains(rowTime)) {
@Override public DateTime getTimestamp() { return delegate.getTimestamp(); }
@Override public DateTime getTimestamp() { return row.getTimestamp(); }
@Override public int compareTo(Row o) { return timestamp.compareTo(o.getTimestamp()); } }
private DateTime adjustTimestamp(final Row row) { if (query.getGranularity() instanceof AllGranularity) { return row.getTimestamp(); } else { return query.getGranularity().bucketStart(row.getTimestamp()); } } }
@Override public long apply(Row row) { return query.getGranularity().bucketStart(row.getTimestamp()).getMillis(); } };
@Override public int compareTo(Row o) { return getTimestamp().compareTo(o.getTimestamp()); } };