private static TermDepositTrade adjustTrade( TermDepositTrade trade, BusinessDayConvention dateCnv, Optional<HolidayCalendarId> dateCalOpt) { if (!dateCalOpt.isPresent()) { return trade; } TermDeposit.Builder builder = trade.getProduct().toBuilder(); dateCalOpt.ifPresent(cal -> builder.businessDayAdjustment(BusinessDayAdjustment.of(dateCnv, cal))); return trade.toBuilder() .product(builder.build()) .build(); }
TermDepositTrade trade = convention.createTrade( tradeDate, periodToStart, buySell, notional, fixedRate, resolver.getReferenceData()); trade = trade.toBuilder().info(info).build(); return adjustTrade(trade, dateCnv, dateCalOpt);