Sha256: 8c307d2d76a68f27384878b4bfc4f3c0858e689ae91d1620d8d80ccdfb5f2c3a

Contents?: true

Size: 611 Bytes

Versions: 1

Compression:

Stored size: 611 Bytes

Contents

require 'money_s3/parsers/base_parser'
require 'money_s3/parsers/reference_type'
require 'money_s3/parsers/error_info_type'

module MoneyS3
  module Parsers
    class MessageType
      include BaseParser

      def status
        at :Status
      end

      def reference
        submodel_at(ReferenceType, :Reference)
      end

      def error_info
        array_of_at(ErrorInfoType, [:ErrorInfo])
      end

      def to_h
        { status: status,
          reference: reference.to_h,
          error_info: error_info.map(&:to_h)
        }.delete_if { |k, v| v.nil? || v.empty? }
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
money_s3-0.4.0 lib/money_s3/parsers/message_type.rb