public async Task <int> SaveAsync(IToasterEvent toasterEvent, int expectedResult = 1)
        {
            var result = await _context.SaveChangesAsync();

            if (result == expectedResult)
            {
                var success = EventBuilder.BuildToasterEvent(toasterEvent);
                await _eventSender.SendAsync(success.ToJson());
            }
            else
            {
                var failure = toasterEvent.TransformInFailure();
                await _eventSender.SendAsync(failure);
            }

            return(result);
        }
Пример #2
0
 /// <summary>
 ///     Changes the Toaster instance to reflect the corresponding failure
 /// </summary>
 /// <returns>AppEvent instance as a JSON string</returns>
 public string TransformInFailure()
 {
     return(EventBuilder.BuildToasterEvent(new ToasterEvent(EntityType, ToasterType.Error, Verb, Identifier, Count))
            .ToJson());
 }
Пример #3
0
 /// <summary>
 ///     Returns an AppEvent instance as a JSON string
 /// </summary>
 public string GetEvent()
 {
     return(EventBuilder.BuildToasterEvent(this).ToJson());
 }