package org.marketcetera.marketdata.bogus; import static org.marketcetera.marketdata.Content.*; import static org.marketcetera.marketdata.Messages.UNSUPPORTED_REQUEST; import org.marketcetera.core.CoreException; import org.marketcetera.marketdata.DataRequestTranslator; import org.marketcetera.marketdata.MarketDataRequest; import org.marketcetera.util.log.I18NBoundMessage1P; import org.marketcetera.util.misc.ClassVersion; /* $License$ */ /** * Bogus feed implementation of {@link DataRequestTranslator}. * * @author <a href="mailto:colin@marketcetera.com">Colin DuPlantis</a> * @version $Id: BogusFeedMessageTranslator.java 16154 2012-07-14 16:34:05Z colin $ * @since 0.5.0 */ @ClassVersion("$Id: BogusFeedMessageTranslator.java 16154 2012-07-14 16:34:05Z colin $") public class BogusFeedMessageTranslator implements DataRequestTranslator<MarketDataRequest> { /** * static instance */ private static final BogusFeedMessageTranslator sInstance = new BogusFeedMessageTranslator(); /** * Gets a <code>BogusFeedMessageTranslator</code> instance. * * @return a <code>BogusFeedMessageTranslator</code> value */ static BogusFeedMessageTranslator getInstance() { return sInstance; } /** * Create a new BogusFeedMessageTranslator instance. * */ private BogusFeedMessageTranslator() { } /* (non-Javadoc) * @see org.marketcetera.marketdata.DataRequestTranslator#translate(org.marketcetera.marketdata.DataRequest) */ @Override public MarketDataRequest fromDataRequest(MarketDataRequest inRequest) throws CoreException { if(inRequest.validateWithCapabilities(TOP_OF_BOOK, LEVEL_2, OPEN_BOOK, TOTAL_VIEW, LATEST_TICK, MARKET_STAT, DIVIDEND)) { return inRequest; } throw new CoreException(new I18NBoundMessage1P(UNSUPPORTED_REQUEST, String.valueOf(inRequest.getContent()))); } }