/** * Copyright (C) 2013 - present by OpenGamma Inc. and the OpenGamma group of companies * * Please see distribution for license. */ package com.opengamma.engine.marketdata.manipulator; import org.fudgemsg.FudgeMsg; import org.fudgemsg.MutableFudgeMsg; import org.fudgemsg.mapping.FudgeDeserializer; import org.fudgemsg.mapping.FudgeSerializer; import com.opengamma.engine.value.ValueSpecification; /** * A market data selector which never performs an extraction operation. */ public final class NoOpMarketDataSelector implements MarketDataSelector { private static final NoOpMarketDataSelector INSTANCE = new NoOpMarketDataSelector(); private NoOpMarketDataSelector() { } /** * Return the singleton instance. * * @return the singleton instance */ public static NoOpMarketDataSelector getInstance() { return INSTANCE; } @Override public DistinctMarketDataSelector findMatchingSelector(ValueSpecification valueSpecification, String calculationConfigurationName, SelectorResolver resolver) { return null; } @Override public boolean hasSelectionsDefined() { return false; } public MutableFudgeMsg toFudgeMsg(final FudgeSerializer serializer) { return serializer.newMessage(); } public static NoOpMarketDataSelector fromFudgeMsg(final FudgeDeserializer deserializer, final FudgeMsg msg) { return INSTANCE; } @Override public String toString() { return "No-op"; } }