Пример #1
0
        public static async Task <IQueue> ForAsync(AzureServiceBusConfiguration configuration, MessageSerializer messageSerializer, IQueueInstance queue)
        {
            var queueName = Conventions.QueuePath(queue.Name);

            var namespaceManager = NamespaceManager.CreateFromConnectionString(configuration.ConnectionString);

            if (!namespaceManager.QueueExists(queueName))
            {
                await namespaceManager.CreateQueueAsync(queueName);
            }

            var messagingFactory = MessagingFactory.CreateFromConnectionString(configuration.ConnectionString);

            var sender = await messagingFactory.CreateMessageSenderAsync(queueName);

            var receiver = await messagingFactory.CreateMessageReceiverAsync(queueName, ReceiveMode.PeekLock);

            return(new Queue(sender, receiver, messageSerializer, queueName, queue));
        }
Пример #2
0
 public Topic(MessageSerializer messageSerializer, MessageSender messageSender, Type eventType)
 {
     _messageSerializer = messageSerializer;
     _messageSender     = messageSender;
     EventType          = eventType;
 }
Пример #3
0
 public BrokeredMessageFactory(MessageSerializer messageSerializer)
 {
     _messageSerializer = messageSerializer;
 }
Пример #4
0
        internal static async Task <ITopic> ForAsync(AzureServiceBusConfiguration configuration, MessageSerializer messageSerializer, Type eventType)
        {
            var topicPath = Conventions.TopicPath(eventType);

            var namespaceManager = NamespaceManager.CreateFromConnectionString(configuration.ConnectionString);

            if (!namespaceManager.TopicExists(topicPath))
            {
                await namespaceManager.CreateTopicAsync(topicPath);
            }

            var messagingFactory = MessagingFactory.CreateFromConnectionString(configuration.ConnectionString);

            var sender = await messagingFactory.CreateMessageSenderAsync(topicPath);

            return(new Topic(messageSerializer, sender, eventType));
        }
Пример #5
0
 public QueueFactory(AzureServiceBusConfiguration configuration, MessageSerializer messageSerializer)
 {
     _configuration     = configuration;
     _messageSerializer = messageSerializer;
 }