tempFolderPath = sys_get_temp_dir(); } /** * Sets API key * * @param string $apiKeyIdentifier API key identifier (authentication scheme) * @param string $key API key or token * * @return Configuration */ public function setApiKey($apiKeyIdentifier, $key) { $this->apiKeys[$apiKeyIdentifier] = $key; return $this; } /** * Gets API key * * @param string $apiKeyIdentifier API key identifier (authentication scheme) * * @return string API key or token */ public function getApiKey($apiKeyIdentifier) { return isset($this->apiKeys[$apiKeyIdentifier]) ? $this->apiKeys[$apiKeyIdentifier] : null; } /** * Sets the prefix for API key (e.g. Bearer) * * @param string $apiKeyIdentifier API key identifier (authentication scheme) * @param string $prefix API key prefix, e.g. Bearer * * @return Configuration */ public function setApiKeyPrefix($apiKeyIdentifier, $prefix) { $this->apiKeyPrefixes[$apiKeyIdentifier] = $prefix; return $this; } /** * Gets API key prefix * * @param string $apiKeyIdentifier API key identifier (authentication scheme) * * @return string */ public function getApiKeyPrefix($apiKeyIdentifier) { return isset($this->apiKeyPrefixes[$apiKeyIdentifier]) ? $this->apiKeyPrefixes[$apiKeyIdentifier] : null; } /** * Sets the access token for OAuth * * @param string $accessToken Token for OAuth * * @return Configuration */ public function setAccessToken($accessToken) { $this->accessToken = $accessToken; return $this; } /** * Gets the access token for OAuth * * @return string Access token for OAuth */ public function getAccessToken() { return $this->accessToken; } /** * Sets the username for HTTP basic authentication * * @param string $username Username for HTTP basic authentication * * @return Configuration */ public function setUsername($username) { $this->username = $username; return $this; } /** * Gets the username for HTTP basic authentication * * @return string Username for HTTP basic authentication */ public function getUsername() { return $this->username; } /** * Sets the password for HTTP basic authentication * * @param string $password Password for HTTP basic authentication * * @return Configuration */ public function setPassword($password) { $this->password = $password; return $this; } /** * Gets the password for HTTP basic authentication * * @return string Password for HTTP basic authentication */ public function getPassword() { return $this->password; } /** * Adds a default header * * @param string $headerName header name (e.g. Token) * @param string $headerValue header value (e.g. 1z8wp3) * * @return ApiClient */ public function addDefaultHeader($headerName, $headerValue) { if (!is_string($headerName)) { throw new \InvalidArgumentException('Header name must be a string.'); } $this->defaultHeaders[$headerName] = $headerValue; return $this; } /** * Gets the default header * * @return array An array of default header(s) */ public function getDefaultHeaders() { return $this->defaultHeaders; } /** * Deletes a default header * * @param string $headerName the header to delete * * @return Configuration */ public function deleteDefaultHeader($headerName) { unset($this->defaultHeaders[$headerName]); } /** * Sets the host * * @param string $host Host * * @return Configuration */ public function setHost($host) { $this->host = $host; return $this; } /** * Gets the host * * @return string Host */ public function getHost() { return $this->host; } /** * Sets the user agent of the api client * * @param string $userAgent the user agent of the api client * * @return ApiClient */ public function setUserAgent($userAgent) { if (!is_string($userAgent)) { throw new \InvalidArgumentException('User-agent must be a string.'); } $this->userAgent = $userAgent; return $this; } /** * Gets the user agent of the api client * * @return string user agent */ public function getUserAgent() { return $this->userAgent; } /** * Sets the HTTP timeout value * * @param integer $seconds Number of seconds before timing out [set to 0 for no timeout] * * @return ApiClient */ public function setCurlTimeout($seconds) { if (!is_numeric($seconds) || $seconds < 0) { throw new \InvalidArgumentException('Timeout value must be numeric and a non-negative number.'); } $this->curlTimeout = $seconds; return $this; } /** * Gets the HTTP timeout value * * @return string HTTP timeout value */ public function getCurlTimeout() { return $this->curlTimeout; } /** * Sets debug flag * * @param bool $debug Debug flag * * @return Configuration */ public function setDebug($debug) { $this->debug = $debug; return $this; } /** * Gets the debug flag * * @return bool */ public function getDebug() { return $this->debug; } /** * Sets the debug file * * @param string $debugFile Debug file * * @return Configuration */ public function setDebugFile($debugFile) { $this->debugFile = $debugFile; return $this; } /** * Gets the debug file * * @return string */ public function getDebugFile() { return $this->debugFile; } /** * Sets the temp folder path * * @param string $tempFolderPath Temp folder path * * @return Configuration */ public function setTempFolderPath($tempFolderPath) { $this->tempFolderPath = $tempFolderPath; return $this; } /** * Gets the temp folder path * * @return string Temp folder path */ public function getTempFolderPath() { return $this->tempFolderPath; } /** * Sets if SSL verification should be enabled or disabled * * @param boolean $sslVerification True if the certificate should be validated, false otherwise * * @return Configuration */ public function setSSLVerification($sslVerification) { $this->sslVerification = $sslVerification; return $this; } /** * Gets if SSL verification should be enabled or disabled * * @return boolean True if the certificate should be validated, false otherwise */ public function getSSLVerification() { return $this->sslVerification; } /** * Gets the default configuration instance * * @return Configuration */ public static function getDefaultConfiguration() { if (self::$_defaultConfiguration == null) { self::$_defaultConfiguration = new Configuration(); } return self::$_defaultConfiguration; } /** * Sets the detault configuration instance * * @param Configuration $config An instance of the Configuration Object * * @return void */ public static function setDefaultConfiguration(Configuration $config) { self::$_defaultConfiguration = $config; } /** * Gets the essential information for debugging * * @return string The report for debugging */ public static function toDebugReport() { $report = "PHP SDK (HelixWebServices) Debug Report:\n"; $report .= " OS: ".php_uname()."\n"; $report .= " PHP Version: ".phpversion()."\n"; $report .= " OpenAPI Spec Version: 2016.1.0\n"; $report .= " SDK Package Version: 2016.1.0\n"; $report .= " Temp Folder Path: ".self::getDefaultConfiguration()->getTempFolderPath()."\n"; return $report; } }