smile-xml 1.0.0-jruby → 1.0.2-jruby

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (88) hide show
  1. data/lib/smile-xml.jar +0 -0
  2. data/src/main/java/smile/xml/AttrJ.java +160 -0
  3. data/src/main/java/smile/xml/AttributesJ.java +212 -0
  4. data/src/main/java/smile/xml/BaseJ.java +60 -0
  5. data/src/main/java/smile/xml/DocumentJ.java +435 -0
  6. data/src/main/java/smile/xml/EncodingJ.java +94 -0
  7. data/src/main/java/smile/xml/ErrorJ.java +162 -0
  8. data/src/main/java/smile/xml/NamespaceJ.java +67 -0
  9. data/src/main/java/smile/xml/NamespacesJ.java +62 -0
  10. data/src/main/java/smile/xml/NodeJ.java +1029 -0
  11. data/src/main/java/smile/xml/NodeSetJ.java +90 -0
  12. data/src/main/java/smile/xml/ParserContextJ.java +44 -0
  13. data/src/main/java/smile/xml/ParserJ.java +196 -0
  14. data/src/main/java/smile/xml/ParserOptionsJ.java +58 -0
  15. data/src/main/java/smile/xml/ReaderJ.java +34 -0
  16. data/src/main/java/smile/xml/SchemaJ.java +66 -0
  17. data/src/main/java/smile/xml/SmileXML.java +65 -0
  18. data/src/main/java/smile/xml/XmlJ.java +58 -0
  19. data/src/main/java/smile/xml/sax/CallbackHandler.java +113 -0
  20. data/src/main/java/smile/xml/sax/SaxParserCallbacksJ.java +71 -0
  21. data/src/main/java/smile/xml/sax/SaxParserJ.java +153 -0
  22. data/src/main/java/smile/xml/util/UtilJ.java +424 -0
  23. data/src/main/java/smile/xml/xpath/CustomNamespaceContext.java +59 -0
  24. data/src/main/java/smile/xml/xpath/XPathContextJ.java +154 -0
  25. data/src/main/java/smile/xml/xpath/XPathExpressionJ.java +62 -0
  26. data/src/main/java/smile/xml/xpath/XPathJ.java +36 -0
  27. data/src/main/java/smile/xml/xpath/XPathObjectJ.java +196 -0
  28. data/src/main/java/smile/xml/xpath/XPointerJ.java +32 -0
  29. data/src/main/ruby/xml/libxml.rb +1 -0
  30. data/src/main/ruby/xml.rb +5 -0
  31. data/src/test/ruby/etc_doc_to_s.rb +21 -0
  32. data/src/test/ruby/ets_doc_file.rb +17 -0
  33. data/src/test/ruby/ets_doc_to_s.rb +23 -0
  34. data/src/test/ruby/ets_gpx.rb +28 -0
  35. data/src/test/ruby/ets_node_gc.rb +23 -0
  36. data/src/test/ruby/ets_test.xml +2 -0
  37. data/src/test/ruby/ets_tsr.rb +11 -0
  38. data/src/test/ruby/model/atom.xml +13 -0
  39. data/src/test/ruby/model/bands.iso-8859-1.xml +5 -0
  40. data/src/test/ruby/model/bands.utf-8.xml +5 -0
  41. data/src/test/ruby/model/bands.xml +5 -0
  42. data/src/test/ruby/model/books.xml +146 -0
  43. data/src/test/ruby/model/merge_bug_data.xml +58 -0
  44. data/src/test/ruby/model/ruby-lang.html +238 -0
  45. data/src/test/ruby/model/rubynet.xml +79 -0
  46. data/src/test/ruby/model/shiporder.rnc +28 -0
  47. data/src/test/ruby/model/shiporder.rng +86 -0
  48. data/src/test/ruby/model/shiporder.xml +23 -0
  49. data/src/test/ruby/model/shiporder.xsd +31 -0
  50. data/src/test/ruby/model/soap.xml +27 -0
  51. data/src/test/ruby/model/xinclude.xml +5 -0
  52. data/src/test/ruby/smile_xml_test.rb +64 -0
  53. data/src/test/ruby/tc_attr.rb +191 -0
  54. data/src/test/ruby/tc_attr_decl.rb +133 -0
  55. data/src/test/ruby/tc_attributes.rb +135 -0
  56. data/src/test/ruby/tc_deprecated_require.rb +13 -0
  57. data/src/test/ruby/tc_document.rb +162 -0
  58. data/src/test/ruby/tc_document_write.rb +212 -0
  59. data/src/test/ruby/tc_dtd.rb +125 -0
  60. data/src/test/ruby/tc_error.rb +150 -0
  61. data/src/test/ruby/tc_html_parser.rb +140 -0
  62. data/src/test/ruby/tc_namespace.rb +62 -0
  63. data/src/test/ruby/tc_namespaces.rb +210 -0
  64. data/src/test/ruby/tc_node.rb +273 -0
  65. data/src/test/ruby/tc_node_cdata.rb +51 -0
  66. data/src/test/ruby/tc_node_comment.rb +33 -0
  67. data/src/test/ruby/tc_node_copy.rb +42 -0
  68. data/src/test/ruby/tc_node_edit.rb +178 -0
  69. data/src/test/ruby/tc_node_text.rb +73 -0
  70. data/src/test/ruby/tc_node_write.rb +108 -0
  71. data/src/test/ruby/tc_node_xlink.rb +29 -0
  72. data/src/test/ruby/tc_parser.rb +371 -0
  73. data/src/test/ruby/tc_parser_context.rb +189 -0
  74. data/src/test/ruby/tc_properties.rb +40 -0
  75. data/src/test/ruby/tc_reader.rb +306 -0
  76. data/src/test/ruby/tc_relaxng.rb +54 -0
  77. data/src/test/ruby/tc_sax_parser.rb +340 -0
  78. data/src/test/ruby/tc_schema.rb +59 -0
  79. data/src/test/ruby/tc_traversal.rb +222 -0
  80. data/src/test/ruby/tc_xinclude.rb +21 -0
  81. data/src/test/ruby/tc_xml.rb +226 -0
  82. data/src/test/ruby/tc_xpath.rb +210 -0
  83. data/src/test/ruby/tc_xpath_context.rb +80 -0
  84. data/src/test/ruby/tc_xpath_expression.rb +38 -0
  85. data/src/test/ruby/tc_xpointer.rb +74 -0
  86. data/src/test/ruby/test_helper.rb +23 -0
  87. data/src/test/ruby/test_suite.rb +41 -0
  88. metadata +91 -5
