public DateTimeUnit adjustToStartOfWeek( DateTimeUnit dateTimeUnit, Calendar calendar ) { int weekday = calendar.weekday( dateTimeUnit ); if ( weekday > startOfWeek ) { dateTimeUnit = calendar.minusDays( dateTimeUnit, weekday - startOfWeek ); } else if ( weekday < startOfWeek ) { dateTimeUnit = calendar.minusDays( dateTimeUnit, weekday + (frequencyOrder - startOfWeek) ); } return dateTimeUnit; } }
public DateTimeUnit adjustToStartOfBiWeek( DateTimeUnit dateTimeUnit, Calendar calendar ) { int biWeekday = calendar.weekday( dateTimeUnit ) + ( 1 - ( calendar.week( dateTimeUnit ) % 2 ) ) * 7; if ( biWeekday > startOfWeek ) { dateTimeUnit = calendar.minusDays( dateTimeUnit, biWeekday - startOfWeek ); } else if ( biWeekday < startOfWeek ) { dateTimeUnit = calendar.minusDays( dateTimeUnit, biWeekday + (frequencyOrder - startOfWeek) ); } return dateTimeUnit; } }
dateTimeUnit.setDayOfWeek( calendar.weekday( dateTimeUnit ) ); start.setDayOfWeek( calendar.weekday( start ) ); end.setDayOfWeek( calendar.weekday( end ) ); start.setDayOfWeek( calendar.weekday( start ) ); end.setDayOfWeek( calendar.weekday( end ) ); start.setDayOfWeek( calendar.weekday( start ) ); end.setDayOfWeek( calendar.weekday( end ) ); start.setDayOfWeek( calendar.weekday( start ) ); end.setDayOfWeek( calendar.weekday( end ) ); start.setDayOfWeek( calendar.weekday( start ) ); end.setDayOfWeek( calendar.weekday( end ) ); start.setDayOfWeek( calendar.weekday( start ) ); end.setDayOfWeek( calendar.weekday( end ) ); start.setDayOfWeek( calendar.weekday( start ) ); end.setDayOfWeek( calendar.weekday( end ) ); start.setDayOfWeek( calendar.weekday( start ) ); end.setDayOfWeek( calendar.weekday( end ) ); start.setDayOfWeek( calendar.weekday( start ) ); end.setDayOfWeek( calendar.weekday( end ) );