# module XMLRPC::ParserWriterChooseMixin

Defines ParserWriterChooseMixin, which makes it possible to choose a different XMLWriter and/or XMLParser then the default one.

The Mixin is used in client.rb (class XMLRPC::Client) and server.rb (class XMLRPC::BasicServer)

### Public Instance Methods

set_parser(parser) click to toggle source

Sets the XMLParser to use for parsing XML documents.

Should be an instance of a class from module XMLRPC::XMLParser.

If this method is not called, then XMLRPC::Config::DEFAULT_PARSER is used.

    # File lib/xmlrpc/utils.rb, line 40
    def set_parser(parser)
      @parser = parser
      self
    end

set_writer(writer) click to toggle source

Sets the XMLWriter to use for generating XML output.

Should be an instance of a class from module XMLRPC::XMLWriter.

If this method is not called, then XMLRPC::Config::DEFAULT_WRITER is used.

    # File lib/xmlrpc/utils.rb, line 30
    def set_writer(writer)
      @create = Create.new(writer)
      self
    end

### Private Instance Methods

create() click to toggle source

    # File lib/xmlrpc/utils.rb, line 47
    def create
      # if set_writer was not already called then call it now
      if @create.nil? then
        set_writer(Config::DEFAULT_WRITER.new)
      end
      @create
    end

parser() click to toggle source

    # File lib/xmlrpc/utils.rb, line 55
    def parser
      # if set_parser was not already called then call it now
      if @parser.nil? then
        set_parser(Config::DEFAULT_PARSER.new)
      end
      @parser
    end