Class: ActivePayment::Wirecard::Response
- Inherits:
-
Object
- Object
- ActivePayment::Wirecard::Response
show all
- Defined in:
- lib/activepayment/wirecard/response.rb
Instance Method Summary
collapse
Constructor Details
#initialize(xml) ⇒ Response
Returns a new instance of Response.
5
6
7
8
9
10
|
# File 'lib/activepayment/wirecard/response.rb', line 5
def initialize(xml)
@doc = Nokogiri::XML(xml)
if @doc.at_css('WIRECARD_BXML').nil?
raise ActivePayment::Exception, "No valid response"
end
end
|
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
#method_missing(method, *args) ⇒ Object
34
35
36
37
38
39
40
41
42
43
44
45
46
|
# File 'lib/activepayment/wirecard/response.rb', line 34
def method_missing(method, *args)
node_name = method.to_node_name
unless node_name.blank?
node = @doc.at_css(node_name)
unless node.nil?
parse(@doc.at_css(node_name).content)
else
super
end
else
super
end
end
|
Instance Method Details
#[](node_name) ⇒ Object
20
21
22
|
# File 'lib/activepayment/wirecard/response.rb', line 20
def [](node_name)
parse(@doc.at_css(node_name).content)
end
|
#failed? ⇒ Boolean
28
29
30
|
# File 'lib/activepayment/wirecard/response.rb', line 28
def failed?
self.function_result.eql?('NOK')
end
|
#ok? ⇒ Boolean
16
17
18
|
# File 'lib/activepayment/wirecard/response.rb', line 16
def ok?
return_code.to_i.eql?(0)
end
|
#successful? ⇒ Boolean
24
25
26
|
# File 'lib/activepayment/wirecard/response.rb', line 24
def successful?
self.function_result.eql?('ACK') || self.function_result.eql?('PENDING')
end
|
#to_s ⇒ Object
12
13
14
|
# File 'lib/activepayment/wirecard/response.rb', line 12
def to_s
@doc.to_s
end
|