/** * Returns an immutable set of all dimensions contained in a request. * <p> * All dimensions consist of * <ul> * <li>{@link #requestDimensions}</li> * <li>{@link #filterDimensions}</li> * <li>{@link #metricDimensions}</li> * </ul> * * @return an immutable set of all dimensions contained in a request */ private Set<Dimension> generateAllDimensions() { return Collections.unmodifiableSet( Stream.of( getRequestDimensions().stream(), getFilterDimensions().stream(), getMetricDimensions().stream() ).flatMap(Function.identity()).collect(Collectors.toSet()) ); }
/** * Copy Constructor. * * @param dataSourceConstraint The data source constraint to copy from */ protected DataSourceConstraint(DataSourceConstraint dataSourceConstraint) { this.requestDimensions = dataSourceConstraint.getRequestDimensions(); this.filterDimensions = dataSourceConstraint.getFilterDimensions(); this.metricDimensions = dataSourceConstraint.getMetricDimensions(); this.metricNames = dataSourceConstraint.getMetricNames(); this.apiFilters = dataSourceConstraint.getApiFilters(); this.allDimensions = dataSourceConstraint.getAllDimensions(); this.allDimensionNames = dataSourceConstraint.getAllDimensionNames(); this.allColumnNames = dataSourceConstraint.getAllColumnNames(); }