public async Task Handle(BMIUpdated message, IMessageHandlerContext context)
        {
            TrackingsUpdated trackingsUpdated = new TrackingsUpdated();

            TrackingModel trackingModel = new TrackingModel()
            {
                BMI      = message.BMI,
                Weight   = message.Weight,
                trend    = (int)(message.Weight - message.BMI),
                Comments = "you are great!",
                CardId   = message.CardId
            };

            var isTrackingAdded = await _trackingService.AddTracikngAsync(trackingModel);

            if (isTrackingAdded)
            {
                trackingsUpdated.MeasureId = message.MeasureId;
                trackingsUpdated.succeeded = true;
            }
            else
            {
                trackingsUpdated.MeasureId = message.MeasureId;
                trackingsUpdated.succeeded = false;
            }

            await context.Publish(trackingsUpdated)
            .ConfigureAwait(false);
        }
Beispiel #2
0
 public async Task Handle(TrackingsUpdated message, IMessageHandlerContext context)
 {
     subscriber.MeasureId = message.MeasureId;
     if (message.succeeded)
     {
         subscriber.Comment    += "Tracking added";
         Data.IsTrackingUpdated = true;
     }
     else
     {
         subscriber.Comment += "Tracking failed";
         //send to error q and rollback
         Data.IsTrackingUpdated = false;
     }
     await ProcessOrder(context);
 }