Refactored out claim check logic to its own class

This commit is contained in:
2024-03-14 14:03:27 +01:00
parent e61d0abb5d
commit d8ae8ade70
6 changed files with 71 additions and 26 deletions

View File

@ -21,13 +21,8 @@ class WsSubscriber implements SubscriberInterface, EventEmitterInterface
const EVENT_UNSUBSCRIBE = 'unsubscribe';
const EVENT_ERROR = 'error';
const STATE_UNAUTHORIZED = 0;
const STATE_AUTHORIZED = 1;
private string $id;
private int $state = self::STATE_UNAUTHORIZED;
public function __construct(
private WebSocketConnection $stream,
private ServerRequestInterface $request,
@ -73,6 +68,11 @@ class WsSubscriber implements SubscriberInterface, EventEmitterInterface
return $this->token && $this->token->isValid();
}
public function getMercureClaims(): ?array
{
return $this->request->getAttribute('mercure.claims');
}
public function getPayload(): array
{
return $this->request->getAttribute('mercure.payload')??[];