@Override public GroupByQuery withDataSource(DataSource dataSource) { return new GroupByQuery(dataSource, granularity, dimensions, filter, having, aggregations, postAggregations, intervals, limitSpec, context, false); }
@Override public GroupByQuery withContext(QueryContext context) { return new GroupByQuery(getDataSource(), granularity, dimensions, filter, having, aggregations, postAggregations, intervals, limitSpec, context, false); } // CHECKSTYLE:ON
@Override public GroupByQuery withIntervals(Collection<Interval> intervals) { return new GroupByQuery(getDataSource(), granularity, dimensions, filter, having, aggregations, postAggregations, intervals, limitSpec, context, true); }
@Override public GroupByQuery withFilter(Filter filter) { return new GroupByQuery(getDataSource(), granularity, dimensions, filter, having, aggregations, postAggregations, intervals, limitSpec, context, false); }
public GroupByQuery withLimitSpec(LimitSpec limitSpec) { return new GroupByQuery(getDataSource(), granularity, dimensions, filter, having, aggregations, postAggregations, intervals, limitSpec, context, false); }
public GroupByQuery withDimensions(Collection<Dimension> dimensions) { return new GroupByQuery(getDataSource(), granularity, dimensions, filter, having, aggregations, postAggregations, intervals, limitSpec, context, false); }
public GroupByQuery withHaving(Having having) { return new GroupByQuery(getDataSource(), granularity, dimensions, filter, having, aggregations, postAggregations, intervals, limitSpec, context, false); }
@Override public GroupByQuery withGranularity(Granularity granularity) { return new GroupByQuery(getDataSource(), granularity, dimensions, filter, having, aggregations, postAggregations, intervals, limitSpec, context, false); }
@Override public GroupByQuery withAggregations(Collection<Aggregation> aggregations) { return new GroupByQuery(getDataSource(), granularity, dimensions, filter, having, aggregations, postAggregations, intervals, limitSpec, context, false); }
@Override public GroupByQuery withPostAggregations(Collection<PostAggregation> postAggregations) { return new GroupByQuery(getDataSource(), granularity, dimensions, filter, having, aggregations, postAggregations, intervals, limitSpec, context, false); }
public GroupByQuery withOrderBy(LimitSpec limitSpec) { return new GroupByQuery(getDataSource(), granularity, dimensions, filter, having, aggregations, postAggregations, intervals, limitSpec, context, false); }
@Override public void query(Dimension dimension, DataSource dataSource) { SuccessCallback successCallback = buildSuccessCallback(dimension); SqlPhysicalTable sqlTable = (SqlPhysicalTable) dataSource.getPhysicalTable().getSourceTable(); GroupByQuery groupByQuery = new GroupByQuery( dataSource, AllGranularity.INSTANCE, Collections.singletonList(dimension), null, null, Collections.emptyList(), Collections.emptyList(), Collections.singletonList(INTERVAL), new LimitSpec(Utils.asLinkedHashSet(), OptionalInt.of(ROW_LIMIT)) ); sqlBackedClient.executeQuery(groupByQuery, successCallback, failureCallback); }
return new GroupByQuery( dataSource, mergedGranularity,
case TOP_N: TopNQuery topNQuery = (TopNQuery) innerQuery; GroupByQuery transformed = new GroupByQuery( new UnionDataSource(topNQuery.getDataSource().getPhysicalTable()), topNQuery.getGranularity(),