userService->loadUserByLogin($userLogin); $this->permissionResolver->setCurrentUserReference($user); } catch (NotFoundException $e) { throw new InvalidUserAccountException( sprintf( 'Could not find the required user account to be used for logging in: "%s". UserService says: %s', $userLogin, $e->getMessage() ), $e->getCode(), $e ); } } protected function authenticateUserByReference(UserReference $userReference): void { $this->permissionResolver->setCurrentUserReference($userReference); } protected function getCurrentUser(): UserReference { return $this->permissionResolver->getCurrentUserReference(); } public function setPermissionResolver(PermissionResolver $permissionResolver): void { $this->permissionResolver = $permissionResolver; } public function setUserService(UserService $userService): void { $this->userService = $userService; } }