public Adapter(ISettings settings, IServiceFacade udapiServiceFacade, IAdapterPlugin platformConnector, IStreamListenerManager listenersManager) { _listenersManager = listenersManager; Settings = settings; UDAPIService = udapiServiceFacade; PlatformConnector = platformConnector; var statemanager = new StateManager(settings,platformConnector); StateManager = statemanager; StateProviderProxy.Init(statemanager); listenersManager.StateManager = statemanager; if (settings.StatsEnabled) StatsManager.Configure(); // we just need the initialisation new SuspensionManager(statemanager, PlatformConnector); platformConnector.Initialise(); statemanager.AddRules(platformConnector.MarketRules); ThreadPool.SetMinThreads(500, 500); _sports = new List<string>(); _stats = StatsManager.Instance["adapter.core"].GetHandle(); PopuplateAdapterVersionInfo(); }
public Adapter(ISettings settings, IServiceFacade udapiServiceFacade, IAdapterPlugin platformConnector, IStreamListenerManager listenersManager) { _listenersManager = listenersManager; Settings = settings; UDAPIService = udapiServiceFacade; PlatformConnector = platformConnector; var statemanager = new StateManager(settings, platformConnector); StateManager = statemanager; StateProviderProxy.Init(statemanager); listenersManager.StateManager = statemanager; if (settings.StatsEnabled) { StatsManager.Configure(); } // we just need the initialisation new SuspensionManager(statemanager, PlatformConnector); platformConnector.Initialise(); statemanager.AddRules(platformConnector.MarketRules); ThreadPool.SetMinThreads(500, 500); _sports = new List <string>(); _stats = StatsManager.Instance["adapter.core"].GetHandle(); PopuplateAdapterVersionInfo(); }
public Adapter( ISettings settings, IServiceFacade udapiServiceFacade, IAdapterPlugin platformConnector, IStateManager stateManager, IStateProvider stateProvider, ISuspensionManager suspensionManager, IStreamHealthCheckValidation streamHealthCheckValidation, IFixtureValidation fixtureValidation) { _settings = settings ?? throw new ArgumentNullException(nameof(settings)); _udapiServiceFacade = udapiServiceFacade ?? throw new ArgumentNullException(nameof(udapiServiceFacade)); _platformConnector = platformConnector ?? throw new ArgumentNullException(nameof(platformConnector)); _stateManager = stateManager ?? throw new ArgumentNullException(nameof(stateManager)); _suspensionManager = suspensionManager ?? throw new ArgumentNullException(nameof(suspensionManager)); _streamHealthCheckValidation = streamHealthCheckValidation ?? throw new ArgumentNullException(nameof(streamHealthCheckValidation)); _fixtureValidation = fixtureValidation ?? throw new ArgumentNullException(nameof(fixtureValidation)); StateProviderProxy.Init(stateProvider); if (settings.StatsEnabled) { StatsManager.Configure(); } platformConnector.Initialise(); stateManager.AddRules(platformConnector.MarketRules); ThreadPool.SetMinThreads(500, 500); _stats = StatsManager.Instance["adapter.core"].GetHandle(); PopuplateAdapterVersionInfo(); }
public StreamListener(IResourceFacade resource, IAdapterPlugin platformConnector, IEventState eventState, IStateManager stateManager, ISettings settings) { if (resource == null) { throw new ArgumentException("Resource information cannot be null"); } if (resource.Content == null) { throw new Exception("Resource does not contain any content"); } _logger.DebugFormat("Instantiating listener for {0} with sequence={1}", resource, resource.Content.Sequence); _lockTimeout = settings.ProcessingLockTimeOutInSecs; _resource = resource; _platformConnector = platformConnector; _eventState = eventState; _stateManager = stateManager; _settings = settings; _currentSequence = resource.Content.Sequence; _lastSequenceProcessedInSnapshot = -1; _hasRecoveredFromError = true; _isFirstSnapshotProcessed = false; _isProcessingFirstSnapshot = false; _performingDelayedStop = false; _marketsRuleManager = stateManager.CreateNewMarketRuleManager(resource.Id); FixtureId = resource.Id; Sport = resource.Sport; SequenceOnStreamingAvailable = _currentSequence; IsStreaming = false; IsConnecting = false; IsDisposing = false; IsErrored = false; IsIgnored = false; IsStopping = false; var fixtureState = _eventState.GetFixtureState(resource.Id); IsFixtureEnded = fixtureState != null ? fixtureState.MatchStatus == MatchStatus.MatchOver : _resource.IsMatchOver; IsFixtureSetup = (_resource.MatchStatus == MatchStatus.Setup || _resource.MatchStatus == MatchStatus.Ready); IsFixtureDeleted = false; IsInPlay = fixtureState != null ? fixtureState.MatchStatus == MatchStatus.InRunning : _resource.MatchStatus == MatchStatus.InRunning; _currentEpoch = fixtureState != null ? fixtureState.Epoch : -1; _Stats = StatsManager.Instance[string.Concat("adapter.core.sport.", resource.Sport)].GetHandle(); SetupListener(); _logger.DebugFormat("Listener instantiated for {0}", resource); }
public IStatsHandle GetHandle() { return(_handle ?? (_handle = new StatsHandle(this))); }
public StreamListener(IResourceFacade resource, IAdapterPlugin platformConnector, IEventState eventState, IStateManager stateManager,ISettings settings) { if (resource == null) throw new ArgumentException("Resource information cannot be null"); if (resource.Content == null) throw new Exception("Resource does not contain any content"); _logger.DebugFormat("Instantiating listener for {0} with sequence={1}", resource, resource.Content.Sequence); _lockTimeout = settings.ProcessingLockTimeOutInSecs; _resource = resource; _platformConnector = platformConnector; _eventState = eventState; _stateManager = stateManager; _settings = settings; _currentSequence = resource.Content.Sequence; _lastSequenceProcessedInSnapshot = -1; _hasRecoveredFromError = true; _isFirstSnapshotProcessed = false; _isProcessingFirstSnapshot = false; _performingDelayedStop = false; _marketsRuleManager = stateManager.CreateNewMarketRuleManager(resource.Id); FixtureId = resource.Id; Sport = resource.Sport; SequenceOnStreamingAvailable = _currentSequence; IsStreaming = false; IsConnecting = false; IsDisposing = false; IsErrored = false; IsIgnored = false; IsStopping = false; var fixtureState = _eventState.GetFixtureState(resource.Id); IsFixtureEnded = fixtureState != null ? fixtureState.MatchStatus == MatchStatus.MatchOver : _resource.IsMatchOver; IsFixtureSetup = (_resource.MatchStatus == MatchStatus.Setup || _resource.MatchStatus == MatchStatus.Ready); IsFixtureDeleted = false; IsInPlay = fixtureState != null ? fixtureState.MatchStatus == MatchStatus.InRunning : _resource.MatchStatus == MatchStatus.InRunning; _currentEpoch = fixtureState != null ? fixtureState.Epoch : -1; _Stats = StatsManager.Instance[string.Concat("adapter.core.sport.", resource.Sport)].GetHandle(); SetupListener(); _logger.DebugFormat("Listener instantiated for {0}", resource); }
public IStatsHandle GetHandle() { return _handle ?? (_handle = new StatsHandle(this)); }