Amp\Artax\Client::setOption PHP Method

setOption() public method

Set an individual Client option
public setOption ( integer $option, mixed $value ) : self
$option integer A Client option constant
$value mixed The option value to assign
return self
    public function setOption($option, $value)
    {
        switch ($option) {
            case self::OP_AUTO_ENCODING:
                $this->options[self::OP_AUTO_ENCODING] = (bool) $value;
                break;
            case self::OP_HOST_CONNECTION_LIMIT:
                $this->options[self::OP_HOST_CONNECTION_LIMIT] = $value;
                break;
            case self::OP_MS_CONNECT_TIMEOUT:
                $this->options[self::OP_MS_CONNECT_TIMEOUT] = $value;
                break;
            case self::OP_MS_KEEP_ALIVE_TIMEOUT:
                $this->options[self::OP_MS_KEEP_ALIVE_TIMEOUT] = $value;
                break;
            case self::OP_MS_TRANSFER_TIMEOUT:
                $this->options[self::OP_MS_TRANSFER_TIMEOUT] = (int) $value;
                break;
            case self::OP_MS_100_CONTINUE_TIMEOUT:
                $this->options[self::OP_MS_100_CONTINUE_TIMEOUT] = (int) $value;
                break;
            case self::OP_EXPECT_CONTINUE:
                $this->options[self::OP_EXPECT_CONTINUE] = (bool) $value;
                break;
            case self::OP_FOLLOW_LOCATION:
                $this->options[self::OP_FOLLOW_LOCATION] = (bool) $value;
                break;
            case self::OP_AUTO_REFERER:
                $this->options[self::OP_AUTO_REFERER] = (bool) $value;
                break;
            case self::OP_BUFFER_BODY:
                $this->options[self::OP_BUFFER_BODY] = (bool) $value;
                break;
            case self::OP_DISCARD_BODY:
                $this->options[self::OP_DISCARD_BODY] = (bool) $value;
                break;
            case self::OP_VERBOSITY:
                $this->options[self::OP_VERBOSITY] = (int) $value;
                break;
            case self::OP_IO_GRANULARITY:
                $value = (int) $value;
                $this->options[self::OP_IO_GRANULARITY] = $value > 0 ? $value : 32768;
                break;
            case self::OP_BINDTO:
                $this->options[self::OP_BINDTO] = $value;
                break;
            case self::OP_COMBINE_COOKIES:
                $this->options[self::OP_COMBINE_COOKIES] = (bool) $value;
                break;
            case self::OP_PROXY_HTTP:
                $this->options[self::OP_PROXY_HTTP] = $value;
                break;
            case self::OP_PROXY_HTTPS:
                $this->options[self::OP_PROXY_HTTPS] = $value;
                break;
            case self::OP_CRYPTO:
                $this->options[self::OP_CRYPTO] = (array) $value;
                break;
            case self::OP_DEFAULT_USER_AGENT:
                $this->options[self::OP_DEFAULT_USER_AGENT] = (string) $value;
                break;
            case self::OP_BODY_SWAP_SIZE:
                $this->options[self::OP_BODY_SWAP_SIZE] = (int) $value;
                break;
            case self::OP_MAX_HEADER_BYTES:
                $this->options[self::OP_MAX_HEADER_BYTES] = (int) $value;
                break;
            case self::OP_MAX_BODY_BYTES:
                $this->options[self::OP_MAX_BODY_BYTES] = (int) $value;
                break;
            default:
                throw new \DomainException(sprintf("Unknown option: %s", $option));
        }
        return $this;
    }

Usage Example

 private function getReactorAndAPI()
 {
     $reactor = \Amp\reactor();
     $cache = new NullResponseCache();
     $client = new ArtaxClient();
     $client->setOption(ArtaxClient::OP_MS_CONNECT_TIMEOUT, 5000);
     $client->setOption(ArtaxClient::OP_MS_KEEP_ALIVE_TIMEOUT, 1000);
     $githubAPI = new GithubService($client, $reactor, $cache, "Danack/test");
     return [$reactor, $githubAPI];
 }
All Usage Examples Of Amp\Artax\Client::setOption