Class: ZipMoney::Configure

Inherits:
Object
  • Object
show all
Includes:
Request
Defined in:
lib/zipMoney/api/configure.rb

Instance Attribute Summary collapse

Attributes included from Request

#errors

Instance Method Summary collapse

Methods included from Request

#validate_item_details

Constructor Details

#initializeConfigure

Initializes a ZipMoney::Configure object

Returns ZipMoney::Configure object



12
13
14
15
16
# File 'lib/zipMoney/api/configure.rb', line 12

def initialize 
  @params      = Struct::ConfigureParams.new
  @params. = Struct::Metadata.new
  @params.version  = Struct::Version.new
end

Instance Attribute Details

#paramsObject

Returns the value of attribute params.



5
6
7
# File 'lib/zipMoney/api/configure.rb', line 5

def params
  @params
end

Instance Method Details

#doObject

Performs the Configure api call on zipMoney endpoint

Returns ZipMoney::Configure object



21
22
23
24
# File 'lib/zipMoney/api/configure.rb', line 21

def do  
  validate
  ZipMoney.api.configure(self.params)
end

#validateObject

Performs the parameters validation

Raises:

  • (ArgumentError)


27
28
29
30
31
32
# File 'lib/zipMoney/api/configure.rb', line 27

def validate
  raise ArgumentError, "Params emtpy" if params.nil? 
  @errors = []
  @errors << 'base_url must be provided' if self.params.txn_id.nil? 
  raise ZipMoney::RequestError.new("Following error(s) occurred while making request, please resolve them to make the request: #{@errors}") if @errors.any?
end