Sha256: ce9a27410cb6264683b16208c54c25eb2c6704c8161055f4044ae3d22e50735c
Contents?: true
Size: 1.16 KB
Versions: 2
Compression:
Stored size: 1.16 KB
Contents
# encoding: UTF-8 # XSD4R - Nokogiri XML parser library. # Copyright (C) 2015 Laurence A. Lee <rubyjedi@gmail.com> # This program is copyrighted free software by Laurence A. Lee. You can # redistribute it and/or modify it under the same terms of Ruby's license; # either the dual license version in 2003, or any later version. require 'nokogiri' module XSD module XMLParser class NokogiriParser < XSD::XMLParser::Parser def do_parse(string_or_readable) handler = NokoDocHandler.new(self) parser = Nokogiri::XML::SAX::Parser.new(handler) parser.parse(string_or_readable) end add_factory(self) end class NokoDocHandler < Nokogiri::XML::SAX::Document def initialize(owner) @owner = (owner) end def start_element(name,attrs) attr_hash = Hash.new attrs.each do |kv_array| attr_hash[kv_array[0]] = kv_array[1] end @owner.send(:start_element, name, attr_hash) end def end_element(name) @owner.send(:end_element, name) end def cdata_block(t) @owner.send(:characters, t) end def characters(t) @owner.send(:characters, t) end def comment(t) @owner.send(:characters,t) end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
soap4r-ng-2.0.2 | lib/xsd/xmlparser/nokogiriparser.rb |
soap4r-ng-2.0.1 | lib/xsd/xmlparser/nokogiriparser.rb |