class Fiscalizer::Deserializers::Base
Attributes
object[R]
raw_response[R]
Public Class Methods
new(raw_response, object)
click to toggle source
# File lib/fiscalizer/deserializers/base.rb, line 6 def initialize(raw_response, object) @raw_response = raw_response @object = object end
Public Instance Methods
errors()
click to toggle source
# File lib/fiscalizer/deserializers/base.rb, line 25 def errors @errors ||= begin error_nodes.map do |error_node| { code: element_value(error_node, 'SifraGreske'), message: element_value(error_node, 'PorukaGreske') } end end end
errors?()
click to toggle source
# File lib/fiscalizer/deserializers/base.rb, line 21 def errors? error_nodes.any? end
processed_at()
click to toggle source
# File lib/fiscalizer/deserializers/base.rb, line 17 def processed_at element_value(root, 'DatumVrijeme') end
uuid()
click to toggle source
# File lib/fiscalizer/deserializers/base.rb, line 13 def uuid element_value(root, 'IdPoruke') end
Private Instance Methods
element_value(root_node, element)
click to toggle source
# File lib/fiscalizer/deserializers/base.rb, line 38 def element_value(root_node, element) element = find(root_node, element).first return if element.nil? element.text end
error_nodes()
click to toggle source
# File lib/fiscalizer/deserializers/base.rb, line 53 def error_nodes @error_nodes ||= find(root, 'Greska') end
find(root_node, element)
click to toggle source
# File lib/fiscalizer/deserializers/base.rb, line 45 def find(root_node, element) root_node.xpath("//tns:#{element}", 'tns' => TNS) end
root()
click to toggle source
# File lib/fiscalizer/deserializers/base.rb, line 49 def root Nokogiri::XML(raw_response).root end