Ejemplo n.º 1
0
        public async Task <IActionResult> PostPublish([FromBody] MessagePublishDto message)
        {
            this.logger.LogTrace("Call publis message fro topic: {0}", message.Topic);

            PublishResult result = await this.messageRepository.Publish(message.Topic, message.Message).ConfigureAwait(false);

            foreach (PublishPair storedMessage in result.CratedMessages)
            {
                await this.notificationSender.SendNotificationAsync(storedMessage.QueuId, storedMessage.MessageId).ConfigureAwait(false);
            }

            return(this.CreatedAtAction(nameof(this.GetMessages), null, result));
        }
Ejemplo n.º 2
0
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='body'>
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task <object> PublishAsync(this IPassiveMQAPI operations, MessagePublishDto body = default(MessagePublishDto), CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.PublishWithHttpMessagesAsync(body, null, cancellationToken).ConfigureAwait(false))
     {
         return(_result.Body);
     }
 }
Ejemplo n.º 3
0
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='body'>
 /// </param>
 public static object Publish(this IPassiveMQAPI operations, MessagePublishDto body = default(MessagePublishDto))
 {
     return(Task.Factory.StartNew(s => ((IPassiveMQAPI)s).PublishAsync(body), operations, CancellationToken.None, TaskCreationOptions.None, TaskScheduler.Default).Unwrap().GetAwaiter().GetResult());
 }