@@ -0,0 +1,210 @@
1
+ # encoding: UTF-8
2
+
3
+ require './test_helper'
4
+ require 'tempfile'
5
+ require 'test/unit'
6
+
7
+ class TestXPath < Test::Unit::TestCase
8
+ def setup
9
+ @doc = XML::Document.file(File.join(File.dirname(__FILE__), 'model/soap.xml'))
10
+ end
11
+
12
+ def teardown
13
+ @doc = nil
14
+ end
15
+
16
+ def test_doc_find
17
+ nodes = @doc.find('/soap:Envelope')
18
+ assert_instance_of(XML::XPath::Object, nodes)
19
+ assert_equal(1, nodes.length)
20
+ assert_equal(nodes.xpath_type, XML::XPath::NODESET)
21
+ end
22
+
23
+ def test_doc_find_first
24
+ node = @doc.find_first('/soap:Envelope/soap:Body')
25
+ assert_instance_of(XML::Node, node)
26
+ end
27
+
28
+ def test_ns
29
+ nodes = @doc.find('//ns1:IdAndName', 'ns1:http://domain.somewhere.com')
30
+ assert_equal(3, nodes.length)
31
+ end
32
+
33
+ def test_ns_array
34
+ nodes = @doc.find('//ns1:IdAndName', ['ns1:http://domain.somewhere.com'])
35
+ assert_equal(3, nodes.length)
36
+ end
37
+
38
+ def test_default_ns1
39
+ # Find all nodes with http://services.somewhere.com namespace
40
+ nodes = @doc.find('//*[namespace-uri()="http://services.somewhere.com"]')
41
+ assert_equal(2, nodes.length)
42
+ assert_equal('getManufacturerNamesResponse', nodes[0].name)
43
+ assert_equal('IDAndNameList', nodes[1].name)
44
+ end
45
+
46
+ def test_default_ns2
47
+ # Find all nodes with http://services.somewhere.com namespace
48
+ nodes = @doc.find('//ns:*', 'ns:http://services.somewhere.com')
49
+ assert_equal(2, nodes.length)
50
+ assert_equal('getManufacturerNamesResponse', nodes[0].name)
51
+ assert_equal('IDAndNameList', nodes[1].name)
52
+
53
+ # Get getManufacturerNamesResponse node
54
+ nodes = @doc.find('//ns:getManufacturerNamesResponse', 'ns:http://services.somewhere.com')
55
+ assert_equal(1, nodes.length)
56
+
57
+ # Get IdAndName node
58
+ nodes = @doc.find('/soap:Envelope/soap:Body/ns0:getManufacturerNamesResponse/ns0:IDAndNameList/ns1:IdAndName',
59
+ ['ns0:http://services.somewhere.com', 'ns1:http://domain.somewhere.com'])
60
+ assert_equal(3, nodes.length)
61
+ end
62
+
63
+ def test_default_ns3
64
+ # Find all nodes with http://services.somewhere.com namespace
65
+ nodes = @doc.find('//ns:*', 'ns' => 'http://services.somewhere.com')
66
+ assert_equal(2, nodes.length)
67
+ assert_equal('getManufacturerNamesResponse', nodes[0].name)
68
+ assert_equal('IDAndNameList', nodes[1].name)
69
+ end
70
+
71
+ # def test_default_ns4
72
+ # # Find all nodes with http://services.somewhere.com namespace
73
+ # nodes = @doc.find('//ns:*', :ns => 'http://services.somewhere.com')
74
+ # assert_equal(2, nodes.length)
75
+ # assert_equal('getManufacturerNamesResponse', nodes[0].name)
76
+ # assert_equal('IDAndNameList', nodes[1].name)
77
+ # end
78
+ #
79
+ # def test_default_ns5
80
+ # # Find all nodes with http://services.somewhere.com namespace
81
+ # XML::Namespace.new(@doc.root, 'ns', 'http://services.somewhere.com')
82
+ # nodes = @doc.find('//ns:*')
83
+ # assert_equal(2, nodes.length)
84
+ # assert_equal('getManufacturerNamesResponse', nodes[0].name)
85
+ # assert_equal('IDAndNameList', nodes[1].name)
86
+ # end
87
+ #
88
+ # def test_attribute_ns
89
+ # # Pull all nodes with http://services.somewhere.com namespace
90
+ # nodes = @doc.find('@soap:encodingStyle')
91
+ # assert_equal(1, nodes.length)
92
+ # assert_equal('encodingStyle', nodes.first.name)
93
+ # assert_equal('http://www.w3.org/2001/12/soap-encoding', nodes.first.value)
94
+ # end
95
+ #
96
+ # def test_register_default_ns
97
+ # doc = XML::Document.file(File.join(File.dirname(__FILE__), 'model/atom.xml'))
98
+ #
99
+ # # No namespace has been yet defined
100
+ # assert_raise(XML::Error) do
101
+ # node = doc.find("atom:title")
102
+ # end
103
+ #
104
+ # node = doc.find('atom:title', 'atom:http://www.w3.org/2005/Atom')
105
+ # assert_not_nil(node)
106
+ #
107
+ # # Register namespace
108
+ # doc.root.namespaces.default_prefix = 'atom'
109
+ # node = doc.find("atom:title")
110
+ # assert_not_nil(node)
111
+ # end
112
+ #
113
+ # def test_node_find
114
+ # nodes = @doc.find('//ns1:IdAndName', 'ns1:http://domain.somewhere.com')
115
+ # node = nodes.first
116
+ #
117
+ # # Since we are searching on the node, don't have to register namespace
118
+ # nodes = node.find('ns1:name')
119
+ # assert_equal(1, nodes.length)
120
+ # assert_equal(nodes.first.object_id, nodes.last.object_id, 'First and last should be the same')
121
+ # assert_equal('name', nodes.first.name)
122
+ # assert_equal('man1', nodes.first.content)
123
+ # end
124
+ #
125
+ # def test_node_find_first
126
+ # node = @doc.find_first('//ns1:IdAndName', 'ns1:http://domain.somewhere.com')
127
+ #
128
+ # # Since we are searching on the node, don't have to register namespace
129
+ # node = node.find_first('ns1:name')
130
+ # assert_equal('name', node.name)
131
+ # assert_equal('man1', node.content)
132
+ # end
133
+ #
134
+ # def test_node_no_doc
135
+ # node = XML::Node.new('header', 'some content')
136
+ # assert_raise(TypeError) do
137
+ # node = node.find_first('/header')
138
+ # end
139
+ # end
140
+ #
141
+ # def test_memory
142
+ # # This sometimes causes a segmentation fault because
143
+ # # an xml document is sometimes freed before the
144
+ # # xpath_object used to query it. When the xpath_object
145
+ # # is free, it iterates over its results which are pointers
146
+ # # to the document's nodes. A segmentation fault then happens.
147
+ #
148
+ # 1000.times do
149
+ # doc = XML::Document.new('1.0')
150
+ # doc.root = XML::Node.new("header")
151
+ #
152
+ # 1000.times do
153
+ # doc.root << XML::Node.new("footer")
154
+ # end
155
+ #
156
+ # nodes = doc.find('/header/footer')
157
+ # end
158
+ # end
159
+ #
160
+ # # Test that document doesn't get freed before nodes
161
+ # def test_xpath_free
162
+ # doc = XML::Document.file(File.join(File.dirname(__FILE__), 'model/soap.xml'))
163
+ # nodes = doc.find('//*')
164
+ # GC.start
165
+ # assert_equal('Envelope', nodes.first.name)
166
+ # end
167
+ #
168
+ # def test_xpath_namespace_nodes
169
+ # doc = XML::Document.string('<feed xmlns="http://www.w3.org/2005/Atom" xmlns:xhtml="http://www.w3.org/1999/xhtml"><entry/></feed>')
170
+ # nodes = doc.find('//atom:entry|namespace::*', :atom => "http://www.w3.org/2005/Atom")
171
+ # assert_equal(4, nodes.length)
172
+ #
173
+ # node = nodes[0]
174
+ # assert_equal(XML::Node::ELEMENT_NODE, node.node_type)
175
+ #
176
+ # node = nodes[1]
177
+ # assert_equal(XML::Node::NAMESPACE_DECL, node.node_type)
178
+ #
179
+ # node = nodes[2]
180
+ # assert_equal(XML::Node::NAMESPACE_DECL, node.node_type)
181
+ #
182
+ # node = nodes[3]
183
+ # assert_equal(XML::Node::NAMESPACE_DECL, node.node_type)
184
+ # end
185
+ #
186
+ # # Test to make sure we don't get nil on empty results.
187
+ # # This is also to test that we don't segfault due to our C code getting a NULL pointer
188
+ # # and not handling it properly.
189
+ # def test_xpath_empty_result
190
+ # doc = XML::Document.string('<html><body><p>Welcome to XHTML land!</p></body></html>')
191
+ # nodes = doc.find("//object/param[translate(@name, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz') = 'wmode']")
192
+ # assert_not_nil nodes
193
+ # end
194
+ #
195
+ # def test_invalid_expression
196
+ # xml = LibXML::XML::Document.string('<a></a>')
197
+ #
198
+ # # Using the expression twice used to cause a Segmentation Fault
199
+ # error = assert_raise(XML::Error) do
200
+ # xml.find('//a/')
201
+ # end
202
+ # assert_equal("Error: Invalid expression.", error.to_s)
203
+ #
204
+ # # Try again - this used to cause a Segmentation Fault
205
+ # error = assert_raise(XML::Error) do
206
+ # xml.find('//a/')
207
+ # end
208
+ # assert_equal("Error: Invalid expression.", error.to_s)
209
+ # end
210
+ end
@@ -0,0 +1,80 @@
1
+ # encoding: UTF-8
2
+
3
+ require './test_helper'
4
+ require "tempfile"
5
+ require "test/unit"
6
+
7
+ class TestXPathContext < Test::Unit::TestCase
8
+ SOAP_PREFIX = 'soap'
9
+ SOAP_URI = 'http://schemas.xmlsoap.org/soap/envelope/'
10
+
11
+ NS0_PREFIX = 'ns0'
12
+ NS0_URI = 'http://services.somewhere.com'
13
+
14
+ def setup
15
+ doc = XML::Document.file(File.join(File.dirname(__FILE__), 'model/soap.xml'))
16
+ @context = XML::XPath::Context.new(doc)
17
+ end
18
+
19
+ def teardown()
20
+ @context = nil
21
+ end
22
+
23
+ #def test_no_ns
24
+ #assert_raise(XML::XPath::InvalidPath) do
25
+ #@context.find('/soap:Envelope')
26
+ #end
27
+ #end
28
+
29
+ def test_ns_register
30
+ @context.register_namespace(SOAP_PREFIX, SOAP_URI)
31
+ @context.register_namespace(NS0_PREFIX, NS0_URI)
32
+ nodes = @context.find('/soap:Envelope/soap:Body/ns0:getManufacturerNamesResponse')
33
+ assert_equal(1, nodes.length)
34
+ end
35
+
36
+ def test_ns_register_string
37
+ @context.register_namespaces("#{SOAP_PREFIX}:#{SOAP_URI}")
38
+ @context.register_namespaces("#{NS0_PREFIX}:#{NS0_URI}")
39
+ nodes = @context.find('/soap:Envelope/soap:Body/ns0:getManufacturerNamesResponse')
40
+ assert_equal(1, nodes.length)
41
+ end
42
+
43
+ def test_ns_register_array
44
+ @context.register_namespaces(["#{SOAP_PREFIX}:#{SOAP_URI}", "#{NS0_PREFIX}:#{NS0_URI}"])
45
+ nodes = @context.find('/soap:Envelope/soap:Body/ns0:getManufacturerNamesResponse')
46
+ assert_equal(1, nodes.length)
47
+ end
48
+
49
+ def test_ns_register_hash
50
+ @context.register_namespaces(SOAP_PREFIX => SOAP_URI,
51
+ NS0_PREFIX => NS0_URI)
52
+
53
+ nodes = @context.find('/soap:Envelope/soap:Body/ns0:getManufacturerNamesResponse')
54
+ assert_equal(1, nodes.length)
55
+ end
56
+
57
+ def test_ns_register_node
58
+ @context.register_namespaces_from_node(@context.doc.root)
59
+ nodes = @context.find('/soap:Envelope')
60
+ assert_equal(1, nodes.length)
61
+ end
62
+
63
+ def test_node
64
+ @context.register_namespaces_from_node(@context.doc.root)
65
+
66
+ nodes = @context.find('soap:Body')
67
+ assert_equal(0, nodes.length)
68
+
69
+
70
+ @context.node = @context.doc.root.child.next
71
+ nodes = @context.find('soap:Body')
72
+ assert_equal(0, nodes.length)
73
+ end
74
+
75
+ def test_cache
76
+ @context.enable_cache
77
+ @context.enable_cache(10)
78
+ @context.disable_cache
79
+ end
80
+ end
@@ -0,0 +1,38 @@
1
+ # encoding: UTF-8
2
+
3
+ require './test_helper'
4
+
5
+ require 'test/unit'
6
+
7
+ class TestXPathExpression < Test::Unit::TestCase
8
+ def setup
9
+ xp = XML::Parser.string('<ruby_array uga="booga" foo="bar"><fixnum>one</fixnum><fixnum>two</fixnum></ruby_array>')
10
+ @doc = xp.parse
11
+ end
12
+
13
+ def teardown
14
+ @doc = nil
15
+ end
16
+
17
+ def test_nodes
18
+ expr = XML::XPath::Expression.compile('/ruby_array/fixnum')
19
+ set = @doc.find(expr)
20
+ assert_instance_of(XML::XPath::Object, set)
21
+ assert_equal(2, set.size)
22
+ end
23
+
24
+ def test_find_class
25
+ expr = XML::XPath::Expression.new('/ruby_array/fixnum')
26
+ set = @doc.find(expr)
27
+ assert_instance_of(XML::XPath::Object, set)
28
+ assert_equal(2, set.size)
29
+ end
30
+
31
+ def test_find_invalid
32
+ error = assert_raise(TypeError) do
33
+ set = @doc.find(999)
34
+ end
35
+ assert_equal('Argument should be an intance of a String or XPath::Expression',
36
+ error.to_s)
37
+ end
38
+ end
@@ -0,0 +1,74 @@
1
+ # encoding: UTF-8
2
+
3
+ require './test_helper'
4
+ require "test/unit"
5
+
6
+ class TC_XML_XPointer < Test::Unit::TestCase
7
+ def setup()
8
+ xp = XML::Parser.string('<!DOCTYPE ra [<!ELEMENT ra (foo+)><!ATTLIST ra id ID #IMPLIED><!ELEMENT foo (#PCDATA)><!ATTLIST foo id ID #IMPLIED>]><ra id="start"><foo id="one">one</foo><foo id="two">two</foo><foo id="three">three</foo></ra>')
9
+ @doc = xp.parse
10
+ assert_instance_of(XML::Document, @doc)
11
+ @root = @doc.root
12
+ assert_instance_of(XML::Node, @root)
13
+ end
14
+
15
+ def teardown()
16
+ @doc = nil
17
+ @root = nil
18
+ @xptr = nil
19
+ end
20
+
21
+ def test_libxml_xpointer_id
22
+ xptr = @root.pointer('xpointer(id("two"))')
23
+ assert_instance_of(XML::XPath::Object, xptr)
24
+ xptr.each do |node|
25
+ # It seems from the spec that the pointer should
26
+ # be the whole node, rather than just the ID attr.
27
+ assert_equal('two', node.content)
28
+ assert_instance_of(XML::Node, node)
29
+ assert_equal('two', node['id'])
30
+ end
31
+
32
+ # FIXME: Not sure at all about this kind of range
33
+ if ENV['NOTWORKING']
34
+ @xptr = @root.pointer('xpointer(id("two")) xpointer(id("three"))')
35
+ assert_instance_of(XML::XPath, @xptr)
36
+ assert_instance_of(XML::Node::Set, @xptr.set)
37
+ assert_equal(2, @xptr.set.length)
38
+ for n in @xptr.set
39
+ assert_match(/two|three/, n.to_s)
40
+ end
41
+ end
42
+ end
43
+
44
+ # FIXME: There is a bug in these ranges...
45
+ if ENV['NOTWORKING']
46
+ def test_libxml_xpointer_range()
47
+ nstart = nend = nil
48
+ @xptr = @root.pointer('xpointer(id("one"))').set
49
+ @xptr.each{|n| nstart = n}
50
+ assert_instance_of(XML::Node, nstart)
51
+ @xptr = @root.pointer('xpointer(id("three"))').set
52
+ @xptr.each{|n| nend = n}
53
+ assert_instance_of(XML::Node, nend)
54
+ range = XML::XPointer.range(nstart, nend)
55
+ assert_instance_of(XML::XPath, range)
56
+ assert_instance_of(XML::Node::Set, range.set)
57
+
58
+ for n in range.set
59
+ assert_match(/one|two|three/, n.to_s)
60
+ end
61
+ assert_equal(3, range.set.length)
62
+ end
63
+ end
64
+
65
+ # def test_libxml_xpointer_start_point()
66
+ # @xptr = @root.pointer('xpointer(start-point("one"))')
67
+ # assert_instance_of(XML::XPath, @xptr)
68
+ # set = @xptr.set
69
+ # assert_instance_of(XML::Node::Set, set)
70
+ # for n in set
71
+ # assert_match(/one|two|three/, n.to_s)
72
+ # end
73
+ # end
74
+ end
@@ -0,0 +1,23 @@
1
+ # encoding: UTF-8
2
+
3
+ # To make testing/debugging easier, test within this source tree versus an installed gem
4
+
5
+ #dir = File.dirname(__FILE__)
6
+ #root = File.expand_path(File.join(dir, '..'))
7
+ #lib = File.expand_path(File.join(root, 'lib'))
8
+ #ext = File.expand_path(File.join(root, 'ext', 'libxml'))
9
+
10
+ #$LOAD_PATH << lib
11
+ #$LOAD_PATH << ext
12
+
13
+ #require 'xml'
14
+
15
+
16
+ def remove_header_declaration( xml )
17
+ if xml.strip.start_with?( '<?xml')
18
+ i = xml.index( '?>', 3 )
19
+ xml[ i+2, xml.length-i ]
20
+ else
21
+ xml
22
+ end
23
+ end
@@ -0,0 +1,41 @@
1
+ # encoding: UTF-8
2
+
3
+ # Change to current directory so relative
4
+ # requires work.
5
+ dir = File.dirname(__FILE__)
6
+ Dir.chdir(dir)
7
+
8
+ require './tc_attr'
9
+ require './tc_attr_decl'
10
+ require './tc_attributes'
11
+ require './tc_document'
12
+ require './tc_document_write'
13
+ require './tc_dtd'
14
+ require './tc_error'
15
+ require './tc_html_parser'
16
+ require './tc_namespace'
17
+ require './tc_namespaces'
18
+ require './tc_node'
19
+ require './tc_node_cdata'
20
+ require './tc_node_comment'
21
+ require './tc_node_copy'
22
+ require './tc_node_edit'
23
+ require './tc_node_text'
24
+ require './tc_node_write'
25
+ require './tc_node_xlink'
26
+ require './tc_parser'
27
+ require './tc_parser_context'
28
+ require './tc_reader'
29
+ require './tc_relaxng'
30
+ require './tc_sax_parser'
31
+ require './tc_schema'
32
+ require './tc_traversal'
33
+ require './tc_xinclude'
34
+ require './tc_xpath'
35
+ require './tc_xpath_context'
36
+ require './tc_xpath_expression'
37
+ require './tc_xpointer'
38
+
39
+ # Compatibility
40
+ require './tc_properties'
41
+ require './tc_deprecated_require'
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: smile-xml
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 1.0.0
5
+ version: 1.0.2
6
6
  platform: jruby
