From a00788746159f42258707284291cca9efbdaa36d Mon Sep 17 00:00:00 2001 From: Marc Denman Date: Tue, 14 Mar 2017 09:45:07 +0000 Subject: [PATCH] Add MiddelwareName into base OcelotMiddleware Following TomPallister suggestion, it makes sense to call GetType only once and in the constructor (middlewares are only instantiated once). I have also taken the oppturniuty to add it as a property on the base middleware allowing any other middleware to utlise it as well. --- src/Ocelot/Middleware/OcelotMiddleware.cs | 3 +++ src/Ocelot/Responder/Middleware/ResponderMiddleware.cs | 10 +++++----- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/src/Ocelot/Middleware/OcelotMiddleware.cs b/src/Ocelot/Middleware/OcelotMiddleware.cs index b8937108..2926e543 100644 --- a/src/Ocelot/Middleware/OcelotMiddleware.cs +++ b/src/Ocelot/Middleware/OcelotMiddleware.cs @@ -14,8 +14,11 @@ namespace Ocelot.Middleware protected OcelotMiddleware(IRequestScopedDataRepository requestScopedDataRepository) { _requestScopedDataRepository = requestScopedDataRepository; + MiddlwareName = this.GetType().Name; } + public string MiddlwareName { get; } + public bool PipelineError { get diff --git a/src/Ocelot/Responder/Middleware/ResponderMiddleware.cs b/src/Ocelot/Responder/Middleware/ResponderMiddleware.cs index 10a10c66..1605fb06 100644 --- a/src/Ocelot/Responder/Middleware/ResponderMiddleware.cs +++ b/src/Ocelot/Responder/Middleware/ResponderMiddleware.cs @@ -34,17 +34,17 @@ namespace Ocelot.Responder.Middleware public async Task Invoke(HttpContext context) { - _logger.LogDebug($"entered {this.GetType().Name}"); - _logger.LogDebug($"invoking next middleware from {this.GetType().Name}"); + _logger.LogDebug($"entered {MiddlwareName}"); + _logger.LogDebug($"invoking next middleware from {MiddlwareName}"); await _next.Invoke(context); - _logger.LogDebug($"returned to {this.GetType().Name} after next middleware completed"); + _logger.LogDebug($"returned to {MiddlwareName} after next middleware completed"); if (PipelineError) { var errors = PipelineErrors; - _logger.LogDebug($"{errors.Count} pipeline errors found in {this.GetType().Name}. Setting error response status code"); + _logger.LogDebug($"{errors.Count} pipeline errors found in {MiddlwareName}. Setting error response status code"); SetErrorResponse(context, errors); } @@ -53,7 +53,7 @@ namespace Ocelot.Responder.Middleware _logger.LogDebug("no pipeline errors, setting and returning completed response"); await _responder.SetResponseOnHttpContext(context, HttpResponseMessage); } - _logger.LogDebug($"completed {this.GetType().Name}"); + _logger.LogDebug($"completed {MiddlwareName}"); } private void SetErrorResponse(HttpContext context, List errors)