Sha256: 125b34ef6e24f05ec9be1ec5b5298ce4902f7309021779bb3da31456eb4c6bbd

Contents?: true

Size: 741 Bytes

Versions: 1

Compression:

Stored size: 741 Bytes

Contents

module MoneyS3
  module Builders
    class MessageType
      include ParserCore::BaseBuilder

      def builder
        root = Ox::Element.new(name)
        if data.key? :attributes
          data[:attributes].each { |k, v| root[k] = v }
        end

        root << build_element('Status', data[:status], data[:status_attributes]) if data.key? :status
        if data.key? :reference
          element = Ox::Element.new('Reference')
          data[:reference].map { |i| Ox::Element.new('ID') << i }.each { |i| element << i }
          root << element
        end
        if data.key? :error_info
          data[:error_info].each { |i| root << ErrorInfoType.new('ErrorInfo', i).builder }
        end

        root
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
money_s3-1.0.0 lib/money_s3/builders/message_type.rb