lib/happymapper.rb in nokogiri-happymapper-0.3.4 vs lib/happymapper.rb in nokogiri-happymapper-0.3.5
- old
+ new
@@ -1,11 +1,8 @@
-dir = File.dirname(__FILE__)
-
+require 'nokogiri'
require 'date'
require 'time'
-require 'rubygems'
-require 'nokogiri'
class Boolean; end
class XmlContent; end
module HappyMapper
@@ -47,11 +44,11 @@
end
def has_xml_content
attr_accessor :xml_content
end
-
+
def has_one(name, type, options={})
element name, type, {:single => true}.merge(options)
end
def has_many(name, type, options={})
@@ -94,11 +91,10 @@
# This is the entry point into the parsing pipeline, so the default
# namespace prefix registered here will propagate down
namespaces = options[:namespaces]
namespaces ||= {}
namespaces = namespaces.merge(xml.collect_namespaces) if xml.respond_to?(:collect_namespaces)
- namespaces = namespaces.merge(xml.namespaces)
if namespaces.has_key?("xmlns")
namespace ||= DEFAULT_NS
namespaces[namespace] = namespaces.delete("xmlns")
elsif namespaces.has_key?(DEFAULT_NS)
@@ -132,22 +128,22 @@
obj.send("#{attr.method_name}=",
attr.from_xml_node(n, namespace, namespaces))
end
elements.each do |elem|
- obj.send("#{elem.method_name}=",
+ obj.send("#{elem.method_name}=",
elem.from_xml_node(n, namespace, namespaces))
end
- obj.send("#{@text_node.method_name}=",
+ obj.send("#{@text_node.method_name}=",
@text_node.from_xml_node(n, namespace, namespaces)) if @text_node
if obj.respond_to?('xml_content=')
n = n.children if n.respond_to?(:children)
- obj.xml_content = n.to_xml
+ obj.xml_content = n.to_xml
end
-
+
obj
end
# per http://libxml.rubyforge.org/rdoc/classes/LibXML/XML/Document.html#M000354
nodes = nil
@@ -159,9 +155,9 @@
end
end
end
end
-require File.join(dir, 'happymapper/item')
-require File.join(dir, 'happymapper/attribute')
-require File.join(dir, 'happymapper/element')
-require File.join(dir, 'happymapper/text_node')
+require 'happymapper/item'
+require 'happymapper/attribute'
+require 'happymapper/element'
+require 'happymapper/text_node'