SmileDeltaTermStructureVannaVolgaDataBundle extends ForexOptionDataBundle<SmileDeltaTermStructureParameters> { @Override public SmileDeltaTermStructureVannaVolgaDataBundle copy() { final YieldCurveBundle curves = getCurvesCopy(); final SmileDeltaTermStructureParameters smile = getVolatilityModel().copy(); final Pair<Currency, Currency> currencyPair = Pairs.of(getCurrencyPair().getFirst(), getCurrencyPair().getSecond()); return new SmileDeltaTermStructureVannaVolgaDataBundle(curves, smile, currencyPair); } SmileDeltaTermStructureVannaVolgaDataBundle(final YieldCurveBundle ycBundle, final SmileDeltaTermStructureParameters smile, final Pair<Currency, Currency> currencyPair); static SmileDeltaTermStructureVannaVolgaDataBundle from(final YieldCurveBundle ycBundle, final SmileDeltaTermStructureParameters smile, final Pair<Currency, Currency> currencyPair); @Override /** * Create a copy of the bundle. * @return The bundle. */ SmileDeltaTermStructureVannaVolgaDataBundle copy(); SmileDeltaParameters getSmile(final Currency ccy1, final Currency ccy2, final double time); @Override SmileDeltaTermStructureVannaVolgaDataBundle with(final YieldCurveBundle ycBundle); @Override SmileDeltaTermStructureVannaVolgaDataBundle with(final SmileDeltaTermStructureParameters volatilityModel);  }
@Test public void testCopy() { assertFalse(FX_DATA == FX_DATA.copy()); assertEquals(FX_DATA, FX_DATA.copy()); }