/** * @param \Psr\Http\Message\ServerRequestInterface $request * @param \OAuth2\Grant\GrantTypeResponseInterface $grant_type_response * * @throws \OAuth2\Exception\BaseExceptionInterface * * @return \OAuth2\Client\ClientInterface */ private function findClient(ServerRequestInterface $request, GrantTypeResponseInterface $grant_type_response) { if (null === $grant_type_response->getClientPublicId()) { $client = $this->getTokenEndpointAuthMethodManager()->findClient($request); } else { $client_public_id = $grant_type_response->getClientPublicId(); $client = $this->getClientManager()->getClient($client_public_id); } if (!$client instanceof ClientInterface) { throw $this->getTokenEndpointAuthMethodManager()->buildAuthenticationException($request); } return $client; }