setAllOptions() public method

Set multiple Client options at once
public setAllOptions ( array $options ) : self
$options array An array of the form [OP_CONSTANT => $value]
return self
Example #1
0
function httpClient() : HttpClient
{
    static $client;
    if (!isset($client)) {
        $client = new HttpClient();
        $client->setAllOptions([HttpClient::OP_DEFAULT_USER_AGENT => Application::USER_AGENT, HttpClient::OP_VERBOSITY => HttpClient::VERBOSE_NONE, HttpClient::OP_AUTO_ENCODING => false]);
    }
    return $client;
}
Example #2
0
 /**
  * @param $gauges Gauge[]
  * @param $counters Counter[]
  */
 function send($gauges, $counters)
 {
     $client = new ArtaxClient();
     $client->setAllOptions([ArtaxClient::OP_MS_CONNECT_TIMEOUT => 2000, ArtaxClient::OP_MS_TRANSFER_TIMEOUT => 3000]);
     $request = new Request();
     $request->setUri("https://metrics-api.librato.com/v1/metrics");
     $request->setProtocol('1.1');
     $request->setMethod('POST');
     $request->setHeader("Content-Type", "application/json");
     $auth = base64_encode($this->libratoConfig->getLibratoUsername() . ':' . $this->libratoConfig->getLibratoKey());
     $request->setHeader("Authorization", "Basic {$auth}");
     $data = [];
     //working
     //"{"gauges":[{"name":"Queue.ImagickTaskQueue","value":0,"source":"test.phpimagick.com"}]}"
     if (count($gauges)) {
         $gaugeEntries = [];
         foreach ($gauges as $gauge) {
             $arrayed = $gauge->convertToArray();
             $gaugeEntries = array_merge($gaugeEntries, $arrayed);
         }
         $data["gauges"] = $gaugeEntries;
     }
     if (count($counters)) {
         $counterEntries = [];
         foreach ($counters as $counter) {
             $arrayed = $counter->convertToArray();
             if (is_array($arrayed) == true) {
                 $counterEntries = array_merge($counterEntries, $arrayed);
             } else {
                 $counterEntries[] = $arrayed;
             }
         }
         $data["counters"] = $counterEntries;
     }
     $body = json_encode($data);
     $request->setBody($body);
     var_dump($body);
     try {
         $promise = $client->request($request);
         /** @var $response \Amp\Artax\Response */
         $response = \Amp\wait($promise);
         echo "Status " . $response->getStatus() . "\n";
         echo $response->getBody();
     } catch (SocketException $se) {
         echo "Artax\\SocketExeption" . $se->getMessage();
     }
 }