class Gentle::Message
Constants
- NAMESPACE
Attributes
client[R]
document[R]
xml[R]
Public Class Methods
new(options = {})
click to toggle source
# File lib/gentle/message.rb, line 11 def initialize(options = {}) @xml = Nokogiri::XML::Document.parse(options[:xml]) if options[:xml] @client = options[:client] @document = options[:document] end
Public Instance Methods
attributes()
click to toggle source
# File lib/gentle/message.rb, line 32 def attributes raise(MissingClientError.new("client cannot be missing")) unless @client raise(MissingDocumentError.new("document cannot be missing")) unless @document { ClientId: @client.client_id, BusinessUnit: @client.business_unit, DocumentName: @document.filename, DocumentType: @document.type, Warehouse: @document.warehouse, MessageDate: @document.date.utc.iso8601, MessageId: @document.message_id, xmlns: NAMESPACE } end
document_name()
click to toggle source
# File lib/gentle/message.rb, line 28 def document_name @document ? @document.filename : @xml.css('EventMessage').first['DocumentName'] end
document_type()
click to toggle source
# File lib/gentle/message.rb, line 24 def document_type @document ? @document.type : @xml.css('EventMessage').first['DocumentType'] end
to_xml()
click to toggle source
# File lib/gentle/message.rb, line 17 def to_xml builder = Nokogiri::XML::Builder.new do |xml| xml.EventMessage(attributes) end builder.to_xml end