@@ -102,7 +102,7 @@ class Response implements ResponseInterface
102102 /**
103103 * @var int
104104 */
105- private $ statusCode = 200 ;
105+ private $ statusCode ;
106106
107107 /**
108108 * @param string|resource|StreamInterface $body Stream identifier and/or actual stream resource
@@ -120,12 +120,9 @@ public function __construct($body = 'php://memory', $status = 200, array $header
120120 );
121121 }
122122
123- if (null !== $ status ) {
124- $ this ->validateStatus ($ status );
125- }
123+ $ this ->setStatusCode ($ status );
126124
127- $ this ->stream = ($ body instanceof StreamInterface) ? $ body : new Stream ($ body , 'wb+ ' );
128- $ this ->statusCode = $ status ? (int ) $ status : 200 ;
125+ $ this ->stream = ($ body instanceof StreamInterface) ? $ body : new Stream ($ body , 'wb+ ' );
129126
130127 list ($ this ->headerNames , $ headers ) = $ this ->filterHeaders ($ headers );
131128 $ this ->assertHeaders ($ headers );
@@ -159,9 +156,8 @@ public function getReasonPhrase()
159156 */
160157 public function withStatus ($ code , $ reasonPhrase = '' )
161158 {
162- $ this ->validateStatus ($ code );
163159 $ new = clone $ this ;
164- $ new ->statusCode = ( int ) $ code ;
160+ $ new ->setStatusCode ( $ code) ;
165161 $ new ->reasonPhrase = $ reasonPhrase ;
166162 return $ new ;
167163 }
@@ -172,7 +168,7 @@ public function withStatus($code, $reasonPhrase = '')
172168 * @param int|string $code
173169 * @throws InvalidArgumentException on an invalid status code.
174170 */
175- private function validateStatus ($ code )
171+ private function setStatusCode ($ code )
176172 {
177173 if (! is_numeric ($ code )
178174 || is_float ($ code )
@@ -184,6 +180,7 @@ private function validateStatus($code)
184180 (is_scalar ($ code ) ? $ code : gettype ($ code ))
185181 ));
186182 }
183+ $ this ->statusCode = $ code ;
187184 }
188185
189186 /**
0 commit comments