Skip to content
This repository has been archived by the owner on Mar 1, 2023. It is now read-only.

Commit

Permalink
adding psr-15 (#399)
Browse files Browse the repository at this point in the history
* adding psr-15

* added psr-15

* Applied fixes from StyleCI

* fixed wrong interface

* Applied fixes from StyleCI

* Added trait | fixes #401

* Applied fixes from StyleCI
  • Loading branch information
prisis committed Oct 13, 2016
1 parent 3c6781a commit 64b0edc
Show file tree
Hide file tree
Showing 29 changed files with 273 additions and 348 deletions.
1 change: 1 addition & 0 deletions composer.json
Expand Up @@ -42,6 +42,7 @@
"egulias/email-validator" : "^2.1",
"filp/whoops" : "^2.0",
"http-interop/http-factory" : "dev-master",
"http-interop/http-middleware" : "^0.2",
"league/flysystem" : "^1.0.27",
"monolog/monolog" : "^1.17",
"narrowspark/arr" : "^2.1",
Expand Down
25 changes: 0 additions & 25 deletions src/Viserio/Contracts/Middleware/ClientMiddleware.php

This file was deleted.

18 changes: 0 additions & 18 deletions src/Viserio/Contracts/Middleware/Delegate.php

This file was deleted.

7 changes: 0 additions & 7 deletions src/Viserio/Contracts/Middleware/Middleware.php

This file was deleted.

25 changes: 0 additions & 25 deletions src/Viserio/Contracts/Middleware/ServerMiddleware.php

This file was deleted.

16 changes: 10 additions & 6 deletions src/Viserio/Contracts/Middleware/Stack.php
Expand Up @@ -14,11 +14,13 @@ interface Stack
* immutability of the stack, and MUST return an instance that contains
* the specified middleware.
*
* @param Middleware $middleware
* @param \Interop\Http\Middleware\MiddlewareInterface|\Interop\Http\Middleware\ServerMiddlewareInterface $middleware
*
* @throws \LogicException
*
* @return $this
*/
public function withMiddleware(Middleware $middleware): Stack;
public function withMiddleware($middleware): Stack;

/**
* Return an instance without the specified middleware.
Expand All @@ -27,21 +29,23 @@ public function withMiddleware(Middleware $middleware): Stack;
* immutability of the stack, and MUST return an instance that does not
* contain the specified middleware.
*
* @param Middleware $middleware
* @param \Interop\Http\Middleware\MiddlewareInterface|\Interop\Http\Middleware\ServerMiddlewareInterface $middleware
*
* @throws \LogicException
*
* @return $this
*/
public function withoutMiddleware(Middleware $middleware): Stack;
public function withoutMiddleware($middleware): Stack;

/**
* Process the request through middleware and return the response.
*
* This method MUST be implemented in such a way as to allow the same
* stack to be reused for processing multiple requests in sequence.
*
* @param RequestInterface $request
* @param \Psr\Http\Message\RequestInterface $request
*
* @return ResponseInterface
* @return \Psr\Http\Message\ResponseInterface
*/
public function process(RequestInterface $request): ResponseInterface;
}
13 changes: 10 additions & 3 deletions src/Viserio/Contracts/Routing/Route.php
Expand Up @@ -4,7 +4,6 @@

use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Viserio\Contracts\Middleware\Middleware as MiddlewareContract;

