mirror of
https://github.com/the-djmaze/snappymail.git
synced 2025-02-09 07:24:03 +08:00
43 lines
1.3 KiB
PHP
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;
|
|
}
|
|
}
|