7
7
  authors:
8
8
  - Andre Kullmann
@@ -10,11 +10,11 @@ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
12
 
13
- date: 2012-06-30 00:00:00 Z
13
+ date: 2012-07-06 00:00:00 Z
14
14
  dependencies: []
15
15
 
16
- description:
17
- email:
16
+ description: ""
17
+ email: andre [dot] kullmann [at] googlemail [dot] com
18
18
  executables: []
19
19
 
20
20
  extensions: []
@@ -25,7 +25,93 @@ files:
25
25
  - lib/smile-xml.jar
26
26
  - lib/xml.rb
27
27
  - lib/xml/libxml.rb
28
- homepage:
28
+ - src/main/java/smile/xml/AttributesJ.java
29
+ - src/main/java/smile/xml/AttrJ.java
30
+ - src/main/java/smile/xml/BaseJ.java
31
+ - src/main/java/smile/xml/DocumentJ.java
32
+ - src/main/java/smile/xml/EncodingJ.java
33
+ - src/main/java/smile/xml/ErrorJ.java
34
+ - src/main/java/smile/xml/NamespaceJ.java
35
+ - src/main/java/smile/xml/NamespacesJ.java
36
+ - src/main/java/smile/xml/NodeJ.java
37
+ - src/main/java/smile/xml/NodeSetJ.java
38
+ - src/main/java/smile/xml/ParserContextJ.java
39
+ - src/main/java/smile/xml/ParserJ.java
40
+ - src/main/java/smile/xml/ParserOptionsJ.java
41
+ - src/main/java/smile/xml/ReaderJ.java
42
+ - src/main/java/smile/xml/SchemaJ.java
43
+ - src/main/java/smile/xml/SmileXML.java
44
+ - src/main/java/smile/xml/XmlJ.java
45
+ - src/main/java/smile/xml/sax/CallbackHandler.java
46
+ - src/main/java/smile/xml/sax/SaxParserCallbacksJ.java
47
+ - src/main/java/smile/xml/sax/SaxParserJ.java
48
+ - src/main/java/smile/xml/util/UtilJ.java
49
+ - src/main/java/smile/xml/xpath/CustomNamespaceContext.java
50
+ - src/main/java/smile/xml/xpath/XPathContextJ.java
51
+ - src/main/java/smile/xml/xpath/XPathExpressionJ.java
52
+ - src/main/java/smile/xml/xpath/XPathJ.java
53
+ - src/main/java/smile/xml/xpath/XPathObjectJ.java
54
+ - src/main/java/smile/xml/xpath/XPointerJ.java
55
+ - src/main/ruby/xml.rb
56
+ - src/main/ruby/xml/libxml.rb
57
+ - src/test/ruby/etc_doc_to_s.rb
58
+ - src/test/ruby/ets_doc_file.rb
59
+ - src/test/ruby/ets_doc_to_s.rb
60
+ - src/test/ruby/ets_gpx.rb
61
+ - src/test/ruby/ets_node_gc.rb
62
+ - src/test/ruby/ets_test.xml
63
+ - src/test/ruby/ets_tsr.rb
64
+ - src/test/ruby/smile_xml_test.rb
65
+ - src/test/ruby/tc_attr.rb
66
+ - src/test/ruby/tc_attributes.rb
67
+ - src/test/ruby/tc_attr_decl.rb
68
+ - src/test/ruby/tc_deprecated_require.rb
69
+ - src/test/ruby/tc_document.rb
70
+ - src/test/ruby/tc_document_write.rb
71
+ - src/test/ruby/tc_dtd.rb
72
+ - src/test/ruby/tc_error.rb
73
+ - src/test/ruby/tc_html_parser.rb
74
+ - src/test/ruby/tc_namespace.rb
75
+ - src/test/ruby/tc_namespaces.rb
76
+ - src/test/ruby/tc_node.rb
77
+ - src/test/ruby/tc_node_cdata.rb
78
+ - src/test/ruby/tc_node_comment.rb
79
+ - src/test/ruby/tc_node_copy.rb
80
+ - src/test/ruby/tc_node_edit.rb
81
+ - src/test/ruby/tc_node_text.rb
82
+ - src/test/ruby/tc_node_write.rb
83
+ - src/test/ruby/tc_node_xlink.rb
84
+ - src/test/ruby/tc_parser.rb
85
+ - src/test/ruby/tc_parser_context.rb
86
+ - src/test/ruby/tc_properties.rb
87
+ - src/test/ruby/tc_reader.rb
88
+ - src/test/ruby/tc_relaxng.rb
89
+ - src/test/ruby/tc_sax_parser.rb
90
+ - src/test/ruby/tc_schema.rb
91
+ - src/test/ruby/tc_traversal.rb
92
+ - src/test/ruby/tc_xinclude.rb
93
+ - src/test/ruby/tc_xml.rb
94
+ - src/test/ruby/tc_xpath.rb
95
+ - src/test/ruby/tc_xpath_context.rb
96
+ - src/test/ruby/tc_xpath_expression.rb
97
+ - src/test/ruby/tc_xpointer.rb
98
+ - src/test/ruby/test_helper.rb
99
+ - src/test/ruby/test_suite.rb
100
+ - src/test/ruby/model/atom.xml
101
+ - src/test/ruby/model/bands.iso-8859-1.xml
102
+ - src/test/ruby/model/bands.utf-8.xml
103
+ - src/test/ruby/model/bands.xml
104
+ - src/test/ruby/model/books.xml
105
+ - src/test/ruby/model/merge_bug_data.xml
106
+ - src/test/ruby/model/ruby-lang.html
107
+ - src/test/ruby/model/rubynet.xml
108
+ - src/test/ruby/model/shiporder.rnc
109
+ - src/test/ruby/model/shiporder.rng
110
+ - src/test/ruby/model/shiporder.xml
111
+ - src/test/ruby/model/shiporder.xsd
112
+ - src/test/ruby/model/soap.xml
113
+ - src/test/ruby/model/xinclude.xml
114
+ homepage: https://github.com/areman/smile-xml
29
115
  licenses: []
30
116
 
31
117
  post_install_message: