class ZipMoney::Response

Attributes

_response[RW]
_responseBody[RW]
_responseHeader[RW]
_statusCode[RW]

Public Class Methods

new(response) click to toggle source

Initializes a new api response object

@param [response] response

@return ZipMoney::Response object

# File lib/zipMoney/response.rb, line 11
def initialize(response)
  raise ArgumentError, "Response doesnot exist" if ((response.nil? || response.empty?) && response.code.nil? && response.code.empty?)
  @_response       = response
  @_statusCode     = response.code
  @_responseBody   = response.body
end

Public Instance Methods

getError() click to toggle source

Returns error string

@return String

# File lib/zipMoney/response.rb, line 77
def getError
  raise ArgumentError, "Response body doesnot exist" if @_responseBody.nil? || @_responseBody.empty?
  resObj = toObject
  resObj.Message
end
getRedirectUrl() click to toggle source

Returns the redirect_url from the checkout and quote calls

@return String

# File lib/zipMoney/response.rb, line 53
def getRedirectUrl
  raise ArgumentError, "Response body doesnot exist" if @_responseBody.nil? || @_responseBody.empty?
  resObj = toObject
  return false if resObj.redirect_url.nil?  || resObj.redirect_url.empty?
  resObj.redirect_url
end
getStatusCode() click to toggle source

Returns the http status code

@return Int

# File lib/zipMoney/response.rb, line 63
def getStatusCode
  @_statusCode
end
isSuccess() click to toggle source

Returns if the api call was a success or failure

@return true|false

# File lib/zipMoney/response.rb, line 70
def isSuccess
  return @_statusCode == 200 || @_statusCode == 201? true : false
end
toHash() click to toggle source

Converts the response body to Hash

@return Hash

# File lib/zipMoney/response.rb, line 21
def toHash
  raise ResponseError, "Response body doesnot exist" if @_responseBody.nil? || @_responseBody.empty?
  JSON.parse(@_responseBody) 
end
toObject() click to toggle source

Converts the response body to Object

@return OpenStruct

# File lib/zipMoney/response.rb, line 29
def toObject
  raise ResponseError, "Response body doesnot exist" if @_responseBody.nil? || @_responseBody.empty?

  if valid_json?(@_responseBody) #Is Json
    responseObject = JSON.parse(@_responseBody, object_class: OpenStruct)
  #else  # Is XML
    #responseObject  = JSON.parse(responseObject.to_json, object_class: OpenStruct)
    #puts responseObject
  end
  responseObject
end
valid_json?(json) click to toggle source
# File lib/zipMoney/response.rb, line 41
def valid_json?(json)
  begin
    JSON.parse(json)
    return true
  rescue Exception => e
    return false
  end
end