0 follower

Class Yiisoft\DataResponse\Middleware\FormatDataResponse

InheritanceYiisoft\DataResponse\Middleware\FormatDataResponse
ImplementsPsr\Http\Server\MiddlewareInterface
SubclassesYiisoft\DataResponse\Middleware\FormatDataResponseAsHtml, Yiisoft\DataResponse\Middleware\FormatDataResponseAsJson, Yiisoft\DataResponse\Middleware\FormatDataResponseAsPlainText, Yiisoft\DataResponse\Middleware\FormatDataResponseAsXml
Deprecated since version Use {@see \Yiisoft\DataResponse\Middleware\DataResponseMiddleware} instead.

FormatDataResponse adds a formatter Yiisoft\DataResponse\DataResponseFormatterInterface instance to the instance of the data response Yiisoft\DataResponse\DataResponse, if the formatter was not added earlier.

Method Details

Hide inherited methods

__construct() public method

public __construct( Yiisoft\DataResponse\DataResponseFormatterInterface $responseFormatter ): mixed
$responseFormatter Yiisoft\DataResponse\DataResponseFormatterInterface

                public function __construct(
    private DataResponseFormatterInterface $responseFormatter,
) {}

            
process() public method

public process( \Psr\Http\Message\ServerRequestInterface $request, \Psr\Http\Server\RequestHandlerInterface $handler ): \Psr\Http\Message\ResponseInterface
$request \Psr\Http\Message\ServerRequestInterface
$handler \Psr\Http\Server\RequestHandlerInterface

                public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
{
    $response = $handler->handle($request);
    if ($response instanceof DataResponse && !$response->hasResponseFormatter()) {
        $response = $response->withResponseFormatter($this->responseFormatter);
    }
    return $response;
}