Sha256: c7edb57ef9e12e73f27a9a62bdab45d5a9846a72e66bc6d901c5024b027a4c3d

Contents?: true

Size: 585 Bytes

Versions: 2

Compression:

Stored size: 585 Bytes

Contents

require 'xmlrpc/marshal'

require 'nitro/service'

module Nitro

# The XML-RPC protocol.

module XmlRpc

  # === In
  #
  # [+request+]
  #    Raw request data.
  #
  # === Out
  #
  #  [+method+]
  #  [+args+]  
  
  def decode_request(request)
    method, args = XMLRPC::Marshal.load_call(request)
    return method.gsub(/\./, '__'), args
  end

  def encode_response(method_name, response)
    XMLRPC::Marshal.dump_response(response)
  end

  private

end

# The XML-RPC base service.

class XmlRpcService < Service
  include XmlRpc
end
  
end

# * George Moschovitis <gm@navel.gr>

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
nitro-0.21.0 lib/nitro/service/xmlrpc.rb
nitro-0.21.2 lib/nitro/service/xmlrpc.rb