summaryrefslogtreecommitdiff
path: root/src/Http/MessageTrait.php
diff options
context:
space:
mode:
authorIgor Scheller <igor.scheller@igorshp.de>2018-08-16 18:13:53 +0200
committerIgor Scheller <igor.scheller@igorshp.de>2018-08-19 14:04:16 +0200
commit5427ee385dc2ff117a1130eb606f78e708949c8f (patch)
treefdea2a1ffcf8b85bf32725f5479c8a781f059387 /src/Http/MessageTrait.php
parent18fd73a899602a473044013854a354254062ebd4 (diff)
Made Engelsystem\Http\Request PSR-7 RequestInterface compatible
Diffstat (limited to 'src/Http/MessageTrait.php')
-rw-r--r--src/Http/MessageTrait.php21
1 files changed, 17 insertions, 4 deletions
diff --git a/src/Http/MessageTrait.php b/src/Http/MessageTrait.php
index fa3a1459..e46d291e 100644
--- a/src/Http/MessageTrait.php
+++ b/src/Http/MessageTrait.php
@@ -4,7 +4,6 @@ namespace Engelsystem\Http;
use Psr\Http\Message\StreamInterface;
-use Symfony\Component\HttpFoundation\ResponseHeaderBag;
use Zend\Diactoros\Stream;
/**
@@ -41,7 +40,12 @@ trait MessageTrait
public function withProtocolVersion($version)
{
$new = clone $this;
- $new->setProtocolVersion($version);
+ if (method_exists($new, 'setProtocolVersion')) {
+ $new->setProtocolVersion($version);
+ } else {
+ $new->server->set('SERVER_PROTOCOL', $version);
+ }
+
return $new;
}
@@ -72,7 +76,11 @@ trait MessageTrait
*/
public function getHeaders()
{
- return $this->headers->allPreserveCase();
+ if (method_exists($this->headers, 'allPreserveCase')) {
+ return $this->headers->allPreserveCase();
+ }
+
+ return $this->headers->all();
}
/**
@@ -228,7 +236,12 @@ trait MessageTrait
public function withBody(StreamInterface $body)
{
$new = clone $this;
- $new->setContent($body);
+
+ if (method_exists($new, 'setContent')) {
+ $new->setContent($body);
+ } else {
+ $new->content = $body;
+ }
return $new;
}