diff --git a/.gitattributes b/.gitattributes index edc3960..f0e8be5 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,11 +1,25 @@ +/.github export-ignore +/build export-ignore +/docker export-ignore +/docs export-ignore +/features export-ignore /spec export-ignore -/docs/ export-ignore -/tests/ export-ignore -.github/ export-ignore -.editorconfig export-ignore -.gitattributes export-ignore -.gitignore export-ignore -.scrutinizer.yml export-ignore -infection.json.dist export-ignore -grumphp.yml.dist export-ignore -phpspec.yml.dist export-ignore +/src/Tests export-ignore +/tests export-ignore +/.auto-changelog export-ignore +/.editorconfig export-ignore +/.gitattributes export-ignore +/.gitignore export-ignore +/.scrutinizer.yml export-ignore +/behat.yaml export-ignore +/behat.yaml.dist export-ignore +/docker-compose.yaml export-ignore +/grumphp.yml export-ignore +/grumphp.yml.dist export-ignore +/infection.json export-ignore +/infection.json.dist export-ignore +/phpspec.yml export-ignore +/phpspec.yml.dist export-ignore +/phpstan.neon export-ignore +/phpstan.neon.dist export-ignore +/psalm.xml export-ignore diff --git a/.github/workflows/continuous-integration.yml b/.github/workflows/continuous-integration.yml index 05135b1..9db2075 100644 --- a/.github/workflows/continuous-integration.yml +++ b/.github/workflows/continuous-integration.yml @@ -13,8 +13,8 @@ jobs: strategy: fail-fast: false matrix: - operating-system: [ubuntu-latest, windows-latest, macOS-latest] - php-versions: ['7.1', '7.2', '7.3', '7.4'] + operating-system: [ubuntu-latest, windows-latest] + php-versions: ['7.4'] steps: - name: Set git to use LF diff --git a/.gitignore b/.gitignore index 3d910cb..069c7dd 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,4 @@ composer.lock grumphp.yml phpspec.yml /build/ +.php_cs.cache diff --git a/LICENSE b/LICENSE index bb9ba02..6692205 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ BSD 3-Clause License -Copyright (c) 2020, ECPHP +Copyright (c) 2019-2021, ECPHP. All rights reserved. Redistribution and use in source and binary forms, with or without diff --git a/composer.json b/composer.json index 5106149..8acc006 100644 --- a/composer.json +++ b/composer.json @@ -1,58 +1,60 @@ { - "name": "ecphp/cas-lib", - "type": "library", - "description": "CAS Lib, a standard library for CAS authentication.", - "keywords": [ - "authentication", - "cas", - "psr", - "single-sign-on" - ], - "license": "BSD-3-Clause", - "require": { - "php": ">= 7.1.3", - "ext-dom": "*", - "ext-json": "*", - "ext-libxml": "*", - "ext-simplexml": "*", - "league/uri-query-parser": "^1.0", - "openlss/lib-array2xml": "^1.0", - "psr/cache": "^1.0.1", - "psr/http-client": "^1.0.0", - "psr/http-factory": "^1.0.1", - "psr/http-message": "^1.0.1", - "psr/log": "^1.1.1 || ^1.1.0" - }, - "require-dev": { - "drupol/php-conventions": "^1.7.2 || ^1.8.6", - "friends-of-phpspec/phpspec-code-coverage": "^4.3.2", - "infection/infection": "^0.12.2 || ^0.13.6 || ^0.14.4 || ^0.15.3", - "monolog/monolog": "^1.0", - "nyholm/psr7": "^1.2.1", - "nyholm/psr7-server": "^0.4.1 || ^1.0.0", - "phpspec/phpspec": "^5.1.2 || ^6.2.1", - "phpspec/prophecy": "^1.10.1", - "phpstan/phpstan-strict-rules": "^0.12", - "symfony/cache": "^4.3.9 || ^4.4.2", - "symfony/http-client": "^4.4.2", - "vimeo/psalm": "^3.12 || ^4.0" - }, - "autoload": { - "psr-4": { - "EcPhp\\CasLib\\": "./src/" + "name": "ecphp/cas-lib", + "type": "library", + "description": "CAS Lib, a standard library for CAS authentication.", + "keywords": [ + "authentication", + "cas", + "psr", + "single-sign-on" + ], + "license": "BSD-3-Clause", + "require": { + "php": ">= 7.4", + "ext-dom": "*", + "ext-json": "*", + "ext-libxml": "*", + "ext-simplexml": "*", + "league/uri-query-parser": "^1.0", + "openlss/lib-array2xml": "^1.0", + "psr/cache": "^1.0.1", + "psr/http-client": "^1.0", + "psr/http-client-implementation": "^1", + "psr/http-factory": "^1.0.1", + "psr/http-factory-implementation": "^1", + "psr/http-message": "^1.0", + "psr/http-message-implementation": "^1", + "psr/log": "^1.1" + }, + "require-dev": { + "ecphp/php-conventions": "^1", + "friends-of-phpspec/phpspec-code-coverage": "^6.0.0", + "infection/infection": "^0.23", + "infection/phpspec-adapter": "^0.1.2", + "monolog/monolog": "^1.0", + "nyholm/psr7": "^1.4", + "nyholm/psr7-server": "^1.0.0", + "phpspec/phpspec": "^7", + "phpstan/phpstan-strict-rules": "^0.12", + "symfony/cache": "^5.2", + "symfony/http-client": "^5.2" + }, + "autoload": { + "psr-4": { + "EcPhp\\CasLib\\": "./src/" + } + }, + "autoload-dev": { + "psr-4": { + "spec\\EcPhp\\CasLib\\": "./spec/EcPhp/CasLib/", + "tests\\EcPhp\\CasLib\\": "./tests/" + } + }, + "scripts": { + "changelog-unreleased": "docker-compose run auto_changelog -c .auto-changelog -u", + "changelog-version": "docker-compose run auto_changelog -c .auto-changelog -v", + "grumphp": "./vendor/bin/grumphp run", + "phpinsights": "./vendor/bin/phpinsights analyse src/", + "phpspec": "./vendor/bin/phpspec run" } - }, - "autoload-dev": { - "psr-4": { - "spec\\EcPhp\\CasLib\\": "./spec/EcPhp/CasLib/", - "tests\\EcPhp\\CasLib\\": "./tests/" - } - }, - "scripts": { - "changelog-unreleased": "docker-compose run auto_changelog -c .auto-changelog -u", - "changelog-version": "docker-compose run auto_changelog -c .auto-changelog -v", - "grumphp": "./vendor/bin/grumphp run", - "phpinsights": "./vendor/bin/phpinsights analyse src/", - "phpspec": "./vendor/bin/phpspec run" - } } diff --git a/grumphp.yml.dist b/grumphp.yml.dist index f7aee84..c29dfa5 100644 --- a/grumphp.yml.dist +++ b/grumphp.yml.dist @@ -1,5 +1,5 @@ imports: - - { resource: vendor/drupol/php-conventions/config/php71/grumphp.yml } + - { resource: vendor/ecphp/php-conventions/config/php73/grumphp.yml } parameters: extra_tasks: diff --git a/spec/EcPhp/CasLib/Cas.php b/spec/EcPhp/CasLib/Cas.php index 1c9eae3..78e4074 100644 --- a/spec/EcPhp/CasLib/Cas.php +++ b/spec/EcPhp/CasLib/Cas.php @@ -1,5 +1,12 @@ - - username - - -EOF; + + + username + + + EOF; break; + case 'http://local/cas/serviceValidate?service=service&ticket=ticket-failure': $body = <<< 'EOF' - - - - -EOF; + + + + + EOF; break; + case 'http://local/cas/proxyValidate?service=service&ticket=ticket': case 'http://local/cas/proxyValidate?ticket=PT-ticket&service=http%3A%2F%2Ffrom': case 'http://local/cas/proxyValidate?ticket=ST-ticket&service=http%3A%2F%2Ffrom': @@ -50,105 +59,113 @@ public static function getHttpClientMock() case 'http://local/cas/proxyValidate?service=http%3A%2F%2Flocal%2Fcas%2FserviceValidate%3Fservice%3Dservice&ticket=ticket': case 'http://local/cas/proxyValidate?service=http%3A%2F%2Flocal%2Fcas%2FserviceValidate%3Fservice%3Dservice%26renew%3Dtrue&ticket=ticket&renew=true': $body = <<< 'EOF' - - - username - - http://app/proxyCallback.php - - - -EOF; + + + username + + http://app/proxyCallback.php + + + + EOF; break; + case 'http://local/cas/serviceValidate?ticket=ST-ticket-pgt&service=http%3A%2F%2Ffrom': $body = <<< 'EOF' - - - username - pgtIou - - -EOF; + + + username + pgtIou + + + EOF; break; + case 'http://local/cas/serviceValidate?ticket=ST-ticket-pgt-pgtiou-not-found&service=http%3A%2F%2Ffrom': $body = <<< 'EOF' - - - username - unknownPgtIou - - -EOF; + + + username + unknownPgtIou + + + EOF; break; + case 'http://local/cas/proxyValidate?ticket=ST-ticket-pgt-pgtiou-pgtid-null&service=http%3A%2F%2Ffrom': $body = <<< 'EOF' - - - username - pgtIouWithPgtIdNull - - -EOF; + + + username + pgtIouWithPgtIdNull + + + EOF; break; + case 'http://local/cas/proxyValidate?service=service&ticket=ST-ticket-pgt': case 'http://local/cas/proxyValidate?ticket=ST-ticket-pgt&service=http%3A%2F%2Ffrom': case 'http://local/cas/proxyValidate?service=http%3A%2F%2Ffrom&ticket=PT-ticket': case 'http://local/cas/proxyValidate?service=http%3A%2F%2Flocal%2Fcas%2FproxyValidate%3Fservice%3Dhttp%253A%252F%252Ffrom&ticket=PT-ticket-pgt': $body = <<< 'EOF' - - - username - pgtIou - - http://app/proxyCallback.php - - - -EOF; + + + username + pgtIou + + http://app/proxyCallback.php + + + + EOF; break; + case 'http://local/cas/serviceValidate?service=http%3A%2F%2Flocal%2Fcas%2FserviceValidate%3Fservice%3Dservice%26format%3DJSON&ticket=ticket&format=JSON': $body = <<< 'EOF' -{ - "serviceResponse": { - "authenticationSuccess": { - "user": "username" - } - } -} -EOF; + { + "serviceResponse": { + "authenticationSuccess": { + "user": "username" + } + } + } + EOF; break; + case 'http://local/cas/proxy?targetService=targetService&pgt=pgt': $body = <<< 'EOF' - - - - PT-214-A3OoEPNr4Q9kNNuYzmfN8azU31aDUsuW8nk380k7wDExT5PFJpxR1TrNI3q3VGzyDdi0DpZ1LKb8IhPKZKQvavW-8hnfexYjmLCx7qWNsLib1W-DCzzoLVTosAUFzP3XDn5dNzoNtxIXV9KSztF9fYhwHvU0 - - -EOF; + + + + PT-214-A3OoEPNr4Q9kNNuYzmfN8azU31aDUsuW8nk380k7wDExT5PFJpxR1TrNI3q3VGzyDdi0DpZ1LKb8IhPKZKQvavW-8hnfexYjmLCx7qWNsLib1W-DCzzoLVTosAUFzP3XDn5dNzoNtxIXV9KSztF9fYhwHvU0 + + + EOF; break; + case 'http://local/cas/proxy?targetService=targetService&pgt=pgt-error-in-getCredentials': $body = <<< 'EOF' - - - - TODO: Find something to put here. - - -EOF; + + + + TODO: Find something to put here. + + + EOF; break; + case 'http://local/cas/serviceValidate?service=http%3A%2F%2Ffrom&ticket=BAD-http-query': case 'http://local/cas/proxyValidate?service=http%3A%2F%2Ffrom&ticket=BAD-http-query': case 'http://local/cas/proxyValidate?service=http%3A%2F%2Flocal%2Fcas%2FproxyValidate%3Fservice%3Dservice%26error%3DTestClientException&ticket=ticket&error=TestClientException': diff --git a/spec/EcPhp/CasLib/CasSpec.php b/spec/EcPhp/CasLib/CasSpec.php index ade1026..ac2c29c 100644 --- a/spec/EcPhp/CasLib/CasSpec.php +++ b/spec/EcPhp/CasLib/CasSpec.php @@ -1,5 +1,12 @@ - - username - - -EOF; + + + username + + + EOF; $headers = [ 'Content-Type' => 'application/xml', @@ -517,12 +524,12 @@ public function it_can_detect_the_type_of_a_response(CacheItemPoolInterface $cac ->shouldReturnAnInstanceOf(ServiceValidate::class); $body = <<< 'EOF' - - - username - - -EOF; + + + username + + + EOF; $headers = [ 'Content-Type' => 'application/foo', diff --git a/spec/EcPhp/CasLib/Configuration/PropertiesSpec.php b/spec/EcPhp/CasLib/Configuration/PropertiesSpec.php index c44a5a2..ce8f491 100644 --- a/spec/EcPhp/CasLib/Configuration/PropertiesSpec.php +++ b/spec/EcPhp/CasLib/Configuration/PropertiesSpec.php @@ -1,5 +1,12 @@ - - unrecognized pgt: 'PGT-123' - - -EOF; + + + unrecognized pgt: 'PGT-123' + + + EOF; $response = (new Response(200)) ->withHeader('Content-Type', 'application/xml') @@ -41,15 +48,15 @@ public function it_can_detect_a_proxy_response() $psr17Factory = new Psr17Factory(); $body = <<< 'EOF' - - - - PT-214-A3OoEPNr4Q9kNNuYzmfN8azU31aDUsuW8nk380k7wDExT5PFJpxR1TrNI3q3VGzyDdi0DpZ1LKb8IhPKZKQvavW-8hnfexYjmLCx7qWNsLib1W-DCzzoLVTosAUFzP3XDn5dNzoNtxIXV9KSztF9fYhwHvU0 - - -EOF; + + + + PT-214-A3OoEPNr4Q9kNNuYzmfN8azU31aDUsuW8nk380k7wDExT5PFJpxR1TrNI3q3VGzyDdi0DpZ1LKb8IhPKZKQvavW-8hnfexYjmLCx7qWNsLib1W-DCzzoLVTosAUFzP3XDn5dNzoNtxIXV9KSztF9fYhwHvU0 + + + EOF; $response = (new Response(200)) ->withHeader('Content-Type', 'application/xml') @@ -64,13 +71,13 @@ public function it_can_detect_a_service_validate_response() $psr17Factory = new Psr17Factory(); $body = <<< 'EOF' - - - username - false - - -EOF; + + + username + false + + + EOF; $response = (new Response(200)) ->withHeader('Content-Type', 'application/xml') @@ -80,14 +87,14 @@ public function it_can_detect_a_service_validate_response() ->shouldBeAnInstanceOf(ServiceValidate::class); $body = <<< 'EOF' -{ - "serviceResponse": { - "authenticationSuccess": { - "user": "username" - } - } -} -EOF; + { + "serviceResponse": { + "authenticationSuccess": { + "user": "username" + } + } + } + EOF; $response = (new Response(200)) ->withHeader('Content-Type', 'application/json') @@ -102,16 +109,16 @@ public function it_can_detect_a_service_validate_response_with_proxy() $psr17Factory = new Psr17Factory(); $body = <<< 'EOF' - - - user - proxyGrantingTicket - - https://ecasclient/proxyCallback.php - - - -EOF; + + + user + proxyGrantingTicket + + https://ecasclient/proxyCallback.php + + + + EOF; $response = (new Response(200)) ->withHeader('Content-Type', 'application/xml') @@ -126,8 +133,8 @@ public function it_can_detect_a_wrong_response() $psr17Factory = new Psr17Factory(); $body = <<< 'EOF' -FOO -EOF; + FOO + EOF; $response = (new Response(200)) ->withHeader('Content-Type', 'application/json') @@ -138,8 +145,8 @@ public function it_can_detect_a_wrong_response() ->during('detect', [$response]); $body = <<< 'EOF' -FOO -EOF; + FOO + EOF; $response = (new Response(200)) ->withHeader('Content-Type', 'application/xml') @@ -155,12 +162,12 @@ public function it_can_detect_an_authentication_failure_response() $psr17Factory = new Psr17Factory(); $body = <<<'EOF' - - - Ticket ST-1856339-aA5Yuvrxzpv8Tau1cYQ7 not recognized - - -EOF; + + + Ticket ST-1856339-aA5Yuvrxzpv8Tau1cYQ7 not recognized + + + EOF; $response = (new Response(200)) ->withHeader('Content-Type', 'application/xml') @@ -175,14 +182,14 @@ public function it_can_detect_an_unknown_type_of_response() $psr17Factory = new Psr17Factory(); $body = <<< 'EOF' -{ - "foo": { - "bar": { - "user": "username" - } - } -} -EOF; + { + "foo": { + "bar": { + "user": "username" + } + } + } + EOF; $response = (new Response(200)) ->withHeader('Content-Type', 'application/json') @@ -198,8 +205,8 @@ public function it_can_detect_an_unsupported_parse_format() $psr17Factory = new Psr17Factory(); $body = <<< 'EOF' -FOO -EOF; + FOO + EOF; $response = (new Response(200)) ->withHeader('Content-Type', 'application/json') diff --git a/spec/EcPhp/CasLib/Introspection/ProxyFailureSpec.php b/spec/EcPhp/CasLib/Introspection/ProxyFailureSpec.php index 1ddc6b7..cf4c81f 100644 --- a/spec/EcPhp/CasLib/Introspection/ProxyFailureSpec.php +++ b/spec/EcPhp/CasLib/Introspection/ProxyFailureSpec.php @@ -1,5 +1,12 @@ - - - PT-214-A3OoEPNr4Q9kNNuYzmfN8azU31aDUsuW8nk380k7wDExT5PFJpxR1TrNI3q3VGzyDdi0DpZ1LKb8IhPKZKQvavW-8hnfexYjmLCx7qWNsLib1W-DCzzoLVTosAUFzP3XDn5dNzoNtxIXV9KSztF9fYhwHvU0 - - -EOF; + + + + PT-214-A3OoEPNr4Q9kNNuYzmfN8azU31aDUsuW8nk380k7wDExT5PFJpxR1TrNI3q3VGzyDdi0DpZ1LKb8IhPKZKQvavW-8hnfexYjmLCx7qWNsLib1W-DCzzoLVTosAUFzP3XDn5dNzoNtxIXV9KSztF9fYhwHvU0 + + + EOF; $response = (new Response(200)) ->withHeader('Content-Type', 'application/xml') diff --git a/spec/EcPhp/CasLib/Introspection/ServiceValidateSpec.php b/spec/EcPhp/CasLib/Introspection/ServiceValidateSpec.php index 2eb8e70..7d1a34e 100644 --- a/spec/EcPhp/CasLib/Introspection/ServiceValidateSpec.php +++ b/spec/EcPhp/CasLib/Introspection/ServiceValidateSpec.php @@ -1,5 +1,12 @@ withHeader('Content-Type', 'application/xml') @@ -87,13 +94,13 @@ public function it_can_detect_a_service_validate_response() $psr17Factory = new Psr17Factory(); $body = <<< 'EOF' - - - user - proxyGrantingTicket - - -EOF; + + + user + proxyGrantingTicket + + + EOF; $response = (new Response(200)) ->withHeader('Content-Type', 'application/xml') diff --git a/spec/EcPhp/CasLib/Redirect/LoginSpec.php b/spec/EcPhp/CasLib/Redirect/LoginSpec.php index 2d5ee45..49dced7 100644 --- a/spec/EcPhp/CasLib/Redirect/LoginSpec.php +++ b/spec/EcPhp/CasLib/Redirect/LoginSpec.php @@ -1,5 +1,12 @@ - - username - pgtIou - - http://app/proxyCallback.php - - - -EOF; + + + username + pgtIou + + http://app/proxyCallback.php + + + + EOF; $response = new Response(200, ['Content-Type' => 'application/xml'], $body); diff --git a/spec/EcPhp/CasLib/Service/ProxyValidateSpec.php b/spec/EcPhp/CasLib/Service/ProxyValidateSpec.php index 16ecc91..db78fdb 100644 --- a/spec/EcPhp/CasLib/Service/ProxyValidateSpec.php +++ b/spec/EcPhp/CasLib/Service/ProxyValidateSpec.php @@ -1,5 +1,12 @@ introspector = $introspector; } - /** - * {@inheritdoc} - */ public function authenticate(array $parameters = []): ?array { if (null === $response = $this->requestTicketValidation($parameters)) { @@ -141,17 +145,11 @@ public function detect(ResponseInterface $response): IntrospectionInterface return $this->getIntrospector()->detect($response); } - /** - * {@inheritdoc} - */ public function getProperties(): PropertiesInterface { return $this->properties; } - /** - * {@inheritdoc} - */ public function handleProxyCallback( array $parameters = [], ?ResponseInterface $response = null @@ -170,9 +168,6 @@ public function handleProxyCallback( return $response ?? $proxyCallback->handle(); } - /** - * {@inheritdoc} - */ public function login(array $parameters = []): ?ResponseInterface { $login = new Login( @@ -189,9 +184,6 @@ public function login(array $parameters = []): ?ResponseInterface return $login->handle(); } - /** - * {@inheritdoc} - */ public function logout(array $parameters = []): ?ResponseInterface { $logout = new Logout( @@ -208,9 +200,6 @@ public function logout(array $parameters = []): ?ResponseInterface return $logout->handle(); } - /** - * {@inheritdoc} - */ public function requestProxyTicket(array $parameters = [], ?ResponseInterface $response = null): ?ResponseInterface { $proxyRequestService = new Proxy( @@ -248,9 +237,6 @@ public function requestProxyTicket(array $parameters = [], ?ResponseInterface $r return $credentials; } - /** - * {@inheritdoc} - */ public function requestProxyValidate( array $parameters = [], ?ResponseInterface $response = null @@ -290,9 +276,6 @@ public function requestProxyValidate( return $credentials; } - /** - * {@inheritdoc} - */ public function requestServiceValidate( array $parameters = [], ?ResponseInterface $response = null @@ -332,9 +315,6 @@ public function requestServiceValidate( return $credentials; } - /** - * {@inheritdoc} - */ public function requestTicketValidation( array $parameters = [], ?ResponseInterface $response = null @@ -357,17 +337,11 @@ public function requestTicketValidation( $this->requestServiceValidate($parameters, $response); } - /** - * {@inheritdoc} - */ public function supportAuthentication(array $parameters = []): bool { return array_key_exists('ticket', $parameters) || Uri::hasParams($this->getServerRequest()->getUri(), 'ticket'); } - /** - * {@inheritdoc} - */ public function withServerRequest(ServerRequestInterface $serverRequest): CasInterface { $clone = clone $this; diff --git a/src/CasInterface.php b/src/CasInterface.php index 336a654..09a2128 100644 --- a/src/CasInterface.php +++ b/src/CasInterface.php @@ -1,5 +1,12 @@ properties; diff --git a/src/Configuration/PropertiesInterface.php b/src/Configuration/PropertiesInterface.php index 9ce544e..5008424 100644 --- a/src/Configuration/PropertiesInterface.php +++ b/src/Configuration/PropertiesInterface.php @@ -1,5 +1,12 @@ getServerRequest(); diff --git a/src/Introspection/AuthenticationFailure.php b/src/Introspection/AuthenticationFailure.php index 5194c0e..9c0743e 100644 --- a/src/Introspection/AuthenticationFailure.php +++ b/src/Introspection/AuthenticationFailure.php @@ -1,5 +1,12 @@ getParsedResponse()['serviceResponse']['proxySuccess']['proxyTicket']; diff --git a/src/Introspection/ProxyFailure.php b/src/Introspection/ProxyFailure.php index 7a3c4d9..3fac641 100644 --- a/src/Introspection/ProxyFailure.php +++ b/src/Introspection/ProxyFailure.php @@ -1,5 +1,12 @@ formatProtocolParameters($this->getParameters()); @@ -40,9 +44,6 @@ public function handle(): ?ResponseInterface return $this->createRedirectResponse((string) $this->getUri($validatedParameters)); } - /** - * {@inheritdoc} - */ protected function formatProtocolParameters(array $parameters): array { $parameters = parent::formatProtocolParameters($parameters); @@ -58,9 +59,6 @@ protected function formatProtocolParameters(array $parameters): array return $parameters; } - /** - * {@inheritdoc} - */ protected function getProtocolProperties(): array { $protocolProperties = $this->getProperties()['protocol']['login'] ?? []; diff --git a/src/Redirect/Logout.php b/src/Redirect/Logout.php index acf3507..28d9b6f 100644 --- a/src/Redirect/Logout.php +++ b/src/Redirect/Logout.php @@ -1,5 +1,12 @@ createRedirectResponse((string) $this->getUri()); } - /** - * {@inheritdoc} - */ protected function getProtocolProperties(): array { return $this->getProperties()['protocol']['logout'] ?? []; } - /** - * {@inheritdoc} - */ private function getUri(): UriInterface { $serverRequest = $this->getServerRequest()->getUri(); diff --git a/src/Redirect/Redirect.php b/src/Redirect/Redirect.php index b4eb24d..b8809e5 100644 --- a/src/Redirect/Redirect.php +++ b/src/Redirect/Redirect.php @@ -1,5 +1,12 @@ getProperties()['protocol']['proxy'] ?? []; } - /** - * {@inheritdoc} - */ protected function getUri(): UriInterface { return $this->buildUri( diff --git a/src/Service/ProxyValidate.php b/src/Service/ProxyValidate.php index 266276b..082a286 100644 --- a/src/Service/ProxyValidate.php +++ b/src/Service/ProxyValidate.php @@ -1,5 +1,12 @@ getProperties()['protocol']['proxyValidate'] ?? []; @@ -27,9 +31,6 @@ protected function getProtocolProperties(): array return $protocolProperties; } - /** - * {@inheritdoc} - */ protected function getUri(): UriInterface { return $this->buildUri( diff --git a/src/Service/Service.php b/src/Service/Service.php index 505c21c..a3543f5 100644 --- a/src/Service/Service.php +++ b/src/Service/Service.php @@ -1,5 +1,12 @@ introspector = $introspector; } - /** - * {@inheritdoc} - */ public function getCredentials(ResponseInterface $response): ?ResponseInterface { try { @@ -135,9 +139,6 @@ public function getCredentials(ResponseInterface $response): ?ResponseInterface ->withHeader('Content-Type', 'application/json'); } - /** - * {@inheritdoc} - */ public function handle(): ?ResponseInterface { try { diff --git a/src/Service/ServiceInterface.php b/src/Service/ServiceInterface.php index cd55988..3e51e85 100644 --- a/src/Service/ServiceInterface.php +++ b/src/Service/ServiceInterface.php @@ -1,5 +1,12 @@ getProperties()['protocol']['serviceValidate'] ?? []; @@ -27,9 +31,6 @@ protected function getProtocolProperties(): array return $protocolProperties; } - /** - * {@inheritdoc} - */ protected function getUri(): UriInterface { return $this->buildUri( diff --git a/src/Utils/Uri.php b/src/Utils/Uri.php index 9f2926c..8fb7c8f 100644 --- a/src/Utils/Uri.php +++ b/src/Utils/Uri.php @@ -1,5 +1,12 @@ getProperties()['protocol']['proxyValidate'] ?? [];