forked from loafle/openapi-generator-original
527 lines
12 KiB
PHP
527 lines
12 KiB
PHP
<?php
|
|
/**
|
|
* Configuration
|
|
* PHP version 5
|
|
*
|
|
* @category Class
|
|
* @package Swagger\Client
|
|
* @author http://github.com/swagger-api/swagger-codegen
|
|
* @license http://www.apache.org/licenses/LICENSE-2.0 Apache Licene v2
|
|
* @link https://github.com/swagger-api/swagger-codegen
|
|
*/
|
|
|
|
/**
|
|
* Copyright 2016 SmartBear Software
|
|
*
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
* you may not use this file except in compliance with the License.
|
|
* You may obtain a copy of the License at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
* See the License for the specific language governing permissions and
|
|
* limitations under the License.
|
|
*/
|
|
|
|
/**
|
|
* NOTE: This class is auto generated by the swagger code generator program.
|
|
* https://github.com/swagger-api/swagger-codegen
|
|
* Do not edit the class manually.
|
|
*/
|
|
|
|
namespace Swagger\Client;
|
|
|
|
/**
|
|
* Configuration Class Doc Comment
|
|
* PHP version 5
|
|
*
|
|
* @category Class
|
|
* @package Swagger\Client
|
|
* @author http://github.com/swagger-api/swagger-codegen
|
|
* @license http://www.apache.org/licenses/LICENSE-2.0 Apache Licene v2
|
|
* @link https://github.com/swagger-api/swagger-codegen
|
|
*/
|
|
class Configuration
|
|
{
|
|
|
|
private static $_defaultConfiguration = null;
|
|
|
|
/**
|
|
* Associate array to store API key(s)
|
|
*
|
|
* @var string[]
|
|
*/
|
|
protected $apiKeys = array();
|
|
|
|
/**
|
|
* Associate array to store API prefix (e.g. Bearer)
|
|
*
|
|
* @var string[]
|
|
*/
|
|
protected $apiKeyPrefixes = array();
|
|
|
|
/**
|
|
* Access token for OAuth
|
|
*
|
|
* @var string
|
|
*/
|
|
protected $accessToken = '';
|
|
|
|
/**
|
|
* Username for HTTP basic authentication
|
|
*
|
|
* @var string
|
|
*/
|
|
protected $username = '';
|
|
|
|
/**
|
|
* Password for HTTP basic authentication
|
|
*
|
|
* @var string
|
|
*/
|
|
protected $password = '';
|
|
|
|
/**
|
|
* The default instance of ApiClient
|
|
*
|
|
* @var \Swagger\Client\ApiClient
|
|
*/
|
|
protected $defaultHeaders = array();
|
|
|
|
/**
|
|
* The host
|
|
*
|
|
* @var string
|
|
*/
|
|
protected $host = 'http://petstore.swagger.io/v2';
|
|
|
|
/**
|
|
* Timeout (second) of the HTTP request, by default set to 0, no timeout
|
|
*
|
|
* @var string
|
|
*/
|
|
protected $curlTimeout = 0;
|
|
|
|
/**
|
|
* User agent of the HTTP request, set to "PHP-Swagger" by default
|
|
*
|
|
* @var string
|
|
*/
|
|
protected $userAgent = "PHP-Swagger/1.0.0";
|
|
|
|
/**
|
|
* Debug switch (default set to false)
|
|
*
|
|
* @var bool
|
|
*/
|
|
protected $debug = false;
|
|
|
|
/**
|
|
* Debug file location (log to STDOUT by default)
|
|
*
|
|
* @var string
|
|
*/
|
|
protected $debugFile = 'php://output';
|
|
|
|
/**
|
|
* Debug file location (log to STDOUT by default)
|
|
*
|
|
* @var string
|
|
*/
|
|
protected $tempFolderPath;
|
|
|
|
/**
|
|
* Indicates if SSL verification should be enabled or disabled.
|
|
*
|
|
* This is useful if the host uses a self-signed SSL certificate.
|
|
*
|
|
* @var boolean True if the certificate should be validated, false otherwise.
|
|
*/
|
|
protected $sslVerification = true;
|
|
|
|
/**
|
|
* Constructor
|
|
*/
|
|
public function __construct()
|
|
{
|
|
$this->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 (Swagger\Client) Debug Report:\n";
|
|
$report .= " OS: ".php_uname()."\n";
|
|
$report .= " PHP Version: ".phpversion()."\n";
|
|
$report .= " OpenAPI Spec Version: 1.0.0\n";
|
|
$report .= " SDK Package Version: 1.0.0\n";
|
|
$report .= " Temp Folder Path: ".self::getDefaultConfiguration()->getTempFolderPath()."\n";
|
|
|
|
return $report;
|
|
}
|
|
|
|
}
|