public CreditRatesMarketData scenario(int scenarioIndex)
        {
            CreditRatesMarketData current = cache.get(scenarioIndex);

            if (current != null)
            {
                return(current);
            }
            return(cache.updateAndGet(scenarioIndex, v => v != null ? v : lookup.marketDataView(marketData.scenario(scenarioIndex))));
        }
Ejemplo n.º 2
0
        //-------------------------------------------------------------------------
        public virtual void test_marketDataView()
        {
            LocalDate                     valDate       = LocalDate.of(2015, 6, 30);
            ScenarioMarketData            md            = new TestMarketDataMap(valDate, ImmutableMap.of(), ImmutableMap.of());
            CreditRatesScenarioMarketData multiScenario = LOOKUP_WITH_SOURCE.marketDataView(md);

            assertEquals(multiScenario.Lookup, LOOKUP_WITH_SOURCE);
            assertEquals(multiScenario.MarketData, md);
            assertEquals(multiScenario.ScenarioCount, 1);
            CreditRatesMarketData scenario = multiScenario.scenario(0);

            assertEquals(scenario.Lookup, LOOKUP_WITH_SOURCE);
            assertEquals(scenario.MarketData, md.scenario(0));
            assertEquals(scenario.ValuationDate, valDate);
        }