public ProcessingMessageMailbox(IProcessingMessageScheduler <X, Y, Z> scheduler, IProcessingMessageHandler <X, Y, Z> messageHandler)
 {
     _waitingToRetryMessageDict = new ConcurrentDictionary <int, X>();
     _messageQueue     = new ConcurrentQueue <X>();
     _mailboxScheduler = scheduler;
     _messageHandler   = messageHandler;
 }
 public ProcessingMessageMailbox(string routingKey, IProcessingMessageScheduler <X, Y> scheduler, IProcessingMessageHandler <X, Y> messageHandler, ILogger logger)
 {
     _routingKey     = routingKey;
     _messageQueue   = new ConcurrentQueue <X>();
     _scheduler      = scheduler;
     _messageHandler = messageHandler;
     _logger         = logger;
     _lastActiveTime = DateTime.Now;
 }
Example #3
0
 public MailboxProcessor(IProcessingMessageScheduler scheduler, IOptions <MailboxOption> options, ILogger <MailboxProcessor> logger)
 {
     _scheduler  = scheduler;
     _logger     = logger;
     _batchCount = options.Value.BatchCount;
     _mailboxProcessorCommands = new BlockingCollection <IMailboxProcessorCommand>();
     _mailboxDictionary        = new ConcurrentDictionary <string, Mailbox>();
     _cancellationSource       = new CancellationTokenSource();
 }
Example #4
0
 public Mailbox(string key,
                IProcessingMessageScheduler scheduler,
                int batchCount = 100)
 {
     _batchCount  = batchCount;
     _scheduler   = scheduler;
     Key          = key;
     MessageQueue = new ConcurrentQueue <MailboxMessage>();
 }
Example #5
0
        public MessageProcessor(IProcessingMessageScheduler <IMessageContext> scheduler)
        {
            _logger = IoCFactory.Resolve <ILoggerFactory>().Create(this.GetType());

            _processingMessageScheduler = scheduler;
            _mailboxDict = new ConcurrentDictionary <string, ProcessingMailbox <IMessageContext> >();
            _mailboxProcessorCommands = new BlockingCollection <IMailboxProcessorCommand>();
            _cancellationSource       = new CancellationTokenSource();
        }
Example #6
0
 public MessageProcessor(IProcessingMessageScheduler <IMessageContext> scheduler, int batchCount = 100)
 {
     _logger     = IoCFactory.IsInit() ? IoCFactory.Resolve <ILoggerFactory>().Create(GetType()) : null;
     _batchCount = batchCount;
     _processingMessageScheduler = scheduler;
     MailboxDictionary           = new ConcurrentDictionary <string, ProcessingMailbox <IMessageContext> >();
     _mailboxProcessorCommands   = new BlockingCollection <IMailboxProcessorCommand>();
     _cancellationSource         = new CancellationTokenSource();
 }
Example #7
0
 public DefaultMessageProcessor(IProcessingMessageScheduler <X, Y> processingMessageScheduler, IProcessingMessageHandler <X, Y> processingMessageHandler, ILoggerFactory loggerFactory)
 {
     _mailboxDict = new ConcurrentDictionary <string, ProcessingMessageMailbox <X, Y> >();
     _processingMessageScheduler = processingMessageScheduler;
     _processingMessageHandler   = processingMessageHandler;
     _logger          = loggerFactory.Create(GetType().FullName);
     _scheduleService = ObjectContainer.Resolve <IScheduleService>();
     _timeoutSeconds  = ENodeConfiguration.Instance.Setting.AggregateRootMaxInactiveSeconds;
     _taskName        = "CleanInactiveAggregates_" + DateTime.Now.Ticks + new Random().Next(10000);
 }
 public ProcessingMailbox(string key,
                          IProcessingMessageScheduler <TMessage> scheduler,
                          Func <TMessage, Task> processingMessage,
                          Action <ProcessingMailbox <TMessage> > handleMailboxEmpty)
 {
     _scheduler          = scheduler;
     _processMessage     = processingMessage;
     _handleMailboxEmpty = handleMailboxEmpty;
     Key          = key;
     MessageQueue = new ConcurrentQueue <TMessage>();
 }
 public DefaultMessageProcessor(IProcessingMessageScheduler <X, Y, Z> processingMessageScheduler, IProcessingMessageHandler <X, Y, Z> processingMessageHandler)
 {
     _mailboxDict = new ConcurrentDictionary <string, ProcessingMessageMailbox <X, Y, Z> >();
     _processingMessageScheduler = processingMessageScheduler;
     _processingMessageHandler   = processingMessageHandler;
 }
 public DefaultPublishableExceptionProcessor(
     IProcessingMessageScheduler <ProcessingPublishableExceptionMessage, IPublishableException> processingMessageScheduler,
     IProcessingMessageHandler <ProcessingPublishableExceptionMessage, IPublishableException> processingMessageHandler,
     ILoggerFactory loggerFactory) : base(processingMessageScheduler, processingMessageHandler, loggerFactory)
 {
 }
 public DefaultApplicationMessageProcessor(
     IProcessingMessageScheduler <ProcessingApplicationMessage, IApplicationMessage> processingMessageScheduler,
     IProcessingMessageHandler <ProcessingApplicationMessage, IApplicationMessage> processingMessageHandler,
     ILoggerFactory loggerFactory) : base(processingMessageScheduler, processingMessageHandler, loggerFactory)
 {
 }
 public ProcessingMessageMailbox(IProcessingMessageScheduler <X, Y, Z> scheduler, IProcessingMessageHandler <X, Y, Z> messageHandler)
 {
     _messageQueue   = new ConcurrentQueue <X>();
     _scheduler      = scheduler;
     _messageHandler = messageHandler;
 }
 public DefaultDomainEventProcessor(
     IProcessingMessageScheduler <ProcessingDomainEventStreamMessage, DomainEventStreamMessage> processingMessageScheduler,
     IProcessingMessageHandler <ProcessingDomainEventStreamMessage, DomainEventStreamMessage> processingMessageHandler,
     ILoggerFactory loggerFactory) : base(processingMessageScheduler, processingMessageHandler, loggerFactory)
 {
 }