1<?php 2/** 3 * Copyright 2007-2016 Horde LLC (http://www.horde.org/) 4 * 5 * @author Chuck Hagenbuch <chuck@horde.org> 6 * @license http://www.horde.org/licenses/bsd BSD 7 * @category Horde 8 * @package Http 9 */ 10 11/** 12 * @author Chuck Hagenbuch <chuck@horde.org> 13 * @license http://www.horde.org/licenses/bsd BSD 14 * @category Horde 15 * @package Http 16 */ 17class Horde_Http_Response_Peclhttp extends Horde_Http_Response_Base 18{ 19 /** 20 * HttpMessage object. 21 * 22 * @var HttpMessage 23 */ 24 protected $_message; 25 26 /** 27 * Constructor. 28 * 29 * @param string $uri 30 * @param HttpMessage $message 31 */ 32 public function __construct($uri, HttpMessage $message) 33 { 34 try { 35 $parent = $message->getParentMessage(); 36 $location = $parent->getHeader('Location'); 37 $this->uri = $location; 38 } catch (HttpRuntimeException $e) { 39 $this->uri = $uri; 40 } 41 42 $this->httpVersion = $message->getHttpVersion(); 43 $this->code = $message->getResponseCode(); 44 $this->_message = $message; 45 $this->_headers = new Horde_Support_CaseInsensitiveArray( 46 $message->getHeaders() 47 ); 48 $this->headers = array_change_key_case($this->_headers->getArrayCopy()); 49 } 50 51 public function getBody() 52 { 53 return $this->_message->getBody(); 54 } 55} 56