コード例 #1
0
        public async Task AddSubscriberAsync <TMessage>(MessageSubscriber <TMessage> messageSubscriber)
            where TMessage : Message
        {
            var subscriberKey = exchangeSubscribersResolver.GetSubscriberKey <TMessage>();
            var serialized    = messageSerializer.Serialize(messageSubscriber.MessageSubscriberInfo);

            await database.SetAddAsync(subscriberKey, serialized);
        }
コード例 #2
0
        public async Task <MessageSubscriber <T> > CreateSubscriberAsync <T>(IMessageHandler <T> messageHandler)
            where T : Message
        {
            var exchangeName = exchangeNameResolver.GetExchangeName <T>();
            var subscriber   = new MessageSubscriber <T>(exchangeSubscriberService)
            {
                MessageSubscriberInfo = new MessageSubscriberInfo
                {
                    ExchangeName = exchangeName,
                    QueueName    = FormatQueueName(exchangeName)
                },
                MessageHandler = messageHandler
            };

            return(await Task.FromResult(subscriber));
        }