/** * @param AuthenticationService $authService * @param SessionManager $sessionManager * @throws RuntimeException */ public function __construct(AuthenticationService $authService, SessionManager $sessionManager) { if (!$authService->getStorage() instanceof Session) { throw new RuntimeException(__CLASS__ . ' requires SessionStorage'); } $this->authService = $authService; $this->sessionManager = $sessionManager; $this->attachDefaultListener(); }