Class: ZipMoney::Query
- Inherits:
-
Object
- Object
- ZipMoney::Query
- Includes:
- Request
- Defined in:
- lib/zipMoney/api/query.rb
Instance Attribute Summary collapse
-
#params ⇒ Object
Returns the value of attribute params.
Attributes included from Request
Instance Method Summary collapse
-
#do ⇒ Object
Performs the Query api call on zipMoney endpoint.
-
#initialize ⇒ Query
constructor
Initializes a ZipMoney::Query object.
-
#validate ⇒ Object
Performs the parameters validation.
Methods included from Request
Constructor Details
#initialize ⇒ Query
Initializes a ZipMoney::Query object
Returns ZipMoney::Query object
13 14 15 16 17 18 |
# File 'lib/zipMoney/api/query.rb', line 13 def initialize @params = Struct::QueryParams.new @params.orders = Array.new @params. = Struct::Metadata.new @params.version = Struct::Version.new end |
Instance Attribute Details
#params ⇒ Object
Returns the value of attribute params.
5 6 7 |
# File 'lib/zipMoney/api/query.rb', line 5 def params @params end |
Instance Method Details
#do ⇒ Object
Performs the Query api call on zipMoney endpoint
Returns ZipMoney::Query object
23 24 25 26 |
# File 'lib/zipMoney/api/query.rb', line 23 def do validate ZipMoney.api.query(@params) end |
#validate ⇒ Object
Performs the parameters validation
29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/zipMoney/api/query.rb', line 29 def validate raise ArgumentError, "Params emtpy" if @params.nil? @errors = [] @errors << 'at least one order must be provided' if @params.orders.nil? @params.orders.each_with_index do |item,index| @errors << "order.detail[#{index}].id must be provided" if item.id.nil? end raise ZipMoney::RequestError.new("Following error(s) occurred while making request, please resolve them to make the request: #{@errors}") if @errors.any? end |