/** * Copyright (C) 2012 - present by OpenGamma Inc. and the OpenGamma group of companies * * Please see distribution for license. */ package com.opengamma.master.historicaltimeseries.impl; import java.util.HashMap; import java.util.Map; import com.opengamma.core.historicaltimeseries.HistoricalTimeSeriesAdjuster; import com.opengamma.util.ArgumentChecker; /** * Contains field adjustments for a data source. */ public class HistoricalTimeSeriesFieldAdjustmentMap { private final String _dataSource; private final Map<String, HistoricalTimeSeriesFieldAdjustment> _fieldAdjustments = new HashMap<String, HistoricalTimeSeriesFieldAdjustment>(); public HistoricalTimeSeriesFieldAdjustmentMap(String dataSource) { ArgumentChecker.notNull(dataSource, "dataSource"); _dataSource = dataSource; } /** * Gets the data source name. * * @return the data source name, not null */ public String getDataSource() { return _dataSource; } /** * Gets any field adjustment for a given requested field. * * @param requestedField the requested field, not null * @return the field adjustment, or null if no adjustment applies */ public HistoricalTimeSeriesFieldAdjustment getFieldAdjustment(String requestedField) { return _fieldAdjustments.get(requestedField); } /** * Adds a field adjustment to the map. * * @param requestedField the requested field, not null * @param underlyingProvider the underlying provider, null for any * @param underlyingField the underlying field, not null * @param adjuster the adjuster, null for none */ public void addFieldAdjustment(String requestedField, String underlyingProvider, String underlyingField, HistoricalTimeSeriesAdjuster adjuster) { _fieldAdjustments.put(requestedField, new HistoricalTimeSeriesFieldAdjustment(underlyingProvider, underlyingField, adjuster)); } }