class Correios::SRO::RequestBuilder
Constants
- LANGUAGE
- NAMESPACES
- QUERY_TYPES
- RESULT_MODES
Public Class Methods
new(tracker)
click to toggle source
# File lib/correios/sro/request_builder.rb, line 16 def initialize(tracker) @tracker = tracker end
Public Instance Methods
build_xml()
click to toggle source
# File lib/correios/sro/request_builder.rb, line 20 def build_xml Nokogiri::XML::Builder.new do |builder| builder[:soapenv].Envelope(NAMESPACES) { builder[:soapenv].Header { } builder[:soapenv].Body { builder[:res].buscaEventosLista() { builder.usuario(@tracker.user) { builder.parent.namespace = nil } builder.senha(@tracker.password) { builder.parent.namespace = nil } builder.tipo(QUERY_TYPES[@tracker.query_type]) { builder.parent.namespace = nil } builder.resultado(RESULT_MODES[@tracker.result_mode]) { builder.parent.namespace = nil } builder.lingua(LANGUAGE[@tracker.language]) { builder.parent.namespace = nil } @tracker.object_numbers.each do |object_number| builder.objetos(object_number) { builder.parent.namespace = nil } end } } } end.to_xml end