(
Weekday firstDayOfWeek,
int minimalDaysInFirstWeek,
final Weekday startOfWeekend,
final Weekday endOfWeekend
)
| 173 | //~ Konstruktoren ----------------------------------------------------- |
| 174 | |
| 175 | private Weekmodel( |
| 176 | Weekday firstDayOfWeek, |
| 177 | int minimalDaysInFirstWeek, |
| 178 | final Weekday startOfWeekend, |
| 179 | final Weekday endOfWeekend |
| 180 | ) { |
| 181 | super(); |
| 182 | |
| 183 | if (firstDayOfWeek == null) { |
| 184 | throw new NullPointerException("Missing first day of week."); |
| 185 | } else if ( |
| 186 | (minimalDaysInFirstWeek < 1) |
| 187 | || (minimalDaysInFirstWeek > 7) |
| 188 | ) { |
| 189 | throw new IllegalArgumentException( |
| 190 | "Minimal days in first week out of range: " |
| 191 | + minimalDaysInFirstWeek); |
| 192 | } else if (startOfWeekend == null) { |
| 193 | throw new NullPointerException("Missing start of weekend."); |
| 194 | } else if (endOfWeekend == null) { |
| 195 | throw new NullPointerException("Missing end of weekend."); |
| 196 | } |
| 197 | |
| 198 | this.firstDayOfWeek = firstDayOfWeek; |
| 199 | this.minimalDaysInFirstWeek = minimalDaysInFirstWeek; |
| 200 | this.startOfWeekend = startOfWeekend; |
| 201 | this.endOfWeekend = endOfWeekend; |
| 202 | |
| 203 | this.woyElement = |
| 204 | new CalendarWeekElement( |
| 205 | "WEEK_OF_YEAR", CALENDAR_WEEK_OF_YEAR); |
| 206 | this.womElement = |
| 207 | new CalendarWeekElement( |
| 208 | "WEEK_OF_MONTH", CALENDAR_WEEK_OF_MONTH); |
| 209 | this.boundWoyElement = |
| 210 | new CalendarWeekElement( |
| 211 | "BOUNDED_WEEK_OF_YEAR", BOUNDED_WEEK_OF_YEAR); |
| 212 | this.boundWomElement = |
| 213 | new CalendarWeekElement( |
| 214 | "BOUNDED_WEEK_OF_MONTH", BOUNDED_WEEK_OF_MONTH); |
| 215 | this.dayOfWeekElement = new DayOfWeekElement(); |
| 216 | |
| 217 | this.weekendCondition = |
| 218 | context -> { |
| 219 | int y = context.getYear(); |
| 220 | int m = context.getMonth(); |
| 221 | int dom = context.getDayOfMonth(); |
| 222 | Weekday wd = |
| 223 | Weekday.valueOf(GregorianMath.getDayOfWeek(y, m, dom)); |
| 224 | return ((wd == startOfWeekend) || (wd == endOfWeekend)); |
| 225 | }; |
| 226 | |
| 227 | Set<ChronoElement<?>> set = new HashSet<>(); |
| 228 | set.add(this.woyElement); |
| 229 | set.add(this.womElement); |
| 230 | set.add(this.dayOfWeekElement); |
| 231 | set.add(this.boundWoyElement); |
| 232 | set.add(this.boundWomElement); |
nothing calls this directly
no test coverage detected