public DiscordEventHandler(
            IEventManager eventManager,
            IServiceProvider provider,
            IMessageContextAccessor contextAccessor,
            IMessageContextFactory messageContextFactory,
            IBotApplicationBuilderFactory builderFactory,
            IMessageContextDispatcher contextDispatcher,
            ILogger <DiscordEventHandler> logger,
            IOptions <DebugOptions> debugOptions,
            IStringLocalizer localizer)
        {
            _eventManager          = eventManager;
            _provider              = provider;
            _contextAccessor       = contextAccessor;
            _messageContextFactory = messageContextFactory;
            _contextDispatcher     = contextDispatcher;
            _logger       = logger;
            _localizer    = localizer;
            _debugOptions = debugOptions.Value;

            var builder = builderFactory.CreateBuilder();

            builder.ApplicationServices = provider;
            _application = builder.Build();
        }
示例#2
0
 public NServiceBusRequestContext(
     [NotNull] ITimeProvider timeProvider,
     [NotNull] IMessageContextAccessor messageContextAccessor)
     : base(timeProvider)
 {
     MessageContextAccessor = messageContextAccessor;
 }
示例#3
0
        public SqsNotificationListener(
            SqsQueueBase queue,
            IMessageSerializationRegister serializationRegister,
            IMessageMonitor messagingMonitor,
            ILoggerFactory loggerFactory,
            IMessageContextAccessor messageContextAccessor,
            Action <Exception, Amazon.SQS.Model.Message> onError = null,
            IMessageLockAsync messageLock = null,
            IMessageBackoffStrategy messageBackoffStrategy = null)
        {
            _queue            = queue;
            _messagingMonitor = messagingMonitor;
            onError           = onError ?? DefaultErrorHandler;
            _log = loggerFactory.CreateLogger("JustSaying");

            _messageProcessingStrategy = new DefaultThrottledThroughput(_messagingMonitor);
            _messageHandlerWrapper     = new MessageHandlerWrapper(messageLock, _messagingMonitor);

            _messageDispatcher = new MessageDispatcher(
                _queue,
                serializationRegister,
                messagingMonitor,
                onError,
                _handlerMap,
                loggerFactory,
                messageBackoffStrategy,
                messageContextAccessor);

            Subscribers = new Collection <ISubscriber>();

            if (messageBackoffStrategy != null)
            {
                _requestMessageAttributeNames.Add(MessageSystemAttributeName.ApproximateReceiveCount);
            }
        }
 public ModuleEventManager(
     IServiceProvider serviceProvider,
     IMessageContextAccessor contextAccessor,
     IModuleManager moduleManager
     ) : base(serviceProvider, contextAccessor)
 {
     _moduleManager = moduleManager;
 }
 public UowBehavior(
     [NotNull] IKernel kernel,
     [NotNull] IMessageContextAccessor messageContextAccessor,
     [NotNull] ILogger logger)
 {
     Kernel = kernel;
     MessageContextAccessor = messageContextAccessor;
     Logger = logger;
 }
        public JustSayingBus(IMessagingConfig config, IMessageSerializationRegister serializationRegister, ILoggerFactory loggerFactory)
        {
            _log = loggerFactory.CreateLogger("JustSaying");

            Config  = config;
            Monitor = new NullOpMessageMonitor();
            MessageContextAccessor = new MessageContextAccessor();

            _subscribersByRegionAndQueue = new Dictionary <string, Dictionary <string, INotificationSubscriber> >();
            _publishersByRegionAndTopic  = new Dictionary <string, Dictionary <string, IMessagePublisher> >();
            SerializationRegister        = serializationRegister;
            _publishers  = new HashSet <IPublisher>();
            _subscribers = new HashSet <ISubscriber>();
        }
 public MessageDispatcher(
     IMessageSerializationRegister serializationRegister,
     IMessageMonitor messagingMonitor,
     HandlerMap handlerMap,
     ILoggerFactory loggerFactory,
     IMessageBackoffStrategy messageBackoffStrategy,
     IMessageContextAccessor messageContextAccessor)
 {
     _serializationRegister = serializationRegister;
     _messagingMonitor      = messagingMonitor;
     _handlerMap            = handlerMap;
     _logger = loggerFactory.CreateLogger("JustSaying");
     _messageBackoffStrategy = messageBackoffStrategy;
     _messageContextAccessor = messageContextAccessor;
 }
