/** * Restricted copy constructor. * @param beanToCopy the bean to copy from, not null */ private Builder(GenericSecurityTrade beanToCopy) { this.info = beanToCopy.getInfo(); this.security = beanToCopy.getSecurity(); this.quantity = beanToCopy.getQuantity(); this.price = beanToCopy.getPrice(); }
public void test_builder() { GenericSecurityTrade test = sut(); assertEquals(test.getInfo(), TRADE_INFO); assertEquals(test.getSecurity(), SECURITY); assertEquals(test.getQuantity(), QUANTITY); assertEquals(test.getPrice(), PRICE); assertEquals(test.getCurrency(), SECURITY.getCurrency()); assertEquals(test.getSecurityId(), SECURITY.getSecurityId()); }
public void test_of() { GenericSecurityTrade test = GenericSecurityTrade.of(TRADE_INFO, SECURITY, QUANTITY, PRICE); assertEquals(test.getInfo(), TRADE_INFO); assertEquals(test.getSecurity(), SECURITY); assertEquals(test.getQuantity(), QUANTITY); assertEquals(test.getPrice(), PRICE); assertEquals(test.getProduct(), SECURITY); assertEquals(test.getCurrency(), SECURITY.getCurrency()); assertEquals(test.getSecurityId(), SECURITY.getSecurityId()); assertEquals(test.withInfo(TRADE_INFO).getInfo(), TRADE_INFO); assertEquals(test.withQuantity(129).getQuantity(), 129d, 0d); assertEquals(test.withPrice(129).getPrice(), 129d, 0d); }
@Override protected Object propertyGet(Bean bean, String propertyName, boolean quiet) { switch (propertyName.hashCode()) { case 3237038: // info return ((GenericSecurityTrade) bean).getInfo(); case 949122880: // security return ((GenericSecurityTrade) bean).getSecurity(); case -1285004149: // quantity return ((GenericSecurityTrade) bean).getQuantity(); case 106934601: // price return ((GenericSecurityTrade) bean).getPrice(); } return super.propertyGet(bean, propertyName, quiet); }
/** * Returns the security from the row. * <p> * This returns a successful result where the trade associated with the row * implements {@link GenericSecurityTrade}. * * @return the security from the row */ Result<Security> getSecurity() { CalculationTarget target = getTarget(); if (target instanceof SecurityTrade) { SecurityTrade secTrade = (SecurityTrade) target; Security security = results.getReferenceData().getValue(secTrade.getSecurityId()); return Result.success(security); } if (target instanceof GenericSecurityTrade) { GenericSecurityTrade secTrade = (GenericSecurityTrade) target; return Result.success(secTrade.getSecurity()); } if (target instanceof Trade) { return Result.failure(FailureReason.INVALID, "Trade does not contain a security"); } return Result.failure(FailureReason.INVALID, "Calculaton target is not a trade"); }