identifier; } public function getTitle(): string { return $this->title; } public function getDescription(): string { return $this->description; } public function getIconIdentifier(): string { return $this->iconIdentifier; } public function getSetupInstructions(): string { return $this->setupInstructions; } public function isDefaultProviderAllowed(): bool { return $this->isDefaultProviderAllowed; } public function canProcess(ServerRequestInterface $request): bool { return $this->getInstance()->canProcess($request); } public function isActive(MfaProviderPropertyManager $propertyManager): bool { return $this->getInstance()->isActive($propertyManager); } public function isLocked(MfaProviderPropertyManager $propertyManager): bool { return $this->getInstance()->isLocked($propertyManager); } public function verify(ServerRequestInterface $request, MfaProviderPropertyManager $propertyManager): bool { return $this->getInstance()->verify($request, $propertyManager); } public function handleRequest( ServerRequestInterface $request, MfaProviderPropertyManager $propertyManager, MfaViewType $type ): ResponseInterface { return $this->getInstance()->handleRequest($request, $propertyManager, $type); } public function activate(ServerRequestInterface $request, MfaProviderPropertyManager $propertyManager): bool { return $this->getInstance()->activate($request, $propertyManager); } public function deactivate(ServerRequestInterface $request, MfaProviderPropertyManager $propertyManager): bool { return $this->getInstance()->deactivate($request, $propertyManager); } public function unlock(ServerRequestInterface $request, MfaProviderPropertyManager $propertyManager): bool { return $this->getInstance()->unlock($request, $propertyManager); } public function update(ServerRequestInterface $request, MfaProviderPropertyManager $propertyManager): bool { return $this->getInstance()->update($request, $propertyManager); } private function getInstance(): MfaProviderInterface { return $this->instance ?? $this->createInstance(); } private function createInstance(): MfaProviderInterface { $this->instance = $this->container->get($this->serviceName); return $this->instance; } }