Add domain exception handling for authorization and data conflicts

This commit is contained in:
2026-10-21 01:27:52 +02:00
parent b9cd629766
commit 016dec74f9
3 changed files with 32 additions and 0 deletions

View File

@@ -1,6 +1,7 @@
namespace EnvelopeGenerator.Server.Middleware;
using DigitalData.Core.Exceptions;
using EnvelopeGenerator.Domain.Exceptions;
using Microsoft.AspNetCore.Http;
using Microsoft.Extensions.Logging;
using System.Net;
@@ -74,6 +75,16 @@ public class ExceptionHandlingMiddleware
message = forbiddenEx.Message;
break;
case AuthorizationException authorizationEx:
context.Response.StatusCode = (int)HttpStatusCode.Forbidden;
message = authorizationEx.Message;
break;
case DataIntegrityException dataIntegrityEx:
context.Response.StatusCode = (int)HttpStatusCode.Conflict;
message = dataIntegrityEx.Message;
break;
default:
logger.LogError(exception, "Unhandled exception occurred.");
context.Response.StatusCode = (int)HttpStatusCode.InternalServerError;