Sha256: 4b859d59bc820dfb4140f926304676898c2fe0cb7560f9b7548304483d87dff0

Contents?: true

Size: 1.02 KB

Versions: 15

Compression:

Stored size: 1.02 KB

Contents

module DataMapper
  module Serialize
    module XMLSerializers
      module LibXML
        def self.new_document
          ::LibXML::XML::Document.new
        end

        def self.root_node(doc, name, attrs = {})
          root = ::LibXML::XML::Node.new(name)
          attrs.each do |attr_name, attr_val|
            root[attr_name] = attr_val
          end
          doc.root.nil? ? doc.root = root : doc.root << root
          root
        end

        def self.add_node(parent, name, value, attrs = {})
          value_str = value.to_s unless value.nil?
          node = ::LibXML::XML::Node.new(name, value_str)
          attrs.each do |attr_name, attr_val|
            node[attr_name] = attr_val
          end
          parent << node
          node
        end

        def self.add_xml(parent, xml)
          parent << xml.root.copy(true)
        end

        def self.add_xml(parent, xml)
          parent << xml.root.copy(true)
        end

        def self.output(doc)
          doc.root.to_s
        end
      end
    end
  end
end

Version data entries

15 entries across 15 versions & 1 rubygems

Version Path
ixtlan-0.4.3 lib/dm-serializer/xml_serializers/libxml.rb
ixtlan-0.4.2 lib/dm-serializer/xml_serializers/libxml.rb
ixtlan-0.4.1 lib/dm-serializer/xml_serializers/libxml.rb
ixtlan-0.4.0 lib/dm-serializer/xml_serializers/libxml.rb
ixtlan-0.4.0.pre5 lib/dm-serializer/xml_serializers/libxml.rb
ixtlan-0.4.0.pre4 lib/dm-serializer/xml_serializers/libxml.rb
ixtlan-0.4.0.pre3 lib/dm-serializer/xml_serializers/libxml.rb
ixtlan-0.4.0.pre2 lib/dm-serializer/xml_serializers/libxml.rb
ixtlan-0.4.0.pre lib/dm-serializer/xml_serializers/libxml.rb
ixtlan-0.3.0 lib/dm-serializer/xml_serializers/libxml.rb
ixtlan-0.2.4 lib/dm-serializer/xml_serializers/libxml.rb
ixtlan-0.2.3 lib/dm-serializer/xml_serializers/libxml.rb
ixtlan-0.2.2 lib/dm-serializer/xml_serializers/libxml.rb
ixtlan-0.2.1 lib/dm-serializer/xml_serializers/libxml.rb
ixtlan-0.2.0 lib/dm-serializer/xml_serializers/libxml.rb