Class: OrbipayPaymentsapiClient::Configuration::Configuration

Inherits:
Object
  • Object
show all
Defined in:
lib/orbipay_paymentsapi_client/configuration.rb

Overview

.

############################################################################################
## This class subject to change without prior notice, Please dont use this class directly.##
############################################################################################

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize {|_self| ... } ⇒ Configuration

Returns a new instance of Configuration.

Yields:

  • (_self)

Yield Parameters:



133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
# File 'lib/orbipay_paymentsapi_client/configuration.rb', line 133

def initialize
  @api_key = {}
  @api_key_prefix = {}
  @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 = OrbipayPaymentsapiClient.logger

  yield(self) if block_given?
end

Instance Attribute Details

#access_tokenObject (readonly)

Defines the access token (Bearer) used with OAuth2.



56
57
58
# File 'lib/orbipay_paymentsapi_client/configuration.rb', line 56

def access_token
  @access_token
end

#algorithmObject (readonly)

Defines Algorithm used with authentication.

config.algorithm = 'xxx'


27
28
29
# File 'lib/orbipay_paymentsapi_client/configuration.rb', line 27

def algorithm
  @algorithm
end

#api_end_pointObject (readonly)

Defines api_end_point scheme



14
15
16
# File 'lib/orbipay_paymentsapi_client/configuration.rb', line 14

def api_end_point
  @api_end_point
end

#api_keyHash (readonly)

Defines API keys used with API Key authentications.

Examples:

parameter name is “api_key”, API key is “xxx” (e.g. “api_key=xxx” in query string)

config.api_key['api_key'] = 'xxx'

Returns:

  • (Hash)

    key: parameter name, value: parameter value (API key)



35
36
37
# File 'lib/orbipay_paymentsapi_client/configuration.rb', line 35

def api_key
  @api_key
end

#api_key_prefixHash (readonly)

Defines API key prefixes used with API Key authentications.

Examples:

parameter name is “Authorization”, API key prefix is “Token” (e.g. “Authorization: Token xxx” in headers)

config.api_key_prefix['api_key'] = 'Token'

Returns:

  • (Hash)

    key: parameter name, value: API key prefix



43
44
45
# File 'lib/orbipay_paymentsapi_client/configuration.rb', line 43

def api_key_prefix
  @api_key_prefix
end

#cert_fileObject (readonly)

TLS/SSL setting Client certificate file (for client certificate)



116
117
118
# File 'lib/orbipay_paymentsapi_client/configuration.rb', line 116

def cert_file
  @cert_file
end

#client_api_keyObject (readonly)

Defines API keys used with API Key authentications

config.client_api_key = 'xxx'


22
23
24
# File 'lib/orbipay_paymentsapi_client/configuration.rb', line 22

def client_api_key
  @client_api_key
end

#client_side_validationtrue, false (readonly)

Set this to false to skip client side validation in the operation. Default to true.

Returns:

  • (true, false)


85
86
87
# File 'lib/orbipay_paymentsapi_client/configuration.rb', line 85

def client_side_validation
  @client_side_validation
end

#debuggingtrue, false (readonly)

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.

Returns:

  • (true, false)


63
64
65
# File 'lib/orbipay_paymentsapi_client/configuration.rb', line 63

def debugging
  @debugging
end

#force_ending_formatObject (readonly)

Returns the value of attribute force_ending_format.



131
132
133
# File 'lib/orbipay_paymentsapi_client/configuration.rb', line 131

def force_ending_format
  @force_ending_format
end

#inject_formatObject (readonly)

Returns the value of attribute inject_format.



129
130
131
# File 'lib/orbipay_paymentsapi_client/configuration.rb', line 129

def inject_format
  @inject_format
end

#key_fileObject (readonly)

TLS/SSL setting Client private key file (for client certificate)



120
121
122
# File 'lib/orbipay_paymentsapi_client/configuration.rb', line 120

def key_file
  @key_file
end

#logger#debug (readonly)

Defines the logger used for debugging. Default to `Rails.logger` (when in Rails) or logging to STDOUT.

