Class: Base
- Inherits:
-
Object
- Object
- Base
- Defined in:
- lib/okra/okra_products/base/base.rb
Direct Known Subclasses
Account, AssetsAndLiabilities, Auth, Balance, Bank, Customer, Identity, Income, OtherProducts, Payment, Revenue, Transactions, Widget
Instance Attribute Summary collapse
-
#okra_object ⇒ Object
readonly
Returns the value of attribute okra_object.
Instance Method Summary collapse
-
#check_passed_parameters(required_params, passed_params) ⇒ Object
method to check if the passed parameters is equal to the expected parameters.
-
#delete_request(endpoint, data) ⇒ Object
method to make a delete request.
-
#get_request(endpoint) ⇒ Object
method to make a get request.
-
#initialize(okra_object = nil) ⇒ Base
constructor
method to initialize this class.
-
#post_request(endpoint, data) ⇒ Object
method to make a post request.
Constructor Details
#initialize(okra_object = nil) ⇒ Base
method to initialize this class
13 14 15 16 17 18 |
# File 'lib/okra/okra_products/base/base.rb', line 13 def initialize(okra_object=nil) unless !okra_object.nil? raise ArgumentError, "Okra Object is required!!!" end @okra_object = okra_object end |
Instance Attribute Details
#okra_object ⇒ Object (readonly)
Returns the value of attribute okra_object.
8 9 10 |
# File 'lib/okra/okra_products/base/base.rb', line 8 def okra_object @okra_object end |
Instance Method Details
#check_passed_parameters(required_params, passed_params) ⇒ Object
method to check if the passed parameters is equal to the expected parameters
79 80 81 82 83 84 85 86 87 |
# File 'lib/okra/okra_products/base/base.rb', line 79 def check_passed_parameters(required_params, passed_params) # This is used to check if the passed authorization parameters matches the required parameters required_params.each do |k, v| if !passed_params.key?(k) raise IncompleteParameterError, "Parameters Incomplete, Missing Parameter: #{k}, Please pass in the complete parameter." end end end |
#delete_request(endpoint, data) ⇒ Object
method to make a delete request
61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 |
# File 'lib/okra/okra_products/base/base.rb', line 61 def delete_request(endpoint, data) begin response = HTTParty.delete(endpoint, { body: data, headers: { "Content-Type" => "application/json", "Authorization" => "Bearer #{okra_object.secret_key}" } }) unless (response.code == 200 || response.code == 201) raise OkraServerError.new(response), "HTTP Code #{response.code}: #{response.body}" end return response end end |
#get_request(endpoint) ⇒ Object
method to make a get request
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/okra/okra_products/base/base.rb', line 22 def get_request(endpoint) begin response = HTTParty.get(endpoint, :headers => { "Authorization" => "Bearer #{okra_object.secret_key}" }) unless (response.code ==200 || response.code == 201) raise OkraServerError.new(response), "HTTP Code #{response.code}: #{response.body}" end return response unless(response.code != 0) raise OkraServerError.new(response), "Server Message: #{response.Message}" end rescue JSON::ParserError => jsonerr raise OkraServerError.new(response), "Invalid result data. Could not parse JSON response body \n #{jsonerr.message}" return response end end |
#post_request(endpoint, data) ⇒ Object
method to make a post request
43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
# File 'lib/okra/okra_products/base/base.rb', line 43 def post_request(endpoint, data) begin response = HTTParty.post(endpoint, { body: data, headers: { "Content-Type" => "application/json", "Authorization" => "Bearer #{okra_object.secret_key}" } }) unless(response.code == 200 || response.code == 201) raise OkraServerError.new(response), "HTTP Code #{response.code}: #{response.body}" end return response end end |