45 lines
1.2 KiB
PHP
45 lines
1.2 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
/**
|
|
* This file is part of Hyperf.
|
|
*
|
|
* @link https://www.hyperf.io
|
|
* @document https://hyperf.wiki
|
|
* @contact group@hyperf.io
|
|
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
|
|
*/
|
|
|
|
namespace Hyperf\Context;
|
|
|
|
use Psr\Http\Message\ResponseInterface;
|
|
use RuntimeException;
|
|
use Swow\Psr7\Message\ResponsePlusInterface;
|
|
|
|
class ResponseContext
|
|
{
|
|
public static function get(?int $coroutineId = null): ResponsePlusInterface
|
|
{
|
|
return Context::get(ResponseInterface::class, null, $coroutineId);
|
|
}
|
|
|
|
public static function set(ResponseInterface $response, ?int $coroutineId = null): ResponsePlusInterface
|
|
{
|
|
if (! $response instanceof ResponsePlusInterface) {
|
|
throw new RuntimeException('The response must instanceof ResponsePlusInterface');
|
|
}
|
|
|
|
return Context::set(ResponseInterface::class, $response, $coroutineId);
|
|
}
|
|
|
|
public static function has(?int $coroutineId = null): bool
|
|
{
|
|
return Context::has(ResponseInterface::class, $coroutineId);
|
|
}
|
|
|
|
public static function getOrNull(?int $coroutineId = null): ?ResponsePlusInterface
|
|
{
|
|
return Context::get(ResponseInterface::class, null, $coroutineId);
|
|
}
|
|
}
|