/** * @param isoPeriod the ISO period string. */ public static Period createPeriod( String isoPeriod ) { return PeriodType.getPeriodFromIsoString( isoPeriod ); }
/** * Returns a list of periods based on the given date string in ISO format. * * @param isoPeriods the date strings in ISO format. * @return a period. */ public static List<Period> getPeriodsFromIsoStrings( List<String> isoPeriods ) { List<Period> periods = new ArrayList<>(); for ( String isoPeriod : isoPeriods ) { Period period = getPeriodFromIsoString( isoPeriod ); if ( period != null ) { periods.add( period ); } } return periods; }
@Override public Period reloadIsoPeriod( String isoPeriod ) { Period period = PeriodType.getPeriodFromIsoString( isoPeriod ); return period != null ? reloadPeriod( period ) : null; }
@Override public Period deserialize( JsonParser jp, DeserializationContext ctxt ) throws IOException { LocalPeriod period = jp.readValueAs( LocalPeriod.class ); return period.getId() == null ? null : PeriodType.getPeriodFromIsoString( period.getId() ); } }
@Override public void replaceDataPeriodsWithAggregationPeriods( Map<String, Object> dataValueMap, DataQueryParams params, ListMap<DimensionalItemObject, DimensionalItemObject> dataPeriodAggregationPeriodMap ) { if ( params.isDisaggregation() ) { int periodIndex = params.getPeriodDimensionIndex(); if ( periodIndex == -1 ) { return; // Period is filter, nothing to replace } Set<String> keys = new HashSet<>( dataValueMap.keySet() ); for ( String key : keys ) { String[] keyArray = key.split( DIMENSION_SEP ); String periodKey = keyArray[periodIndex]; Assert.notNull( periodKey, String.format( "Period key cannot be null, key: '%s'", key ) ); List<DimensionalItemObject> periods = dataPeriodAggregationPeriodMap.get( PeriodType.getPeriodFromIsoString( periodKey ) ); Assert.notNull( periods, String.format( "Period list cannot be null, key: '%s', map: '%s'", key, dataPeriodAggregationPeriodMap.toString() ) ); Object value = dataValueMap.get( key ); for ( DimensionalItemObject period : periods ) { String[] keyCopy = keyArray.clone(); keyCopy[periodIndex] = ((Period) period).getIsoDate(); dataValueMap.put( TextUtils.toString( keyCopy, DIMENSION_SEP ), value ); } dataValueMap.remove( key ); } } }
@Override public Period getPeriod( String isoPeriod ) { Period period = PeriodType.getPeriodFromIsoString( isoPeriod ); if ( period != null ) { period = periodStore.getPeriod( period.getStartDate(), period.getEndDate(), period.getPeriodType() ); } return period; }
Period period = PeriodType.getPeriodFromIsoString( isoPeriod );
Period period = PeriodType.getPeriodFromIsoString( periodId );
Period period = PeriodType.getPeriodFromIsoString( isoPeriod );