/** * @param uniqueCharacter A unique character to identify the object. */ public static DataSet createDataSet( char uniqueCharacter ) { DataSet dataSet = createDataSet( uniqueCharacter, null ); dataSet.setPeriodType( new MonthlyPeriodType() ); return dataSet; }
/** * Returns periods for the last 6 months based on the given period types. * * @param periodTypes a set of period type represented as names. * @return a list of periods. */ public List<Period> getLast12Months( Set<String> periodTypes ) { List<Period> periods = new ArrayList<>(); Date date = new Date(); periods.addAll( periodTypes.contains( DailyPeriodType.NAME ) ? new DailyPeriodType().generateRollingPeriods( date ) : NO ); periods.addAll( periodTypes.contains( WeeklyPeriodType.NAME ) ? new WeeklyPeriodType().generateRollingPeriods( date ) : NO ); periods.addAll( periodTypes.contains( BiWeeklyPeriodType.NAME ) ? new BiWeeklyPeriodType().generateRollingPeriods( date ) : NO); periods.addAll( periodTypes.contains( MonthlyPeriodType.NAME ) ? new MonthlyPeriodType().generateRollingPeriods( date ) : NO ); periods.addAll( periodTypes.contains( BiMonthlyPeriodType.NAME ) ? new BiMonthlyPeriodType().generateRollingPeriods( date ) : NO ); periods.addAll( periodTypes.contains( QuarterlyPeriodType.NAME ) ? new QuarterlyPeriodType().generateRollingPeriods( date ) : NO ); periods.addAll( periodTypes.contains( SixMonthlyPeriodType.NAME ) ? new SixMonthlyPeriodType().generateRollingPeriods( date ) : NO ); periods.addAll( periodTypes.contains( YearlyPeriodType.NAME ) ? new YearlyPeriodType().generateRollingPeriods( date ).subList( 4, 5 ) : NO ); periods.addAll( periodTypes.contains( FinancialOctoberPeriodType.NAME ) ? new FinancialOctoberPeriodType().generateRollingPeriods( date ).subList( 4, 5 ) : NO ); return periods; }
/** * @param startDate The start date. * @param endDate The end date. */ public static Period createPeriod( Date startDate, Date endDate ) { Period period = new Period(); period.setAutoFields(); period.setPeriodType( new MonthlyPeriodType() ); period.setStartDate( startDate ); period.setEndDate( endDate ); return period; }
periods.add( getRelativePeriod( new MonthlyPeriodType(), LAST_MONTH, date, dynamicNames, format ) ); periods.add( getRelativePeriod( new MonthlyPeriodType(), LAST_MONTH, new DateTime( date ).minusMonths( 1 ).toDate(), dynamicNames, format ) ); periods.addAll( getRelativePeriodList( new MonthlyPeriodType(), MONTHS_THIS_YEAR, date, dynamicNames, format ) ); periods.addAll( getRollingRelativePeriodList( new MonthlyPeriodType(), MONTHS_LAST_12, new DateTime( date ).minusMonths( 1 ).toDate(), dynamicNames, format ).subList( 9, 12 ) ); periods.addAll( getRollingRelativePeriodList( new MonthlyPeriodType(), MONTHS_LAST_12, new DateTime( date ).minusMonths( 1 ).toDate(), dynamicNames, format ).subList( 6, 12 ) ); periods.addAll( getRollingRelativePeriodList( new MonthlyPeriodType(), MONTHS_LAST_12, new DateTime( date ).minusMonths( 1 ).toDate(), dynamicNames, format ) ); periods.addAll( getRelativePeriodList( new MonthlyPeriodType(), MONTHS_LAST_YEAR, date, dynamicNames, format ) );
break; case P1M: periodType = new MonthlyPeriodType(); break; case P2M:
add( new WeeklySundayPeriodType() ); add( new BiWeeklyPeriodType() ); add( new MonthlyPeriodType() ); add( new BiMonthlyPeriodType() ); add( new QuarterlyPeriodType() );