/** * Obtains an instance used to obtain a curve by name. * * @param groupName the curve group name * @param curveName the curve name * @return the identifier */ public static CurveId of(CurveGroupName groupName, CurveName curveName) { return new CurveId(groupName, curveName, ObservableSource.NONE); }
public void test_of_String() { CurveId test = CurveId.of("Group", "Name"); assertEquals(test.getCurveGroupName(), CurveGroupName.of("Group")); assertEquals(test.getCurveName(), CurveName.of("Name")); assertEquals(test.getObservableSource(), ObservableSource.NONE); assertEquals(test.getMarketDataType(), Curve.class); assertEquals(test.getMarketDataName(), CurveName.of("Name")); assertEquals(test.toString(), "CurveId:Group/Name"); }
/** * Returns a map containing all the curves, keyed by curve identifier. * <p> * No checks are performed to see if one curve name is mapped to two different curves. * <p> * This method is useful when transforming a rates provider to {@link MarketData}. * * @param groupName the curve group name * @return the map of curves, keyed by {@code CurveId}. */ public Map<CurveId, Curve> getCurves(CurveGroupName groupName) { // use a HashMap to avoid errors due to duplicates Map<CurveId, Curve> curves = new HashMap<>(); discountCurves.values().forEach(curve -> curves.put(CurveId.of(groupName, curve.getName()), curve)); indexCurves.values().forEach(curve -> curves.put(CurveId.of(groupName, curve.getName()), curve)); return curves; }
public void test_of_TypesSource() { CurveId test = CurveId.of(CurveGroupName.of("Group"), CurveName.of("Name"), OBS_SOURCE); assertEquals(test.getCurveGroupName(), CurveGroupName.of("Group")); assertEquals(test.getCurveName(), CurveName.of("Name")); assertEquals(test.getObservableSource(), OBS_SOURCE); assertEquals(test.getMarketDataType(), Curve.class); assertEquals(test.getMarketDataName(), CurveName.of("Name")); assertEquals(test.toString(), "CurveId:Group/Name/Vendor"); }
public void test_of_Types() { CurveId test = CurveId.of(CurveGroupName.of("Group"), CurveName.of("Name")); assertEquals(test.getCurveGroupName(), CurveGroupName.of("Group")); assertEquals(test.getCurveName(), CurveName.of("Name")); assertEquals(test.getObservableSource(), ObservableSource.NONE); assertEquals(test.getMarketDataType(), Curve.class); assertEquals(test.getMarketDataName(), CurveName.of("Name")); assertEquals(test.toString(), "CurveId:Group/Name"); }
public void test_serialization() { CurveId test = CurveId.of("Group", "Name"); assertSerialization(test); }
/** * Obtains an instance used to obtain a curve by name, specifying the source of observable market data. * * @param groupName the curve group name * @param curveName the curve name * @param obsSource the source of observable market data * @return the identifier */ public static CurveId of(CurveGroupName groupName, CurveName curveName, ObservableSource obsSource) { return new CurveId(groupName, curveName, obsSource); }
public void test_getCurves_withGroup() { ImmutableRatesProvider test = ImmutableRatesProvider.builder(VAL_DATE) .discountCurve(GBP, DISCOUNT_CURVE_GBP) .discountCurve(USD, DISCOUNT_CURVE_USD) .build(); CurveGroupName group = CurveGroupName.of("GRP"); assertEquals(test.getCurves(group).size(), 2); assertEquals(test.getCurves(group).get(CurveId.of(group, DISCOUNT_CURVE_GBP.getName())), DISCOUNT_CURVE_GBP); assertEquals(test.getCurves(group).get(CurveId.of(group, DISCOUNT_CURVE_USD.getName())), DISCOUNT_CURVE_USD); }
/** * Obtains an instance used to obtain a curve by name. * * @param groupName the curve group name * @param curveName the curve name * @return the identifier */ public static CurveId of(String groupName, String curveName) { return new CurveId(CurveGroupName.of(groupName), CurveName.of(curveName), ObservableSource.NONE); }