createBody($xml), $status, $this->injectContentType('application/xml; charset=utf-8', $headers) ); } /** * Create the message body. * * @param string|StreamInterface $xml * @return StreamInterface * @throws InvalidArgumentException if $xml is neither a string or stream. */ private function createBody($xml) { if ($xml instanceof StreamInterface) { return $xml; } if (! is_string($xml)) { throw new InvalidArgumentException(sprintf( 'Invalid content (%s) provided to %s', (is_object($xml) ? get_class($xml) : gettype($xml)), __CLASS__ )); } $body = new Stream('php://temp', 'wb+'); $body->write($xml); $body->rewind(); return $body; } }