interface Route
{
Expand Down Expand Up @@ -58,16 +57,24 @@ public function where($name, string $expression = null): Route;
/**
* Add a middleware to route.
*
* @param \Interop\Http\Middleware\MiddlewareInterface|\Interop\Http\Middleware\ServerMiddlewareInterface $middleware
*
* @throws \LogicException
*
* @return $this
*/
public function withMiddleware(MiddlewareContract $middleware): Route;
public function withMiddleware($middleware);

/**
* Remove a middleware from route.
*
* @param \Interop\Http\Middleware\MiddlewareInterface|\Interop\Http\Middleware\ServerMiddlewareInterface $middleware
*
* @throws \LogicException
*
* @return $this
*/
public function withoutMiddleware(MiddlewareContract $middleware): Route;
public function withoutMiddleware($middleware);

/**
* Get all middleware, including the ones from the controller.
Expand Down
14 changes: 11 additions & 3 deletions src/Viserio/Contracts/Routing/Router.php
Expand Up @@ -2,9 +2,9 @@
declare(strict_types=1);
namespace Viserio\Contracts\Routing;

use Interop\Http\Middleware\MiddlewareInterface;
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Viserio\Contracts\Middleware\Middleware as MiddlewareContract;

interface Router
{
Expand Down Expand Up @@ -168,16 +168,24 @@ public function getParameters(): array;
/**
* Add a middleware to all routes.
*
* @param \Interop\Http\Middleware\MiddlewareInterface|\Interop\Http\Middleware\ServerMiddlewareInterface $middleware
*
* @throws \LogicException
*
* @return $this
*/
public function withMiddleware(MiddlewareContract $middleware): Router;
public function withMiddleware($middleware);

/**
* Remove a middleware from all routes.
*
* @param \Interop\Http\Middleware\MiddlewareInterface|\Interop\Http\Middleware\ServerMiddlewareInterface $middleware
*
* @throws \LogicException
*
* @return $this
*/
public function withoutMiddleware(MiddlewareContract $middleware): Router;
public function withoutMiddleware($middleware);

/**
* Get all with and without middlewares.
Expand Down
17 changes: 7 additions & 10 deletions src/Viserio/Cookie/Middleware/AddQueuedCookiesToResponse.php
Expand Up @@ -2,13 +2,12 @@
declare(strict_types=1);
namespace Viserio\Cookie\Middleware;

use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Interop\Http\Middleware\DelegateInterface;
use Interop\Http\Middleware\MiddlewareInterface;
use Psr\Http\Message\RequestInterface;
use Viserio\Contracts\Cookie\QueueingFactory as CookieJar;
use Viserio\Contracts\Middleware\Delegate as DelegateContract;
use Viserio\Contracts\Middleware\Middleware as MiddlewareContract;

class AddQueuedCookiesToResponse implements MiddlewareContract
class AddQueuedCookiesToResponse implements MiddlewareInterface
{
/**
* The cookie jar instance.
Expand All @@ -30,11 +29,9 @@ public function __construct(CookieJar $cookies)
/**
* {@inheritdoc}
*/
public function handle(
ServerRequestInterface $request,
DelegateContract $frame
): ResponseInterface {
$response = $frame->next($request);
public function process(RequestInterface $request, DelegateInterface $delegate)
{
$response = $delegate->process($request);

foreach ($this->cookies->getQueuedCookies() as $cookie) {
$response->withHeader('Cookie', $cookie);
Expand Down
32 changes: 15 additions & 17 deletions src/Viserio/Cookie/Middleware/EncryptedCookie.php
Expand Up @@ -4,15 +4,15 @@

use Defuse\Crypto\Exception\EnvironmentIsBrokenException;
use Defuse\Crypto\Exception\WrongKeyOrModifiedCiphertextException;
use Interop\Http\Middleware\DelegateInterface;
use Interop\Http\Middleware\MiddlewareInterface;
use Psr\Http\Message\RequestInterface;
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Viserio\Contracts\Cookie\Cookie as CookieContract;
use Viserio\Contracts\Encryption\Encrypter as EncrypterContract;
use Viserio\Contracts\Middleware\Delegate as DelegateContract;
use Viserio\Contracts\Middleware\Middleware as MiddlewareContract;
use Viserio\Cookie\Cookie;

class EncryptCookies implements MiddlewareContract
class EncryptCookies implements MiddlewareInterface
{
/**
* The encrypter instance.
Expand Down Expand Up @@ -41,11 +41,9 @@ public function __construct(EncrypterContract $encrypter)
/**
* {@inheritdoc}
*/
public function handle(
ServerRequestInterface $request,
DelegateContract $frame
): ResponseInterface {
return $this->encrypt($frame->next($this->decrypt($request)));
public function process(RequestInterface $request, DelegateInterface $delegate)
{
return $this->encrypt($delegate->process($this->decrypt($request)));
}

/**
Expand Down Expand Up @@ -77,10 +75,10 @@ public function isDisabled(string $name): bool
/**
* Duplicate a cookie with a new value.
*
* @param CookieContract $cookie
* @param string $value
* @param \Viserio\Contracts\Cookie\Cookie $cookie
* @param string $value
*
* @return CookieContract
* @return \Viserio\Contracts\Cookie\Cookie
*/
protected function duplicate(CookieContract $cookie, string $value): CookieContract
{
Expand All @@ -98,11 +96,11 @@ protected function duplicate(CookieContract $cookie, string $value): CookieContr
/**
* Decrypt the cookies on the request.
*
* @param ServerRequestInterface $request
* @param \Psr\Http\Message\RequestInterface $request
*
* @return ServerRequestInterface
* @return \Psr\Http\Message\RequestInterface
*/
protected function decrypt(ServerRequestInterface $request): ServerRequestInterface
protected function decrypt(RequestInterface $request): RequestInterface
{
foreach ($request->cookies as $key => $cookie) {
if ($this->isDisabled($key)) {
Expand Down Expand Up @@ -158,9 +156,9 @@ protected function decryptArray(array $cookie): array
/**
* Encrypt the cookies on an outgoing response.
*
* @param ResponseInterface $response
* @param \Psr\Http\Message\ResponseInterface $response
*
* @return ResponseInterface
* @return \Psr\Http\Message\ResponseInterface
*/
protected function encrypt(ResponseInterface $response): ResponseInterface
{
Expand Down

0 comments on commit 64b0edc

Please sign in to comment.