Class: XMLRPC::XMLParser::LibXmlStreamParser::StreamCallback

Inherits:
Object
  • Object
show all
Includes:
StreamParserMixin2
Defined in:
lib/stream_parser_mixin.rb

Constant Summary collapse

Entities =
{
  "lt"   => "<",
  "gt"   => ">",
  "amp"  => "&",
  "quot" => '"',
  "apos" => "'"
}

Instance Attribute Summary

Attributes included from StreamParserMixin2

#fault, #method_name, #params, #use_streams

Instance Method Summary collapse

Methods included from StreamParserMixin2

#character, #endElement, #initialize, #startElement

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(*a) ⇒ Object



215
216
# File 'lib/stream_parser_mixin.rb', line 215

def method_missing(*a)
end

Instance Method Details

#on_cdata_block(cdata) ⇒ Object



190
191
192
# File 'lib/stream_parser_mixin.rb', line 190

def on_cdata_block(cdata) 
  character(cdata)
end

#on_characters(chars) ⇒ Object



194
195
196
# File 'lib/stream_parser_mixin.rb', line 194

def on_characters(chars)
  character(chars)
end

#on_end_element_ns(name, prefix, uri) ⇒ Object



211
212
213
# File 'lib/stream_parser_mixin.rb', line 211

def on_end_element_ns(name, prefix, uri)
  endElement(name)
end

#on_reference(name) ⇒ Object



198
199
200
201
202
203
204
205
# File 'lib/stream_parser_mixin.rb', line 198

def on_reference (name) 
  str = Entities[name]
  if str
    character(str)
  else
    raise "Unknown Entity"
  end
end

#on_start_element_ns(name, attributes, prefix, uri, namespaces) ⇒ Object



207
208
209
# File 'lib/stream_parser_mixin.rb', line 207

def on_start_element_ns (name, attributes, prefix, uri, namespaces) 
  startElement(name)
end

#parse(str) ⇒ Object



218
219
220
221
222
223
# File 'lib/stream_parser_mixin.rb', line 218

def parse(str)
  parser = LibXML::XML::SaxParser.io(str)
  parser.extend(LibXML::XML::SaxParser::Callbacks)
  parser.callbacks = self
  parser.parse
end