Class: TestKaferiCloud::Configuration
- Inherits:
-
Object
- Object
- TestKaferiCloud::Configuration
- Defined in:
- lib/test_kaferi_cloud/configuration.rb
Constant Summary collapse
- AUTH_TYPE_O_AUTH_2 =
Auth types
'OAuth2'
- AUTH_TYPE_REQUEST_SIGNATURE =
'RequestSignature'
Instance Attribute Summary collapse
-
#access_token ⇒ Object
Defines the access token (Bearer) used with OAuth2.
-
#auth_type ⇒ AUTH_TYPE_O_AUTH_2, AUTH_TYPE_REQUEST_SIGNATURE
Defines authentication type.
-
#base_path ⇒ Object
Defines url base path.
-
#cert_file ⇒ Object
TLS/SSL setting Client certificate file (for client certificate).
-
#client_side_validation ⇒ true, false
Set this to false to skip client side validation in the operation.
-
#debugging ⇒ true, false
Set this to enable/disable debugging.
-
#force_ending_format ⇒ Object
Returns the value of attribute force_ending_format.
-
#host ⇒ Object
Defines url host.
-
#inject_format ⇒ Object
Returns the value of attribute inject_format.
-
#key_file ⇒ Object
TLS/SSL setting Client private key file (for client certificate).
-
#logger ⇒ #debug
Defines the logger used for debugging.
-
#params_encoding ⇒ Object
Set this to customize parameters encoding of array parameter with multi collectionFormat.
-
#refresh_token ⇒ Object
Defines the refresh token (Bearer) used with OAuth2.
-
#scheme ⇒ Object
Defines url scheme.
-
#ssl_ca_cert ⇒ String
TLS/SSL setting Set this to customize the certificate file to verify the peer.
-
#temp_folder_path ⇒ String
Defines the temporary folder to store downloaded files (for API endpoints that have file response).
-
#timeout ⇒ Object
The time limit for HTTP request in seconds.
-
#verify_ssl ⇒ true, false
TLS/SSL setting Set this to false to skip verifying SSL certificate when calling API from https server.
-
#verify_ssl_host ⇒ true, false
TLS/SSL setting Set this to false to skip verifying SSL host name Default to true.
Class Method Summary collapse
-
.default ⇒ Object
The default Configuration object.
Instance Method Summary collapse
-
#auth_settings ⇒ Object
Returns Auth Settings hash for api client.
- #base_url ⇒ Object
- #configure {|_self| ... } ⇒ Object
-
#initialize {|_self| ... } ⇒ Configuration
constructor
A new instance of Configuration.
Constructor Details
#initialize {|_self| ... } ⇒ Configuration
Returns a new instance of Configuration.
126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 |
# File 'lib/test_kaferi_cloud/configuration.rb', line 126 def initialize @scheme = 'https' @host = 'localhost' @base_path = '/v1.1' @timeout = 0 @client_side_validation = true @verify_ssl = true @verify_ssl_host = true @params_encoding = nil @cert_file = nil @key_file = nil @debugging = false @inject_format = false @force_ending_format = false @logger = defined?(Rails) ? Rails.logger : Logger.new(STDOUT) @auth_type = AUTH_TYPE_O_AUTH_2 yield(self) if block_given? end |
Instance Attribute Details
#access_token ⇒ Object
Defines the access token (Bearer) used with OAuth2.
46 47 48 |
# File 'lib/test_kaferi_cloud/configuration.rb', line 46 def access_token @access_token end |
#auth_type ⇒ AUTH_TYPE_O_AUTH_2, AUTH_TYPE_REQUEST_SIGNATURE
Defines authentication type.
43 44 45 |
# File 'lib/test_kaferi_cloud/configuration.rb', line 43 def auth_type @auth_type end |
#base_path ⇒ Object
Defines url base path
33 34 35 |
# File 'lib/test_kaferi_cloud/configuration.rb', line 33 def base_path @base_path end |
#cert_file ⇒ Object
TLS/SSL setting Client certificate file (for client certificate)
109 110 111 |
# File 'lib/test_kaferi_cloud/configuration.rb', line 109 def cert_file @cert_file end |
#client_side_validation ⇒ true, false
Set this to false to skip client side validation in the operation. Default to true.
78 79 80 |
# File 'lib/test_kaferi_cloud/configuration.rb', line 78 def client_side_validation @client_side_validation end |
#debugging ⇒ true, false
Set this to enable/disable debugging. When enabled (set to true), HTTP request/response details will be logged with ‘logger.debug` (see the `logger` attribute). Default to false.
56 57 58 |
# File 'lib/test_kaferi_cloud/configuration.rb', line 56 def debugging @debugging end |
#force_ending_format ⇒ Object
Returns the value of attribute force_ending_format.
124 125 126 |
# File 'lib/test_kaferi_cloud/configuration.rb', line 124 def force_ending_format @force_ending_format end |
#host ⇒ Object
Defines url host
30 31 32 |
# File 'lib/test_kaferi_cloud/configuration.rb', line 30 def host @host end |
#inject_format ⇒ Object
Returns the value of attribute inject_format.
122 123 124 |
# File 'lib/test_kaferi_cloud/configuration.rb', line 122 def inject_format @inject_format end |
#key_file ⇒ Object
TLS/SSL setting Client private key file (for client certificate)
113 114 115 |
# File 'lib/test_kaferi_cloud/configuration.rb', line 113 def key_file @key_file end |
#logger ⇒ #debug
Defines the logger used for debugging. Default to ‘Rails.logger` (when in Rails) or logging to STDOUT.
62 63 64 |
# File 'lib/test_kaferi_cloud/configuration.rb', line 62 def logger @logger end |
#params_encoding ⇒ Object
Set this to customize parameters encoding of array parameter with multi collectionFormat. Default to nil.
github.com/typhoeus/ethon/blob/master/lib/ethon/easy/queryable.rb#L96
120 121 122 |
# File 'lib/test_kaferi_cloud/configuration.rb', line 120 def params_encoding @params_encoding end |
#refresh_token ⇒ Object
Defines the refresh token (Bearer) used with OAuth2.
49 50 51 |
# File 'lib/test_kaferi_cloud/configuration.rb', line 49 def refresh_token @refresh_token end |
#scheme ⇒ Object
Defines url scheme
27 28 29 |
# File 'lib/test_kaferi_cloud/configuration.rb', line 27 def scheme @scheme end |
#ssl_ca_cert ⇒ String
TLS/SSL setting Set this to customize the certificate file to verify the peer.
github.com/typhoeus/typhoeus/blob/master/lib/typhoeus/easy_factory.rb#L145
105 106 107 |
# File 'lib/test_kaferi_cloud/configuration.rb', line 105 def ssl_ca_cert @ssl_ca_cert end |
#temp_folder_path ⇒ String
Defines the temporary folder to store downloaded files (for API endpoints that have file response). Default to use ‘Tempfile`.
69 70 71 |
# File 'lib/test_kaferi_cloud/configuration.rb', line 69 def temp_folder_path @temp_folder_path end |
#timeout ⇒ Object
The time limit for HTTP request in seconds. Default to 0 (never times out).
73 74 75 |
# File 'lib/test_kaferi_cloud/configuration.rb', line 73 def timeout @timeout end |
#verify_ssl ⇒ true, false
Do NOT set it to false in production code, otherwise you would face multiple types of cryptographic attacks.
TLS/SSL setting Set this to false to skip verifying SSL certificate when calling API from https server. Default to true.
87 88 89 |
# File 'lib/test_kaferi_cloud/configuration.rb', line 87 def verify_ssl @verify_ssl end |
#verify_ssl_host ⇒ true, false
Do NOT set it to false in production code, otherwise you would face multiple types of cryptographic attacks.
TLS/SSL setting Set this to false to skip verifying SSL host name Default to true.
96 97 98 |
# File 'lib/test_kaferi_cloud/configuration.rb', line 96 def verify_ssl_host @verify_ssl_host end |
Class Method Details
.default ⇒ Object
The default Configuration object.
147 148 149 |
# File 'lib/test_kaferi_cloud/configuration.rb', line 147 def self.default @@default ||= Configuration.new end |
Instance Method Details
#auth_settings ⇒ Object
Returns Auth Settings hash for api client.
177 178 179 180 181 182 183 184 185 186 187 |
# File 'lib/test_kaferi_cloud/configuration.rb', line 177 def auth_settings { 'oauth' => { type: 'oauth2', in: 'header', key: 'Authorization', value: "Bearer #{access_token}" }, } end |
#base_url ⇒ Object
171 172 173 174 |
# File 'lib/test_kaferi_cloud/configuration.rb', line 171 def base_url url = "#{scheme}://#{[host, base_path].join('/').gsub(/\/+/, '/')}".sub(/\/+\z/, '') URI.encode(url) end |
#configure {|_self| ... } ⇒ Object
151 152 153 |
# File 'lib/test_kaferi_cloud/configuration.rb', line 151 def configure yield(self) if block_given? end |