Class: IngramMicro::InboundTransmissionFactory

Inherits:
Object
  • Object
show all
Defined in:
lib/ingram_micro/inbound_transmission_factory.rb

Defined Under Namespace

Classes: Error

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(request_body_string) ⇒ InboundTransmissionFactory

Returns a new instance of InboundTransmissionFactory.



10
11
12
13
14
15
16
17
18
19
20
# File 'lib/ingram_micro/inbound_transmission_factory.rb', line 10

def initialize(request_body_string)
  begin
    Nokogiri::XML(request_body_string) do |config|
      config.options = Nokogiri::XML::ParseOptions::STRICT | Nokogiri::XML::ParseOptions::NONET
    end
  rescue Nokogiri::SyntaxError => e
    raise Error, "#{self.class.name} received malformed XML: #{request_body_string}: #{e.message}"
  end

  @request_body_string = request_body_string
end

Instance Attribute Details

#request_body_stringObject (readonly)

Returns the value of attribute request_body_string.



4
5
6
# File 'lib/ingram_micro/inbound_transmission_factory.rb', line 4

def request_body_string
  @request_body_string
end

Class Method Details

.from_xml(request_body_string) ⇒ Object



6
7
8
# File 'lib/ingram_micro/inbound_transmission_factory.rb', line 6

def self.from_xml(request_body_string)
  new(request_body_string).from_xml
end

Instance Method Details

#from_xmlObject



22
23
24
# File 'lib/ingram_micro/inbound_transmission_factory.rb', line 22

def from_xml
  inbound_transmission_class.new(request_hash)
end