PHP 클래스 Phly\Conduit\MiddlewarePipe
This class implements a pipe-line of middleware, which can be attached using
the
pipe() method, and is itself middleware.
The request and response objects are decorated using the Phly\Conduit\Http
variants in this package, ensuring that the request may store arbitrary
properties, and the response exposes the convenience
write(),
end(), and
isComplete() methods.
It creates an instance of
Next internally, invoking it with the provided
request and response instances; if no
$out argument is provided, it will
create a
FinalHandler instance and pass that to
Next as well.
Inspired by Sencha Connect.
파일 보기
프로젝트 열기: phly/conduit
1 사용 예제들
보호된 프로퍼티들
공개 메소드들
메소드 |
설명 |
|
__construct ( ) |
Constructor |
|
__invoke ( Psr\Http\Message\ServerRequestInterface $request, Psr\Http\Message\ResponseInterface $response, callable $out = null ) : Psr\Http\Message\ResponseInterface |
Handle a request |
|
pipe ( string | callable | object $path, null | callable | object $middleware = null ) : self |
Attach middleware to the pipeline. |
|
비공개 메소드들
메소드 |
설명 |
|
decorateRequest ( Psr\Http\Message\ServerRequestInterface $request ) : Request |
Decorate the Request instance |
|
decorateResponse ( Psr\Http\Message\ResponseInterface $response ) : Response |
Decorate the Response instance |
|
normalizePipePath ( string $path ) : string |
Normalize a path used when defining a pipe |
|
메소드 상세
Takes the pipeline, creates a Next handler, and delegates to the
Next handler.
If $out is a callable, it is used as the "final handler" when
$next has exhausted the pipeline; otherwise, a FinalHandler instance
is created and passed to $next during initialization.
public __invoke ( Psr\Http\Message\ServerRequestInterface $request, Psr\Http\Message\ResponseInterface $response, callable $out = null ) : Psr\Http\Message\ResponseInterface |
$request |
Psr\Http\Message\ServerRequestInterface |
|
$response |
Psr\Http\Message\ResponseInterface |
|
$out |
callable |
|
리턴 |
Psr\Http\Message\ResponseInterface |
|
Each middleware can be associated with a particular path; if that
path is matched when that middleware is invoked, it will be processed;
otherwise it is skipped.
No path means it should be executed every request cycle.
A handler CAN implement MiddlewareInterface, but MUST be callable.
Handlers with arity >= 4 or those implementing ErrorMiddlewareInterface
are considered error handlers, and will be executed when a handler calls
$next with an error or raises an exception.
프로퍼티 상세
protected SplQueue $pipeline |
리턴 |
SplQueue |
|