class Saxerator::Adapters::Rexml

Public Class Methods

new(reader) click to toggle source
# File lib/saxerator/adapters/rexml.rb, line 18
def initialize(reader)
  @reader = reader
  @ignore_namespaces = reader.ignore_namespaces?
end
parse(source, reader) click to toggle source
# File lib/saxerator/adapters/rexml.rb, line 11
def self.parse(source, reader)
  handler = new(reader)
  REXML::Document.parse_stream(source, handler)
rescue REXML::ParseException => message
  raise Saxerator::ParseException, message
end

Public Instance Methods

tag_end(name) click to toggle source
# File lib/saxerator/adapters/rexml.rb, line 31
def tag_end(name)
  name = strip_namespace(name) if @ignore_namespaces
  @reader.end_element(name)
end
tag_start(name, attrs) click to toggle source
# File lib/saxerator/adapters/rexml.rb, line 26
def tag_start(name, attrs)
  name = strip_namespace(name) if @ignore_namespaces
  @reader.start_element(name, attrs)
end

Private Instance Methods

strip_namespace(name) click to toggle source
# File lib/saxerator/adapters/rexml.rb, line 38
def strip_namespace(name)
  name.split(':').last
end