public AuthController(ILogger <AuthController> logger, IConfiguration config, ICommandDispatcher commandDispatcher, IFailureMessageService failureMessageService) { this.logger = logger; this.config = config; this.commandDispatcher = commandDispatcher; this.failureMessageService = failureMessageService; }
public static IActionResult HandleResult <TResult>(Result <TResult> result, IFailureMessageService failureMessageService) { switch (result) { case SuccessResult <TResult> successResult: return(new OkObjectResult(successResult.Value)); case FailureResult <TResult> failureResult: switch (failureResult.Code) { case FailureResultCode.Unauthorized: return(new UnauthorizedResult()); case FailureResultCode.Forbidden: return(new ForbidResult()); default: var message = failureMessageService.GetMessageFromResult(failureResult); return(new BadRequestObjectResult(message)); } default: throw new InvalidOperationException("internal server error"); } }
public OrderController(ILogger <OrderController> logger, IQueryDispatcher queryDispatcher, ICommandDispatcher commandDispatcher, IFailureMessageService failureMessageService) { this.logger = logger; this.queryDispatcher = queryDispatcher; this.commandDispatcher = commandDispatcher; this.failureMessageService = failureMessageService; }
public RestaurantSysAdminController(ILogger <RestaurantSysAdminController> logger, IUserRepository userRepository, ICommandDispatcher commandDispatcher, IQueryDispatcher queryDispatcher, IFailureMessageService failureMessageService) { this.logger = logger; this.userRepository = userRepository; this.commandDispatcher = commandDispatcher; this.queryDispatcher = queryDispatcher; this.failureMessageService = failureMessageService; }