ulmus-api/src/Common/JsonMessageTrait.php

21 lines
452 B
PHP

<?php
namespace Ulmus\Api\Common;
use Psr\Http\Message\MessageInterface;
use Ulmus\Api\Stream\JsonStream;
trait JsonMessageTrait
{
public function getParsedBody(): mixed
{
return JsonStream::fromJsonEncoded( $this->getBody()->getContents() )->decode();
}
public function withParsedBody(mixed $data) : MessageInterface
{
return (clone $this)->setBody(
JsonStream::fromContent($data)
);
}
}