protected SubscriptionPoller(ISubscriptionEventSource[] sources) { RetriesPolicy = PollerRetriesPolicy.Defaut(); Sources = sources; _handlerRegistrar = CreateHandlerRegistrar(); _contractSubscriptions = new Dictionary <ISubscriptionEventSource, int>(Sources.Length); }
internal void Initialize(IContractsRegistry contractsRegistry) { if (RetriesPolicy == null) { RetriesPolicy = PollerRetriesPolicy.NoRetries(); } _pollerContractName = contractsRegistry.GetContractName(GetType()); var eventTypes = GetConcreteSubscriptionEventTypes(); if (eventTypes == null) { return; } var contractNames = eventTypes.Select(contractsRegistry.GetContractName).ToArray(); foreach (var source in Sources) { var id = source.CreateSubscriptionForContracts(_pollerContractName, contractNames); _contractSubscriptions.Add(source, id); } }