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

adding psr-15 #399

Merged
merged 7 commits into from Oct 13, 2016
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
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