示例#1
0
 public EventHandlerFactory(
     IEthApiContractService ethApi,
     IEventSubscriptionStateRepository stateFactory,
     IEventContractQueryConfigurationRepository contractQueryFactory = null,
     IEventAggregatorRepository eventAggregatorRepository            = null,
     IEthGetTransactionByHash getTransactionProxy                     = null,
     ISubscriberQueueRepository subscriberQueueRepository             = null,
     ISubscriberQueueFactory subscriberQueueFactory                   = null,
     ISubscriberSearchIndexRepository subscriberSearchIndexRepository = null,
     ISubscriberSearchIndexFactory subscriberSearchIndexFactory       = null,
     IEventRuleRepository eventRuleRepository = null,
     ISubscriberStorageRepository subscriberStorageRepository = null,
     ISubscriberStorageFactory subscriberRepositoryFactory    = null)
 {
     EthApi                          = ethApi;
     StateFactory                    = stateFactory;
     ContractQueryFactory            = contractQueryFactory;
     EventAggregatorRepository       = eventAggregatorRepository;
     GetTransactionProxy             = getTransactionProxy;
     SubscriberQueueRepository       = subscriberQueueRepository;
     SubscriberQueueFactory          = subscriberQueueFactory;
     SubscriberSearchIndexRepository = subscriberSearchIndexRepository;
     SubscriberSearchIndexFactory    = subscriberSearchIndexFactory;
     EventRuleRepository             = eventRuleRepository;
     SubscriberStorageRepository     = subscriberStorageRepository;
     SubscriberRepositoryFactory     = subscriberRepositoryFactory;
 }
示例#2
0
        public EventSubscriptionFactory(
            IWeb3 web3,
            IEventProcessingConfigurationRepository configurationRepository,
            ISubscriberQueueFactory subscriberQueueFactory             = null,
            ISubscriberSearchIndexFactory subscriberSearchIndexFactory = null,
            ISubscriberStorageFactory subscriberRepositoryFactory      = null) : this(
                configurationRepository,

                new EventMatcherFactory(
                    configurationRepository.ParameterConditions,
                    configurationRepository.EventSubscriptionAddresses,
                    configurationRepository.SubscriberContracts),

                new EventHandlerFactory(
                    web3,
                    configurationRepository,
                    subscriberQueueFactory,
                    subscriberSearchIndexFactory,
                    subscriberRepositoryFactory))
        {
        }
示例#3
0
 public EventHandlerFactory(
     IWeb3 web3,
     IEventProcessingConfigurationRepository configRepo,
     ISubscriberQueueFactory subscriberQueueFactory             = null,
     ISubscriberSearchIndexFactory subscriberSearchIndexFactory = null,
     ISubscriberStorageFactory subscriberRepositoryFactory      = null)
     : this(
         web3.Eth,
         configRepo.EventSubscriptionStates,
         configRepo.EventContractQueries,
         configRepo.EventAggregators,
         web3.Eth.Transactions.GetTransactionByHash,
         configRepo.SubscriberQueues,
         subscriberQueueFactory,
         configRepo.SubscriberSearchIndexes,
         subscriberSearchIndexFactory,
         configRepo.EventRules,
         configRepo.SubscriberStorage,
         subscriberRepositoryFactory)
 {
 }