/** * Restricted copy constructor. * @param beanToCopy the bean to copy from, not null */ private Builder(SwaptionTrade beanToCopy) { this.info = beanToCopy.getInfo(); this.product = beanToCopy.getProduct(); this.premium = beanToCopy.getPremium(); }
/** * Obtains an instance of a Swaption trade with an adjustable payment. * * @param info the trade info * @param product the product * @param premium the premium * @return the trade */ public static SwaptionTrade of(TradeInfo info, Swaption product, AdjustablePayment premium) { return new SwaptionTrade(info, product, premium); }
public void test_of() { SwaptionTrade test = SwaptionTrade.of(TRADE_INFO, SWAPTION, PREMIUM); assertEquals(test.getPremium(), PREMIUM); assertEquals(test.getProduct(), SWAPTION); assertEquals(test.getInfo(), TRADE_INFO); assertEquals(test.withInfo(TRADE_INFO).getInfo(), TRADE_INFO); }
assertEquals(trade.getClass(), SwaptionTrade.class); SwaptionTrade swaptionTrade = (SwaptionTrade) trade; assertEquals(swaptionTrade.getInfo().getTradeDate(), Optional.of(date(1992, 8, 30))); Swaption swaption = swaptionTrade.getProduct();
static SwaptionTrade sut() { return SwaptionTrade.builder() .premium(PREMIUM) .product(SWAPTION) .info(TRADE_INFO) .build(); }
public void test_resolve() { SwaptionTrade test = SwaptionTrade.of(TRADE_INFO, SWAPTION, PREMIUM); assertEquals(test.resolve(REF_DATA).getPremium(), PREMIUM.resolve(REF_DATA)); assertEquals(test.resolve(REF_DATA).getProduct(), SWAPTION.resolve(REF_DATA)); assertEquals(test.resolve(REF_DATA).getInfo(), TRADE_INFO); }
public void test_summarize() { SwaptionTrade trade = sut(); PortfolioItemSummary expected = PortfolioItemSummary.builder() .id(TRADE_INFO.getId().orElse(null)) .portfolioItemType(PortfolioItemType.TRADE) .productType(ProductType.SWAPTION) .currencies(Currency.USD) .description("Long 10Y USD 100mm Rec USD-LIBOR-3M / Pay 1.5% : 14Jun14") .build(); assertEquals(trade.summarize(), expected); }
static SwaptionTrade sut2() { return SwaptionTrade.builder() .premium(AdjustablePayment.of(CurrencyAmount.of(Currency.USD, -3050000d), LocalDate.of(2014, 3, 17))) .product(SwaptionTest.sut2()) .build(); }
@Override protected Object propertyGet(Bean bean, String propertyName, boolean quiet) { switch (propertyName.hashCode()) { case 3237038: // info return ((SwaptionTrade) bean).getInfo(); case -309474065: // product return ((SwaptionTrade) bean).getProduct(); case -318452137: // premium return ((SwaptionTrade) bean).getPremium(); } return super.propertyGet(bean, propertyName, quiet); }
.build(); return SwaptionTrade.builder() .info(tradeInfoBuilder.build()) .product(swaption)
@Override public SwaptionTrade build() { return new SwaptionTrade( info, product, premium); }
public void test_builder() { SwaptionTrade test = sut(); assertEquals(test.getPremium(), PREMIUM); assertEquals(test.getProduct(), SWAPTION); assertEquals(test.getInfo(), TRADE_INFO); }
@Override public SwaptionTrade withInfo(TradeInfo info) { return new SwaptionTrade(info, product, premium); }
/** * Obtains an instance of a Swaption trade with a fixed payment. * * @param info the trade info * @param product the product * @param premium the premium * @return the trade */ public static SwaptionTrade of(TradeInfo info, Swaption product, Payment premium) { return new SwaptionTrade(info, product, AdjustablePayment.of(premium)); }