'Authentication', 'message' => 'You have successfully logged in to your account' ]; } /** @var AuthenticationProcessor */ private $authenticationProcessor; /** * AuthenticateUserLogic constructor. * @param AuthenticationProcessor $authenticationProcessor */ public function __construct(AuthenticationProcessor $authenticationProcessor) { $this->authenticationProcessor = $authenticationProcessor; } /** * @param Request $request * @return JsonResponse * @throws \App\Classes\Exceptions\AccessForbiddenException * @throws \App\Classes\Exceptions\AccessUnauthorisedException * @throws \App\Classes\Exceptions\InternalServerErrorException * @throws \App\Classes\Exceptions\RequestValidationException */ protected function logic(Request $request): JsonResponse { return $this->response($this->authenticationProcessor->execute($request)); } }