Returns:

  • (#debug)


69
70
71
# File 'lib/orbipay_paymentsapi_client/configuration.rb', line 69

def logger
  @logger
end

#params_encodingObject (readonly)

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

See Also:

  • params_encoding option of Ethon. Related source code:


127
128
129
# File 'lib/orbipay_paymentsapi_client/configuration.rb', line 127

def params_encoding
  @params_encoding
end

#passwordString (readonly)

Defines the password used with HTTP basic authentication.

Returns:

  • (String)


53
54
55
# File 'lib/orbipay_paymentsapi_client/configuration.rb', line 53

def password
  @password
end

#secretObject (readonly)

secret key



17
18
19
# File 'lib/orbipay_paymentsapi_client/configuration.rb', line 17

def secret
  @secret
end

#ssl_ca_certString (readonly)

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

Returns:

  • (String)

    the path to the certificate file

See Also:

  • `cainfo` option of Typhoeus, `--cert` option of libcurl. Related source code:


112
113
114
# File 'lib/orbipay_paymentsapi_client/configuration.rb', line 112

def ssl_ca_cert
  @ssl_ca_cert
end

#temp_folder_pathString (readonly)

Defines the temporary folder to store downloaded files (for API endpoints that have file response). Default to use `Tempfile`.

Returns:

  • (String)


76
77
78
# File 'lib/orbipay_paymentsapi_client/configuration.rb', line 76

def temp_folder_path
  @temp_folder_path
end

#timeoutObject (readonly)

The time limit for HTTP request in seconds. Default to 0 (never times out).



80
81
82
# File 'lib/orbipay_paymentsapi_client/configuration.rb', line 80

def timeout
  @timeout
end

#usernameString (readonly)

Defines the username used with HTTP basic authentication.

Returns:

  • (String)


48
49
50
# File 'lib/orbipay_paymentsapi_client/configuration.rb', line 48

def username
  @username
end

#verify_ssltrue, false (readonly)

Note:

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.

Returns:

  • (true, false)


94
95
96
# File 'lib/orbipay_paymentsapi_client/configuration.rb', line 94

def verify_ssl
  @verify_ssl
end

#verify_ssl_hosttrue, false (readonly)

Note:

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.

Returns:

  • (true, false)


103
104
105
# File 'lib/orbipay_paymentsapi_client/configuration.rb', line 103

def verify_ssl_host
  @verify_ssl_host
end

Class Method Details

.defaultObject

The default Configuration object.



152
153
154
# File 'lib/orbipay_paymentsapi_client/configuration.rb', line 152

def self.default
  @@default ||= Configuration.new
end

Instance Method Details

#api_key_with_prefix(param_name) ⇒ Object

Gets API key (with prefix if set).

Parameters:

  • param_name (String)

    the parameter name of API key auth



166
167
168
169
170
171
172
# File 'lib/orbipay_paymentsapi_client/configuration.rb', line 166

def api_key_with_prefix(param_name)
  if @api_key_prefix[param_name]
    "#{@api_key_prefix[param_name]} #{@api_key[param_name]}"
  else
    @api_key[param_name]
  end
end

#auth_settingsObject

Returns Auth Settings hash for api client.



180
181
182
183
# File 'lib/orbipay_paymentsapi_client/configuration.rb', line 180

def auth_settings
  {
  }
end

#base_urlObject



160
161
162
# File 'lib/orbipay_paymentsapi_client/configuration.rb', line 160

def base_url
  URI.encode(api_end_point)
end

#basic_auth_tokenObject

Gets Basic Auth token string



175
176
177
# File 'lib/orbipay_paymentsapi_client/configuration.rb', line 175

def basic_auth_token
  'Basic ' + ["#{username}:#{password}"].pack('m').delete("\r\n")
end

#configure {|_self| ... } ⇒ Object

Yields:

  • (_self)

Yield Parameters:



156
157
158
# File 'lib/orbipay_paymentsapi_client/configuration.rb', line 156

def configure
  yield(self) if block_given?
end

#set_values(args) ⇒ Object



185
186
187
188
189
190
# File 'lib/orbipay_paymentsapi_client/configuration.rb', line 185

def set_values(args)
  args.each do |attr, arg|
    (class << self; self; end).send(:attr_reader, attr.to_sym)
    instance_variable_set("@#{attr}", arg)
  end
end