class XMLRPC::XMLParser::XMLTreeParser
Public Class Methods
new()
click to toggle source
# File lib/xmlrpc/parser.rb, line 645 def initialize require "xmltreebuilder" # The new XMLParser library (0.6.2+) uses a slightly different DOM implementation. # The following code removes the differences between both versions. if defined? XML::DOM::Builder return if defined? XML::DOM::Node::DOCUMENT # code below has been already executed klass = XML::DOM::Node klass.const_set(:DOCUMENT, klass::DOCUMENT_NODE) klass.const_set(:TEXT, klass::TEXT_NODE) klass.const_set(:COMMENT, klass::COMMENT_NODE) klass.const_set(:ELEMENT, klass::ELEMENT_NODE) end end
Private Instance Methods
_nodeType(node)
click to toggle source
# File lib/xmlrpc/parser.rb, line 662 def _nodeType(node) tp = node.nodeType if tp == XML::SimpleTree::Node::TEXT then :TEXT elsif tp == XML::SimpleTree::Node::COMMENT then :COMMENT elsif tp == XML::SimpleTree::Node::ELEMENT then :ELEMENT else :ELSE end end
createCleanedTree(str)
click to toggle source
# File lib/xmlrpc/parser.rb, line 686 def createCleanedTree(str) doc = XML::SimpleTreeBuilder.new.parse(str) doc.documentElement.normalize removeWhitespacesAndComments(doc) doc end
methodCall_document(node)
click to toggle source
# File lib/xmlrpc/parser.rb, line 679 def methodCall_document(node) assert( node.nodeType == XML::SimpleTree::Node::DOCUMENT ) hasOnlyOneChild(node, "methodCall") methodCall(node.firstChild) end
methodResponse_document(node)
click to toggle source
# File lib/xmlrpc/parser.rb, line 672 def methodResponse_document(node) assert( node.nodeType == XML::SimpleTree::Node::DOCUMENT ) hasOnlyOneChild(node, "methodResponse") methodResponse(node.firstChild) end