Example #1
0
        public async Task <TResponse> Handle(
            TRequest aRequest,
            CancellationToken cancellationToken,
            RequestHandlerDelegate <TResponse> next)
        {
            try
            {
                Logger.LogDebug($"{GetType().Name}: Start");
                Logger.LogDebug($"{GetType().Name}: Call next");
                TResponse response = await next();

                Logger.LogDebug($"{GetType().Name}: Start Post Processing");
                if (!(aRequest is IReduxRequest) && ReduxDevToolsInterop.IsEnabled)
                {
                    ReduxDevToolsInterop.Dispatch(aRequest, Store.GetSerializableState());
                }
                Logger.LogDebug($"{GetType().Name}: End");
                return(response);
            }
            catch (Exception e)
            {
                Logger.LogDebug($"{GetType().Name}: Error: {e.Message}");
                Logger.LogDebug($"{GetType().Name}: InnerException: {e.InnerException?.Message}");
                Logger.LogDebug($"{GetType().Name}: StackTrace: {e.StackTrace}");
                throw;
            }
        }
Example #2
0
 public ReduxDevToolsBehavior(
     ILogger <ReduxDevToolsBehavior <TRequest, TResponse> > aLogger,
     ReduxDevToolsInterop aReduxDevToolsInterop,
     IStore aStore)
 {
     Logger = aLogger;
     Logger.LogDebug($"{GetType().Name} constructor");
     Store = aStore;
     ReduxDevToolsInterop = aReduxDevToolsInterop;
 }
Example #3
0
 //TODO: This won't run as a PostProcessor for some reason MediatR never creates it.
 public Task Process(TRequest aRequest, TResponse response)
 {
     try
     {
         Logger.LogDebug($"{GetType().Name}: Start Post Processing");
         if (!(aRequest is IReduxRequest))
         {
             ReduxDevToolsInterop.Dispatch(aRequest, Store.GetSerializableState());
         }
         Logger.LogDebug($"{GetType().Name}: End");
     }
     catch (Exception e)
     {
         Logger.LogDebug($"{GetType().Name}: Error: {e.Message}");
         Logger.LogDebug($"{GetType().Name}: InnerException: {e.InnerException?.Message}");
         Logger.LogDebug($"{GetType().Name}: StackTrace: {e.StackTrace}");
         throw;
     }
     return(Task.CompletedTask);
 }