public List<Period> reloadPeriods(List<Period> periods) {
    List<Period> reloaded = new ArrayList<Period>();

    for (Period period : periods) {
      reloaded.add(periodStore.reloadForceAddPeriod(period));
    }

    return reloaded;
  }
  public List<Period> getPeriods(Period lastPeriod, int historyLength) {
    List<Period> periods = new ArrayList<Period>(historyLength);

    lastPeriod = periodStore.reloadForceAddPeriod(lastPeriod);

    CalendarPeriodType periodType = (CalendarPeriodType) lastPeriod.getPeriodType();

    Period p = new Period();

    for (int i = 0; i < historyLength; ++i) {
      p = getPeriodFromDates(lastPeriod.getStartDate(), lastPeriod.getEndDate(), periodType);

      periods.add(p != null ? p : lastPeriod);

      lastPeriod = periodType.getPreviousPeriod(lastPeriod);
    }

    Collections.reverse(periods);

    return periods;
  }
 public Period reloadPeriod(Period period) {
   return periodStore.reloadForceAddPeriod(period);
 }
 public Period getPeriodByExternalId(String externalId) {
   return periodStore.reloadForceAddPeriod(new Period(externalId));
 }