*/ class Config { /** @var int How long to wait for a response from the API */ protected $timeout = 5; /** @var int how long to wait while connecting to the API */ protected $connectionTimeout = 5; /** * Decode JSON Response as associative Array * * @see http://php.net/manual/en/function.json-decode.php * * @var bool */ protected $decodeJsonAsArray = false; /** @var string User-Agent header */ protected $userAgent = 'TwitterOAuth (+https://twitteroauth.com)'; /** @var array Store proxy connection details */ protected $proxy = []; /** @var bool Whether to encode the curl requests with gzip or not */ protected $gzipEncoding = true; /** @var integer Size for Chunked Uploads */ protected $chunkSize = 250000; // 0.25 MegaByte /** * Set the connection and response timeouts. * * @param int $connectionTimeout * @param int $timeout */ public function setTimeouts($connectionTimeout, $timeout) { $this->connectionTimeout = (int)$connectionTimeout; $this->timeout = (int)$timeout; } /** * @param bool $value */ public function setDecodeJsonAsArray($value) { $this->decodeJsonAsArray = (bool)$value; } /** * @param string $userAgent */ public function setUserAgent($userAgent) { $this->userAgent = (string)$userAgent; } /** * @param array $proxy */ public function setProxy(array $proxy) { $this->proxy = $proxy; } /** * Whether to encode the curl requests with gzip or not. * * @param boolean $gzipEncoding */ public function setGzipEncoding($gzipEncoding) { $this->gzipEncoding = (bool)$gzipEncoding; } /** * Set the size of each part of file for chunked media upload. * * @param int $value */ public function setChunkSize($value) { $this->chunkSize = (int)$value; } }