/** * Copyright (C) 2011 - present by OpenGamma Inc. and the OpenGamma group of companies * * Please see distribution for license. */ package com.opengamma.engine.marketdata.live; import com.opengamma.core.security.SecuritySource; import com.opengamma.engine.marketdata.MarketDataProvider; import com.opengamma.engine.marketdata.availability.MarketDataAvailabilityProvider; import com.opengamma.livedata.LiveDataClient; import com.opengamma.util.ArgumentChecker; import com.opengamma.util.SingletonFactoryBean; /** * Spring factory bean for {@link LiveMarketDataProvider}. */ public class LiveMarketDataProviderFactoryBean extends SingletonFactoryBean<MarketDataProvider> { private LiveDataClient _liveDataClient; private SecuritySource _securitySource; private MarketDataAvailabilityProvider _availabilityProvider; public LiveDataClient getLiveDataClient() { return _liveDataClient; } public void setLiveDataClient(LiveDataClient liveDataClient) { _liveDataClient = liveDataClient; } public SecuritySource getSecuritySource() { return _securitySource; } public void setSecuritySource(SecuritySource securitySource) { _securitySource = securitySource; } public MarketDataAvailabilityProvider getAvailabilityProvider() { return _availabilityProvider; } public void setAvailabilityProvider(MarketDataAvailabilityProvider availabilityProvider) { _availabilityProvider = availabilityProvider; } @Override protected MarketDataProvider createObject() { ArgumentChecker.notNullInjected(getLiveDataClient(), "liveDataClient"); ArgumentChecker.notNullInjected(getSecuritySource(), "securitySource"); ArgumentChecker.notNullInjected(getAvailabilityProvider(), "availabilityProvider"); //return new LiveMarketDataProvider(getLiveDataClient(), getAvailabilityProvider(), getSecuritySource()); throw new UnsupportedOperationException("LiveMarketDataProviders must be created for each view process"); } }