Class: Moxml::Adapter::Nokogiri::NokogiriSAXBridge
- Inherits:
-
Nokogiri::XML::SAX::Document
- Object
- Nokogiri::XML::SAX::Document
- Moxml::Adapter::Nokogiri::NokogiriSAXBridge
show all
- Includes:
- SAX::NamespaceSplitter
- Defined in:
- lib/moxml/adapter/nokogiri.rb
Overview
Bridge between Nokogiri SAX and Moxml SAX
Translates Nokogiri::XML::SAX::Document events to Moxml::SAX::Handler events
Constant Summary
SAX::NamespaceSplitter::EMPTY_NAMESPACES
Instance Method Summary
collapse
#split_attributes_and_namespaces
Constructor Details
Returns a new instance of NokogiriSAXBridge.
618
619
620
621
|
# File 'lib/moxml/adapter/nokogiri.rb', line 618
def initialize(handler)
super()
@handler = handler
end
|
Instance Method Details
#cdata_block(string) ⇒ Object
648
649
650
|
# File 'lib/moxml/adapter/nokogiri.rb', line 648
def cdata_block(string)
@handler.on_cdata(string)
end
|
#characters(string) ⇒ Object
644
645
646
|
# File 'lib/moxml/adapter/nokogiri.rb', line 644
def characters(string)
@handler.on_characters(string)
end
|
652
653
654
|
# File 'lib/moxml/adapter/nokogiri.rb', line 652
def (string)
@handler.(string)
end
|
#end_document ⇒ Object
629
630
631
|
# File 'lib/moxml/adapter/nokogiri.rb', line 629
def end_document
@handler.on_end_document
end
|
#end_element(name) ⇒ Object
640
641
642
|
# File 'lib/moxml/adapter/nokogiri.rb', line 640
def end_element(name)
@handler.on_end_element(name)
end
|
#error(string) ⇒ Object
660
661
662
|
# File 'lib/moxml/adapter/nokogiri.rb', line 660
def error(string)
@handler.on_error(Moxml::ParseError.new(string))
end
|
#processing_instruction(target, data) ⇒ Object
656
657
658
|
# File 'lib/moxml/adapter/nokogiri.rb', line 656
def processing_instruction(target, data)
@handler.on_processing_instruction(target, data || "")
end
|
#start_document ⇒ Object
Map Nokogiri events to Moxml events
625
626
627
|
# File 'lib/moxml/adapter/nokogiri.rb', line 625
def start_document
@handler.on_start_document
end
|
#start_element(name, attributes = []) ⇒ Object
633
634
635
636
637
638
|
# File 'lib/moxml/adapter/nokogiri.rb', line 633
def start_element(name, attributes = [])
attr_hash, ns_hash = split_attributes_and_namespaces(attributes) do |v|
Moxml::Adapter::Base.decode_entities(v)
end
@handler.on_start_element(name, attr_hash, ns_hash)
end
|
#warning(string) ⇒ Object
664
665
666
|
# File 'lib/moxml/adapter/nokogiri.rb', line 664
def warning(string)
@handler.on_warning(string)
end
|