7424fef6db5ad221ad730ba137e507737cb35097
[yaffs-website] / vendor / zendframework / zend-feed / src / Reader / Http / Psr7ResponseDecorator.php
1 <?php
2 /**
3  * Zend Framework (http://framework.zend.com/)
4  *
5  * @link      http://github.com/zendframework/zf2 for the canonical source repository
6  * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
7  * @license   http://framework.zend.com/license/new-bsd New BSD License
8  */
9
10 namespace Zend\Feed\Reader\Http;
11
12 use Psr\Http\Message\ResponseInterface as Psr7ResponseInterface;
13
14 /**
15  * ResponseInterface wrapper for a PSR-7 response.
16  */
17 class Psr7ResponseDecorator implements HeaderAwareResponseInterface
18 {
19     /**
20      * @var Psr7ResponseInterface
21      */
22     private $decoratedResponse;
23
24     /**
25      * @param Psr7ResponseInterface $response
26      */
27     public function __construct(Psr7ResponseInterface $response)
28     {
29         $this->decoratedResponse = $response;
30     }
31
32     /**
33      * Return the original PSR-7 response being decorated.
34      *
35      * @return Psr7ResponseInterface
36      */
37     public function getDecoratedResponse()
38     {
39         return $this->decoratedResponse;
40     }
41
42     /**
43      * {@inheritDoc}
44      */
45     public function getBody()
46     {
47         return (string) $this->decoratedResponse->getBody();
48     }
49
50     /**
51      * {@inheritDoc}
52      */
53     public function getStatusCode()
54     {
55         return $this->decoratedResponse->getStatusCode();
56     }
57
58     /**
59      * {@inheritDoc}
60      */
61     public function getHeaderLine($name, $default = null)
62     {
63         if (! $this->decoratedResponse->hasHeader($name)) {
64             return $default;
65         }
66         return $this->decoratedResponse->getHeaderLine($name);
67     }
68 }