private static Optional<DaysAdjustment> parseDaysAdjustment( CsvRow row, String leg, String daysField, String daysCalField, String cnvField, String calField) { Optional<Integer> daysOpt = findValue(row, leg, daysField) .map(s -> Integer.valueOf(s)); HolidayCalendarId cal = findValue(row, leg, daysCalField) .map(s -> HolidayCalendarId.of(s)) .orElse(HolidayCalendarIds.NO_HOLIDAYS); BusinessDayAdjustment bda = parseBusinessDayAdjustment(row, leg, cnvField, calField) .orElse(BusinessDayAdjustment.NONE); if (!daysOpt.isPresent()) { return Optional.empty(); } return Optional.of(DaysAdjustment.builder() .days(daysOpt.get()) .calendar(cal) .adjustment(bda) .build()); }
public void coverage_builder() { DaysAdjustment test = DaysAdjustment.builder() .days(1) .calendar(SAT_SUN) .adjustment(BDA_FOLLOW_WED_THU) .build(); assertEquals(test.getDays(), 1); assertEquals(test.getCalendar(), SAT_SUN); assertEquals(test.getAdjustment(), BDA_FOLLOW_WED_THU); }
private static IborIndex lockIndexCalendar(IborIndex index) { return ((ImmutableIborIndex) index).toBuilder() .fixingCalendar(CalendarUSD.NYC) .effectiveDateOffset(index.getEffectiveDateOffset().toBuilder() .calendar(CalendarUSD.NYC) .adjustment(index.getEffectiveDateOffset().getAdjustment().toBuilder() .calendar(CalendarUSD.NYC) .build()) .build()) .maturityDateOffset(index.getMaturityDateOffset().toBuilder() .adjustment(index.getMaturityDateOffset().getAdjustment().toBuilder() .calendar(CalendarUSD.NYC) .build()) .build()) .build(); }