Class: Payoneer::Api::Core::ClassMethods::Request
- Inherits:
-
Object
- Object
- Payoneer::Api::Core::ClassMethods::Request
- Defined in:
- lib/payoneer/api/core.rb
Instance Attribute Summary collapse
-
#config ⇒ Object
Returns the value of attribute config.
-
#max_attempts ⇒ Object
Returns the value of attribute max_attempts.
-
#num_attempts ⇒ Object
Returns the value of attribute num_attempts.
Instance Method Summary collapse
- #execute(request_params) ⇒ Object
-
#initialize(config) ⇒ Request
constructor
A new instance of Request.
Constructor Details
#initialize(config) ⇒ Request
Returns a new instance of Request.
38 39 40 41 42 |
# File 'lib/payoneer/api/core.rb', line 38 def initialize(config) self.config = config self.max_attempts = config.proxy.size self.num_attempts = 0 end |
Instance Attribute Details
#config ⇒ Object
Returns the value of attribute config.
37 38 39 |
# File 'lib/payoneer/api/core.rb', line 37 def config @config end |
#max_attempts ⇒ Object
Returns the value of attribute max_attempts.
37 38 39 |
# File 'lib/payoneer/api/core.rb', line 37 def max_attempts @max_attempts end |
#num_attempts ⇒ Object
Returns the value of attribute num_attempts.
37 38 39 |
# File 'lib/payoneer/api/core.rb', line 37 def num_attempts @num_attempts end |
Instance Method Details
#execute(request_params) ⇒ Object
43 44 45 46 47 48 49 50 51 52 53 54 |
# File 'lib/payoneer/api/core.rb', line 43 def execute(request_params) self.num_attempts += 1 config.setup_proxy_if_set RestClient.post(config.api_url, request_params) rescue RestClient::RequestTimeout => e # if Net::OpenTimeout === e.original_exception && if self.max_attempts > self.num_attempts config.rotate_proxy retry end raise e end |