snappymail/rainloop/v/1.2.6.410/app/libraries/Buzz/Client/AbstractStream.php
RainLoop Team d839db3a0c v1.2.6.410
2013-09-26 23:21:30 +04:00

43 lines
1.3 KiB
PHP

<?php
namespace Buzz\Client;
use Buzz\Message\RequestInterface;
abstract class AbstractStream extends AbstractClient
{
/**
* Converts a request into an array for stream_context_create().
*
* @param RequestInterface $request A request object
*
* @return array An array for stream_context_create()
*/
public function getStreamContextArray(RequestInterface $request)
{
$options = array(
'http' => array(
// values from the request
'method' => $request->getMethod(),
'header' => implode("\r\n", $request->getHeaders()),
'content' => $request->getContent(),
'protocol_version' => $request->getProtocolVersion(),
// values from the current client
'ignore_errors' => $this->getIgnoreErrors(),
'max_redirects' => $this->getMaxRedirects(),
'timeout' => $this->getTimeout(),
),
'ssl' => array(
'verify_peer' => $this->getVerifyPeer(),
),
);
if ($this->proxy) {
$options['http']['proxy'] = $this->proxy;
$options['http']['request_fulluri'] = true;
}
return $options;
}
}