class PeriodOffsetUtils {

    public static Period shiftPeriod( Period period, int periodOffset )
    {
        if ( periodOffset == 0 )
        {
            return period;
        }

        PeriodType periodType = period.getPeriodType();
        Period p;

        if ( periodOffset > 0 )
        {
            p = periodType.getNextPeriod( period, periodOffset );
        }
        else
        {
            p = periodType.getPreviousPeriod( period, periodOffset );
        }

        p.setShifted( true );
        return p;
    }

}