You are here

ClientInterface.php in Zircon Profile 8

Namespace

GuzzleHttp

File

vendor/guzzlehttp/guzzle/src/ClientInterface.php
View source
<?php

namespace GuzzleHttp;

use GuzzleHttp\Promise\PromiseInterface;
use GuzzleHttp\Exception\GuzzleException;
use Psr\Http\Message\RequestInterface;
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\UriInterface;

/**
 * Client interface for sending HTTP requests.
 */
interface ClientInterface {
  const VERSION = '6.1.0';

  /**
   * Send an HTTP request.
   *
   * @param RequestInterface $request Request to send
   * @param array            $options Request options to apply to the given
   *                                  request and to the transfer.
   *
   * @return ResponseInterface
   * @throws GuzzleException
   */
  public function send(RequestInterface $request, array $options = []);

  /**
   * Asynchronously send an HTTP request.
   *
   * @param RequestInterface $request Request to send
   * @param array            $options Request options to apply to the given
   *                                  request and to the transfer.
   *
   * @return PromiseInterface
   */
  public function sendAsync(RequestInterface $request, array $options = []);

  /**
   * Create and send an HTTP request.
   *
   * Use an absolute path to override the base path of the client, or a
   * relative path to append to the base path of the client. The URL can
   * contain the query string as well.
   *
   * @param string              $method  HTTP method
   * @param string|UriInterface $uri     URI object or string.
   * @param array               $options Request options to apply.
   *
   * @return ResponseInterface
   * @throws GuzzleException
   */
  public function request($method, $uri, array $options = []);

  /**
   * Create and send an asynchronous HTTP request.
   *
   * Use an absolute path to override the base path of the client, or a
   * relative path to append to the base path of the client. The URL can
   * contain the query string as well. Use an array to provide a URL
   * template and additional variables to use in the URL template expansion.
   *
   * @param string              $method  HTTP method
   * @param string|UriInterface $uri     URI object or string.
   * @param array               $options Request options to apply.
   *
   * @return PromiseInterface
   */
  public function requestAsync($method, $uri, array $options = []);

  /**
   * Get a client configuration option.
   *
   * These options include default request options of the client, a "handler"
   * (if utilized by the concrete client), and a "base_uri" if utilized by
   * the concrete client.
   *
   * @param string|null $option The config option to retrieve.
   *
   * @return mixed
   */
  public function getConfig($option = null);

}

Interfaces

Namesort descending Description
ClientInterface Client interface for sending HTTP requests.