SmileDeltaTermStructureDataBundle extends ForexOptionDataBundle<SmileDeltaTermStructureParametersStrikeInterpolation> { @Override public SmileDeltaTermStructureDataBundle copy() { final YieldCurveBundle curves = getCurvesCopy(); final SmileDeltaTermStructureParametersStrikeInterpolation smile = getVolatilityModel().copy(); final Pair<Currency, Currency> currencyPair = Pairs.of(getCurrencyPair().getFirst(), getCurrencyPair().getSecond()); return new SmileDeltaTermStructureDataBundle(curves, smile, currencyPair); } SmileDeltaTermStructureDataBundle(final YieldCurveBundle ycBundle, final SmileDeltaTermStructureParametersStrikeInterpolation smile, final Pair<Currency, Currency> currencyPair); static SmileDeltaTermStructureDataBundle from(final YieldCurveBundle ycBundle, final SmileDeltaTermStructureParametersStrikeInterpolation smile, final Pair<Currency, Currency> currencyPair); @Override SmileDeltaTermStructureDataBundle copy(); @Override SmileDeltaTermStructureDataBundle with(final YieldCurveBundle ycBundle); @Override SmileDeltaTermStructureDataBundle with(final SmileDeltaTermStructureParametersStrikeInterpolation volatilityModel);  }
@Test public void testCopy() { assertFalse(FX_DATA == FX_DATA.copy()); assertEquals(FX_DATA, FX_DATA.copy()); }