Sha256: 7b628b4a7a7c68a89255e2e8058a50969c9d777c3ddc7732d6de10345afc7e15

Contents?: true

Size: 1.14 KB

Versions: 5

Compression:

Stored size: 1.14 KB

Contents

require 'money_s3/builders/base_builder'
require 'money_s3/builders/e_shop_info'
require 'money_s3/builders/ekategorie_type'

module MoneyS3
  module Builders
    class EkategorieType
      include BaseBuilder

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

        root << build_element('ID', data[:id]) if data.key? :id
        root << build_element('Name', data[:name]) if data.key? :name
        root << build_element('Descript', data[:descript]) if data.key? :descript
        root << build_element('IN_Changed', data[:in_changed]) if data.key? :in_changed
        root << build_element('NoPublic', data[:no_public]) if data.key? :no_public

        if data.key? :e_shop_info
          root << EShopInfo.new('eShopInfo', data[:e_shop_info]).builder
        end

        if data.key? :seznam_podr_kategorii
          element = Ox::Element.new('SeznamPodrKategorii')
          data[:seznam_podr_kategorii].each { |i| element << EkategorieType.new('eKategorie', i).builder }
          root << element
        end

        root
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
money_s3-0.10.0 lib/money_s3/builders/ekategorie_type.rb
money_s3-0.9.0 lib/money_s3/builders/ekategorie_type.rb
money_s3-0.8.0 lib/money_s3/builders/ekategorie_type.rb
money_s3-0.7.0 lib/money_s3/builders/ekategorie_type.rb
money_s3-0.6.0 lib/money_s3/builders/ekategorie_type.rb