Esempio n. 1
0
        public async Task <bool> SaveGroup(QueueMessagesRequest request)
        {
            bool ifExist = false;

            if (_hubContext.Clients.Group(request.QueueName) != null)
            {
                ifExist = true;
            }
            await _hubContext.Groups.AddToGroupAsync(request.ConnectionId, request.QueueName);

            return(ifExist);
        }
Esempio n. 2
0
        public async Task Start(QueueMessagesRequest request)
        {
            try
            {
                var consumer = await _listenerService.InitConsumer(request.QueueName);

                _clientsContainer.AddConnection(request.ConnectionId, consumer);

                consumer.Received += async(source, e) =>
                {
                    await _publisher.Send(request, e);
                };
            }
            catch (Exception ex)
            {
                throw;
            }
        }
Esempio n. 3
0
        public async Task Send(QueueMessagesRequest request, BasicDeliverEventArgs queueMessage)
        {
            await _hubContext.Groups.AddToGroupAsync(request.ConnectionId, request.QueueName);

            var responseBody   = queueMessage.Body;
            var responseString = Encoding.UTF8.GetString(responseBody);

            if (responseString != null)
            {
                try
                {
                    await _hubContext.Clients.Group(request.QueueName).MessageReceived(responseString);
                }
                catch (Exception ex)
                {
                    await _hubContext.Clients.Group(request.QueueName).Excepion(ex.ToString());
                }
            }
        }
Esempio n. 4
0
 public async Task <ResponseBase> PostQueueMessages(QueueMessagesRequest request)
 {
     return(await _factory.GetHandler(request.GetType()).HandleAsync(request));
 }