示例#8
0
 public GraphQLWSProtocol(
     IQueryStreamService queryStreamService,
     IOptions <WebSocketServerOptions> options,
     IMessageContextAccessor messageContextAccessor,
     ILogger <GraphQLWSProtocol> logger)
 {
     _queryStreamService     = queryStreamService;
     _messageContextAccessor = messageContextAccessor;
     _logger        = logger;
     _options       = options.Value;
     _parserOptions = new ParserOptions()
     {
         ImportProviders = null
     }; //todo: inject
 }
示例#9
0
 public GraphQLWSProtocol(
     IQueryStreamService queryStreamService,
     IOptions <GraphQLWSProtocolOptions> options,
     IMessageContextAccessor messageContextAccessor,
     ILogger <GraphQLWSProtocol> logger)
 {
     _queryStreamService     = queryStreamService;
     _messageContextAccessor = messageContextAccessor;
     _logger     = logger;
     _options    = options.Value;
     _serializer = JsonSerializer.CreateDefault(new JsonSerializerSettings
     {
         MissingMemberHandling = MissingMemberHandling.Ignore,
         ContractResolver      = new CamelCasePropertyNamesContractResolver()
     });
 }
示例#10
0
 public MessageDispatcher(
     SqsQueueBase queue,
     IMessageSerializationRegister serializationRegister,
     IMessageMonitor messagingMonitor,
     Action <Exception, SQSMessage> onError,
     HandlerMap handlerMap,
     ILoggerFactory loggerFactory,
     IMessageBackoffStrategy messageBackoffStrategy,
     IMessageContextAccessor messageContextAccessor)
 {
     _queue = queue;
     _serializationRegister = serializationRegister;
     _messagingMonitor      = messagingMonitor;
     _onError                = onError;
     _handlerMap             = handlerMap;
     _logger                 = loggerFactory.CreateLogger("JustSaying");
     _messageBackoffStrategy = messageBackoffStrategy;
     _messageContextAccessor = messageContextAccessor;
 }
示例#11
0
        private JustSayingFluently CreateFluent(JustSayingBus bus, ILoggerFactory loggerFactory)
        {
            IAwsClientFactoryProxy proxy        = CreateFactoryProxy();
            IVerifyAmazonQueues    queueCreator = new AmazonQueueCreator(proxy, loggerFactory);

            var fluent = new JustSayingFluently(bus, queueCreator, proxy, loggerFactory);

            IMessageMonitor         messageMonitor         = CreateMessageMonitor();
            IMessageContextAccessor messageContextAccessor = CreateMessageContextAccessor();

            fluent.WithMonitoring(messageMonitor)
            .WithMessageContextAccessor(messageContextAccessor);

            if (ServicesBuilder?.MessageLock != null)
            {
                fluent.WithMessageLockStoreOf(ServicesBuilder.MessageLock());
            }

            return(fluent);
        }
示例#12
0
 public SimpleMessageWithStringAttributesHandler(IMessageContextAccessor contextAccessor)
 {
     _contextAccessor = contextAccessor;
     HandledMessages  = new List <(MessageContext, SimpleMessage)>();
 }
示例#13
0
 public EventManager(IServiceProvider serviceProvider, IMessageContextAccessor contextAccessor)
 {
     _serviceProvider = serviceProvider;
     _contextAccessor = contextAccessor;
 }
示例#14
0
 public IMayWantOptionalSettings WithMessageContextAccessor(IMessageContextAccessor messageContextAccessor)
 {
     Bus.MessageContextAccessor = messageContextAccessor;
     return(this);
 }
示例#15
0
 public RecordingMessageContextAccessor(IMessageContextAccessor inner)
 {
     _inner = inner;
 }
示例#16
0
 /// <summary>
 /// Creates an instance of <see cref="MessageContextAccessorMiddleware"/>.
 /// </summary>
 /// <param name="messageContextAccessor">The <see cref="IMessageContextAccessor"/> to set.</param>
 public MessageContextAccessorMiddleware(IMessageContextAccessor messageContextAccessor)
 {
     _messageContextAccessor = messageContextAccessor ?? throw new ArgumentNullException(nameof(messageContextAccessor));
 }