Skip to content

Commit

Permalink
More logging
Browse files Browse the repository at this point in the history
  • Loading branch information
aritchie committed Sep 28, 2024
1 parent 8fa0c52 commit 08c547e
Show file tree
Hide file tree
Showing 6 changed files with 16 additions and 21 deletions.
10 changes: 5 additions & 5 deletions src/Shiny.Mediator/Impl/DefaultEventPublisher.cs
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@

namespace Shiny.Mediator.Impl;


public class DefaultEventPublisher(
IServiceProvider services,
ILogger<IEventPublisher> logger,
IEnumerable<IEventCollector> collectors
) : IEventPublisher
{
Expand Down Expand Up @@ -34,6 +34,7 @@ public async Task Publish<TEvent>(
if (handlers.Count == 0)
return;

var logger = services.GetRequiredService<ILogger<TEvent>>();
var middlewares = scope.ServiceProvider.GetServices<IEventMiddleware<TEvent>>().ToList();
var tasks = handlers
.Select(x => Execute(@event, x, logger, middlewares, cancellationToken))
Expand All @@ -56,17 +57,16 @@ public IDisposable Subscribe<TEvent>(Func<TEvent, CancellationToken, Task> actio
static async Task Execute<TEvent>(
TEvent @event,
IEventHandler<TEvent> eventHandler,
ILogger<IEventPublisher> logger,
ILogger logger,
IEnumerable<IEventMiddleware<TEvent>> middlewares,
CancellationToken cancellationToken
) where TEvent : IEvent
{
var handlerDelegate = new EventHandlerDelegate(() =>
{
logger.LogDebug(
"Executing Event Handler {HandlerType} for {EventType}",
eventHandler.GetType().FullName,
@event.GetType().FullName
"Executing Event Handler {HandlerType}",
eventHandler.GetType().FullName
);
return eventHandler.Handle(@event, cancellationToken);
});
Expand Down
5 changes: 2 additions & 3 deletions src/Shiny.Mediator/Impl/RequestExecutor.cs
Original file line number Diff line number Diff line change
Expand Up @@ -23,9 +23,8 @@ CancellationToken cancellationToken
(next, middleware) => () =>
{
logger.LogDebug(
"Executing request middleware {MiddlewareType} for {RequestType}",
middleware.GetType().FullName,
request.GetType().FullName
"Executing request middleware {MiddlewareType}",
middleware.GetType().FullName
);

return middleware.Process(
Expand Down
5 changes: 2 additions & 3 deletions src/Shiny.Mediator/Impl/RequestVoidWrapper.cs
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,8 @@ public async Task Handle(IServiceProvider services, TRequest request, Cancellati
var handlerExec = new RequestHandlerDelegate<Unit>(async () =>
{
logger.LogDebug(
"Executing request handler {RequestHandlerType} for {RequestType}",
requestHandler.GetType().FullName,
request.GetType().FullName
"Executing request handler {RequestHandlerType}",
requestHandler.GetType().FullName
);
await requestHandler.Handle(request, cancellationToken).ConfigureAwait(false);
return Unit.Value;
Expand Down
5 changes: 2 additions & 3 deletions src/Shiny.Mediator/Impl/RequestWrapper.cs
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,8 @@ public async Task<TResult> Handle(IServiceProvider services, TRequest request, C
var handlerExec = new RequestHandlerDelegate<TResult>(() =>
{
logger.LogDebug(
"Executing request handler {RequestHandlerType} for {RequestType}",
requestHandler.GetType().FullName,
request.GetType().FullName
"Executing request handler {RequestHandlerType}",
requestHandler.GetType().FullName
);
return requestHandler.Handle(request, cancellationToken);
});
Expand Down
11 changes: 4 additions & 7 deletions src/Shiny.Mediator/Impl/StreamRequestWrapper.cs
Original file line number Diff line number Diff line change
Expand Up @@ -16,25 +16,22 @@ public IAsyncEnumerable<TResult> Handle(IServiceProvider services, TRequest requ
var handlerExec = new StreamRequestHandlerDelegate<TResult>(() =>
{
logger.LogDebug(
"Executing streaming request handler {RequestHandlerType} for {RequestType}",
requestHandler.GetType().FullName,
request.GetType().FullName
"Executing streaming request handler {RequestHandlerType}",
requestHandler.GetType().FullName
);
return requestHandler.Handle(request, cancellationToken);
});

var middlewares = services.GetServices<IStreamRequestMiddleware<TRequest, TResult>>();

var enumerable = middlewares
.Reverse()
.Aggregate(
handlerExec,
(next, middleware) => () =>
{
logger.LogDebug(
"Executing stream middleware {MiddlewareType} for {RequestType}",
middleware.GetType().FullName,
request.GetType().FullName
"Executing stream middleware {MiddlewareType}",
middleware.GetType().FullName
);
return middleware.Process(
request,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ public OfflineAvailableRequestMiddlewareTests()
// this.config.AddConfiguration(new MemoryConfigurationProvider(new MemoryConfigurationSource().InitialData))

this.middleware = new OfflineAvailableRequestMiddleware<OfflineRequest, long>(
null,
this.connectivity,
this.storeMgr,
null
Expand Down

0 comments on commit 08c547e

Please sign in to comment.