diff --git a/src/Vulder.SharedKernel/BaseDomainEvent.cs b/src/Vulder.SharedKernel/BaseDomainEvent.cs deleted file mode 100755 index 884684f..0000000 --- a/src/Vulder.SharedKernel/BaseDomainEvent.cs +++ /dev/null @@ -1,9 +0,0 @@ -using System; -using MediatR; - -namespace Vulder.SharedKernel; - -public abstract class BaseDomainEvent : INotification -{ - public DateTime DateOccurred { get; protected set; } = DateTime.UtcNow; -} diff --git a/src/Vulder.SharedKernel/BaseEntity.cs b/src/Vulder.SharedKernel/BaseEntity.cs old mode 100755 new mode 100644 index 7b5bde0..c04c01a --- a/src/Vulder.SharedKernel/BaseEntity.cs +++ b/src/Vulder.SharedKernel/BaseEntity.cs @@ -14,8 +14,4 @@ public abstract class BaseEntity [BsonRequired] [BsonRepresentation(BsonType.String)] public Guid Id { get; set; } - - [NotMapped] - [BsonIgnore] - public List Events { get; set; } = new(); } diff --git a/src/Vulder.SharedKernel/Exceptions/AuthException.cs b/src/Vulder.SharedKernel/Exceptions/AuthException.cs index 9bf5865..18fc039 100644 --- a/src/Vulder.SharedKernel/Exceptions/AuthException.cs +++ b/src/Vulder.SharedKernel/Exceptions/AuthException.cs @@ -1,18 +1,12 @@ -using System; +using System.Net; namespace Vulder.SharedKernel.Exceptions; -public class AuthException : Exception +public class AuthException : VulderBaseException { - public AuthException() : base() - { - } - - public AuthException(string message) : base(message) - { - } - - public AuthException(string message, Exception innerException) : base(message, innerException) + public override HttpStatusCode StatusCode => HttpStatusCode.Unauthorized; + + public AuthException(string message = "Unable to authorize user") : base(message) { } } \ No newline at end of file diff --git a/src/Vulder.SharedKernel/Exceptions/VulderBaseException.cs b/src/Vulder.SharedKernel/Exceptions/VulderBaseException.cs new file mode 100644 index 0000000..912a0e6 --- /dev/null +++ b/src/Vulder.SharedKernel/Exceptions/VulderBaseException.cs @@ -0,0 +1,13 @@ +using System; +using System.Net; + +namespace Vulder.SharedKernel.Exceptions; + +public abstract class VulderBaseException : Exception +{ + public abstract HttpStatusCode StatusCode { get; } + + protected VulderBaseException(string message) : base(message) + { + } +} \ No newline at end of file diff --git a/src/Vulder.SharedKernel/Middlewares/ControllerActionLoggingMiddleware.cs b/src/Vulder.SharedKernel/Middlewares/ControllerActionLoggingMiddleware.cs old mode 100755 new mode 100644 diff --git a/src/Vulder.SharedKernel/Middlewares/GlobalExceptionHandlerMiddleware.cs b/src/Vulder.SharedKernel/Middlewares/GlobalExceptionHandlerMiddleware.cs index ea3cf99..f4c0123 100644 --- a/src/Vulder.SharedKernel/Middlewares/GlobalExceptionHandlerMiddleware.cs +++ b/src/Vulder.SharedKernel/Middlewares/GlobalExceptionHandlerMiddleware.cs @@ -26,17 +26,17 @@ public async Task Invoke(HttpContext context) { await _next.Invoke(context); } - catch (Exception e) + catch (VulderBaseException e) { LogException(e); var response = context.Response; response.ContentType = "application/json"; - response.StatusCode = GetStatusCode(e); + response.StatusCode = (int)e.StatusCode; var responseBody = new ExceptionModel { - StatusCode = response.StatusCode, + StatusCode = (int)e.StatusCode, ErrorMessage = e.Message }; @@ -45,14 +45,5 @@ public async Task Invoke(HttpContext context) } private void LogException(Exception exception) - => _logger.LogError(22, exception, "An error was thrown"); - - private static int GetStatusCode(Exception exception) - { - return exception switch - { - AuthException => (int)HttpStatusCode.Unauthorized, - _ => (int)HttpStatusCode.InternalServerError - }; - } + => _logger.LogError(22, exception, "An exception was thrown"); } \ No newline at end of file diff --git a/src/Vulder.SharedKernel/Vulder.SharedKernel.csproj b/src/Vulder.SharedKernel/Vulder.SharedKernel.csproj old mode 100755 new mode 100644 index 6291c95..95cf5dd --- a/src/Vulder.SharedKernel/Vulder.SharedKernel.csproj +++ b/src/Vulder.SharedKernel/Vulder.SharedKernel.csproj @@ -16,7 +16,7 @@ net6.0 - 0.1.10 + 0.1.11 Vulder.SharedKernel MRmlik12 VulderApp