Exemplo n.º 1
0
 private Queue(
     MessageSender sender,
     MessageReceiver receiver,
     MessageSerializer messageSerializer,
     string queueName,
     IQueueInstance queueInstance)
     : base(receiver)
 {
     _messageSender     = sender;
     _messageSerializer = messageSerializer;
     QueueInstance      = queueInstance;
     QueueName          = queueName;
 }
Exemplo n.º 2
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));
        }
Exemplo n.º 3
0
 public Task <IQueue> FromAsync(IQueueInstance queue)
 {
     return(Queue.ForAsync(_configuration, _messageSerializer, queue));
 }