Class BogusFeed
- java.lang.Object
-
- org.marketcetera.marketdata.AbstractMarketDataFeed<BogusFeedToken,BogusFeedCredentials,BogusFeedMessageTranslator,BogusFeedEventTranslator,MarketDataRequest,BogusFeed>
-
- org.marketcetera.marketdata.bogus.BogusFeed
-
- All Implemented Interfaces:
IFeedComponent,MarketDataFeed<BogusFeedToken,BogusFeedCredentials>,org.springframework.context.Lifecycle
public class BogusFeed extends AbstractMarketDataFeed<BogusFeedToken,BogusFeedCredentials,BogusFeedMessageTranslator,BogusFeedEventTranslator,MarketDataRequest,BogusFeed>
Sample implementation ofMarketDataFeed.This implementation generates random market data for each symbol for which a market data request is received. Data is returned from the feed via
Eventobjects.- Since:
- 0.5.0
- Version:
- $Id$
- Author:
- Colin DuPlantis
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classBogusFeed.RequestCorresponds to a single market data request submitted toBogusFeed.-
Nested classes/interfaces inherited from interface org.marketcetera.marketdata.IFeedComponent
IFeedComponent.FeedType
-
-
Field Summary
Fields Modifier and Type Field Description private static Set<AssetClass>assetClassessupported asset classesprivate static Set<Capability>capabilitiescapabilities for BogusFeed - note that these are not dynamic as Bogus requires no provisioningprivate static intEXCHANGE_COUNTarbitrarily chosen number of internal exchanges to aggregateprivate Map<String,SimulatedExchange>exchangesexchanges that make up the group for which the bogus feed can report dataprivate booleanmLoggedInindicates if the feed has been logged in toprivate static BogusFeedsInstancestatic instance ofBogusFeed-
Fields inherited from class org.marketcetera.marketdata.AbstractMarketDataFeed
DATAFEED_STATUS_MESSAGES, DATAFEED_TRACE_MESSAGES, MARKETDATA_SIMULATION_KEY
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voiddoCancel(String inHandle)protected booleandoLogin(BogusFeedCredentials inCredentials)protected voiddoLogout()protected List<String>doMarketDataRequest(MarketDataRequest inData)protected BogusFeedTokengenerateToken(MarketDataFeedTokenSpec inTokenSpec)Set<Capability>getCapabilities()protected BogusFeedEventTranslatorgetEventTranslator()private List<SimulatedExchange>getExchangesForCode(String inExchange)Gets the list of exchanges associated with the given exchange code.static BogusFeedgetInstance(String inProviderName)Returns an instance ofBogusFeed.protected BogusFeedMessageTranslatorgetMessageTranslator()Set<AssetClass>getSupportedAssetClasses()protected booleanisLoggedIn()private voidsetLoggedIn(boolean inLoggedIn)Sets the loggedIn value.voidstart()voidstop()-
Methods inherited from class org.marketcetera.marketdata.AbstractMarketDataFeed
addFeedComponentListener, afterDoExecute, beforeDoExecute, dataReceived, doInitialize, doReconnectToFeed, execute, getFeedStatus, getFeedType, getID, getProviderName, getTimeout, isRunning, login, logout, removeFeedComponentListener, setFeedStatus
-
-
-
-
Field Detail
-
capabilities
private static final Set<Capability> capabilities
capabilities for BogusFeed - note that these are not dynamic as Bogus requires no provisioning
-
assetClasses
private static final Set<AssetClass> assetClasses
supported asset classes
-
mLoggedIn
private boolean mLoggedIn
indicates if the feed has been logged in to
-
exchanges
private final Map<String,SimulatedExchange> exchanges
exchanges that make up the group for which the bogus feed can report data
-
sInstance
private static BogusFeed sInstance
static instance ofBogusFeed
-
EXCHANGE_COUNT
private static final int EXCHANGE_COUNT
arbitrarily chosen number of internal exchanges to aggregate- See Also:
- Constant Field Values
-
-
Constructor Detail
-
BogusFeed
private BogusFeed(String inProviderName) throws NoMoreIDsException
Create a new BogusFeed instance.- Parameters:
inProviderName- aStringvalue- Throws:
NoMoreIDsException- if a unique identifier could not be generated to be assigned
-
-
Method Detail
-
getInstance
public static BogusFeed getInstance(String inProviderName) throws NoMoreIDsException
Returns an instance ofBogusFeed.- Parameters:
inProviderName- aStringvalue- Returns:
- a
BogusFeedvalue - Throws:
NoMoreIDsException- if a unique identifier could not be generated to be assigned
-
start
public void start()
- Specified by:
startin interfaceorg.springframework.context.Lifecycle- Overrides:
startin classAbstractMarketDataFeed<BogusFeedToken,BogusFeedCredentials,BogusFeedMessageTranslator,BogusFeedEventTranslator,MarketDataRequest,BogusFeed>
-
stop
public void stop()
- Specified by:
stopin interfaceorg.springframework.context.Lifecycle- Overrides:
stopin classAbstractMarketDataFeed<BogusFeedToken,BogusFeedCredentials,BogusFeedMessageTranslator,BogusFeedEventTranslator,MarketDataRequest,BogusFeed>
-
getCapabilities
public Set<Capability> getCapabilities()
-
getSupportedAssetClasses
public Set<AssetClass> getSupportedAssetClasses()
-
doCancel
protected final void doCancel(String inHandle)
- Specified by:
doCancelin classAbstractMarketDataFeed<BogusFeedToken,BogusFeedCredentials,BogusFeedMessageTranslator,BogusFeedEventTranslator,MarketDataRequest,BogusFeed>
-
doMarketDataRequest
protected final List<String> doMarketDataRequest(MarketDataRequest inData) throws FeedException
- Specified by:
doMarketDataRequestin classAbstractMarketDataFeed<BogusFeedToken,BogusFeedCredentials,BogusFeedMessageTranslator,BogusFeedEventTranslator,MarketDataRequest,BogusFeed>- Throws:
FeedException
-
doLogin
protected final boolean doLogin(BogusFeedCredentials inCredentials)
- Specified by:
doLoginin classAbstractMarketDataFeed<BogusFeedToken,BogusFeedCredentials,BogusFeedMessageTranslator,BogusFeedEventTranslator,MarketDataRequest,BogusFeed>
-
doLogout
protected final void doLogout()
- Specified by:
doLogoutin classAbstractMarketDataFeed<BogusFeedToken,BogusFeedCredentials,BogusFeedMessageTranslator,BogusFeedEventTranslator,MarketDataRequest,BogusFeed>
-
generateToken
protected final BogusFeedToken generateToken(MarketDataFeedTokenSpec inTokenSpec) throws FeedException
- Specified by:
generateTokenin classAbstractMarketDataFeed<BogusFeedToken,BogusFeedCredentials,BogusFeedMessageTranslator,BogusFeedEventTranslator,MarketDataRequest,BogusFeed>- Throws:
FeedException
-
getEventTranslator
protected final BogusFeedEventTranslator getEventTranslator()
-
getMessageTranslator
protected final BogusFeedMessageTranslator getMessageTranslator()
-
isLoggedIn
protected final boolean isLoggedIn()
- Specified by:
isLoggedInin classAbstractMarketDataFeed<BogusFeedToken,BogusFeedCredentials,BogusFeedMessageTranslator,BogusFeedEventTranslator,MarketDataRequest,BogusFeed>
-
setLoggedIn
private void setLoggedIn(boolean inLoggedIn)
Sets the loggedIn value.- Parameters:
inLoggedIn- Logged-in status of the feed
-
getExchangesForCode
private List<SimulatedExchange> getExchangesForCode(String inExchange)
Gets the list of exchanges associated with the given exchange code.- Parameters:
inExchange- aStringvalue containing an exchange code or null to return all exchanges- Returns:
- a
List<SimulatedExchange>value
-
-