for (ViewCalculationConfiguration calcConfig : calculationConfigurations) {
UniqueId scenarioId = calcConfig.getScenarioId();
UniqueId scenarioParametersId = calcConfig.getScenarioParametersId();
if (scenarioId != null) {
ScenarioDefinitionFactory scenarioDefinitionFactory = configSource.getConfig(ScenarioDefinitionFactory.class, scenarioId);
Map<String, Object> parameters;
if (scenarioParametersId != null) {
ScenarioParameters scenarioParameters = configSource.getConfig(ScenarioParameters.class, scenarioParametersId);
parameters = scenarioParameters.getParameters();
} else {
parameters = null;
}
ScenarioDefinition scenarioDefinition = scenarioDefinitionFactory.create(parameters);
specificSelectors.put(calcConfig.getName(), new HashMap<>(scenarioDefinition.getDefinitionMap()));
} else {
// Ensure we have an entry for each graph, even if selectors are empty
specificSelectors.put(calcConfig.getName(), ImmutableMap.<DistinctMarketDataSelector, FunctionParameters>of());
}