public Builder addOrSetDimensionOptions( String dimension, DimensionType type, String dimensionName, List<DimensionalItemObject> options ) { this.params.setDimensionOptions( dimension, type, dimensionName, options ); return this; }
public Builder withOrganisationUnits( List<? extends DimensionalItemObject> organisationUnits ) { this.params.setDimensionOptions( ORGUNIT_DIM_ID, DimensionType.ORGANISATION_UNIT, null, asList( organisationUnits ) ); return this; }
/** * Adds a period dimension or updates an existing one with no period items. Removes * period filter if present. */ private void setPeriodDimensionWithoutOptions() { removeDimension( PERIOD_DIM_ID ); setDimensionOptions( PERIOD_DIM_ID, DimensionType.PERIOD, PERIOD_DIM_ID, Lists.newArrayList() ); }
public Builder withCategoryOptionCombos( List<? extends DimensionalItemObject> categoryOptionCombos ) { this.params.setDimensionOptions( CATEGORYOPTIONCOMBO_DIM_ID, DimensionType.CATEGORY_OPTION_COMBO, null, asList( categoryOptionCombos ) ); return this; }
public Builder withAttributeOptionCombos( List<? extends DimensionalItemObject> attributeOptionCombos ) { this.params.setDimensionOptions( ATTRIBUTEOPTIONCOMBO_DIM_ID, DimensionType.ATTRIBUTE_OPTION_COMBO, null, asList( attributeOptionCombos ) ); return this; }
public Builder withPeriods( List<? extends DimensionalItemObject> periods ) { this.params.setDimensionOptions( PERIOD_DIM_ID, DimensionType.PERIOD, null, asList( periods ) ); return this; }
public Builder withPeriods( List<? extends DimensionalItemObject> periods, String periodType ) { this.params.setDimensionOptions( PERIOD_DIM_ID, DimensionType.PERIOD, periodType.toLowerCase(), asList( periods ) ); this.params.periodType = periodType; return this; }
public Builder withCategory( Category category ) { this.params.setDimensionOptions( category.getUid(), DimensionType.CATEGORY, null, new ArrayList<>( category.getItems() ) ); return this; }
public Builder withDataElementGroupSet( DataElementGroupSet groupSet ) { this.params.setDimensionOptions( groupSet.getUid(), DimensionType.DATA_ELEMENT_GROUP_SET, null, new ArrayList<>( groupSet.getItems() ) ); return this; }
/** * Replaces the periods of this query with the corresponding data periods. * Sets the period type to the data period type. This method is relevant only * when then the data period type has lower frequency than the aggregation * period type. This is valid because disaggregation is allowed for data * with average aggregation operator. */ private void replaceAggregationPeriodsWithDataPeriods( ListMap<DimensionalItemObject, DimensionalItemObject> dataPeriodAggregationPeriodMap ) { this.periodType = this.dataPeriodType.getName(); if ( !getPeriods().isEmpty() ) // Period is dimension { setDimensionOptions( PERIOD_DIM_ID, DimensionType.PERIOD, dataPeriodType.getName().toLowerCase(), new ArrayList<>( dataPeriodAggregationPeriodMap.keySet() ) ); } else // Period is filter { setFilterOptions( PERIOD_DIM_ID, DimensionType.PERIOD, dataPeriodType.getName().toLowerCase(), new ArrayList<>( dataPeriodAggregationPeriodMap.keySet() ) ); } }