| Class | SOAP::RPC::CGIStub |
| In: |
soap/rpc/cgistub.rb
|
| Parent: | Logger::Application |
SYNOPSIS
CGIStub.new
DESCRIPTION
To be written...
| mediatype | [RW] | There is a client which does not accept the media-type which is defined in SOAP spec. |
# File soap/rpc/cgistub.rb, line 83 def initialize(appname, default_namespace) super(appname) set_log(STDERR) self.level = ERROR @default_namespace = default_namespace @router = SOAP::RPC::Router.new(appname) @remote_user = ENV['REMOTE_USER'] || 'anonymous' @remote_host = ENV['REMOTE_HOST'] || ENV['REMOTE_ADDR'] || 'unknown' @request = nil @response = nil @mediatype = MediaType on_init end
# File soap/rpc/cgistub.rb, line 125 def add_method(receiver, name, *param) add_method_with_namespace_as(@default_namespace, receiver, name, name, *param) end
# File soap/rpc/cgistub.rb, line 130 def add_method_as(receiver, name, name_as, *param) add_method_with_namespace_as(@default_namespace, receiver, name, name_as, *param) end
# File soap/rpc/cgistub.rb, line 135 def add_method_with_namespace(namespace, receiver, name, *param) add_method_with_namespace_as(namespace, receiver, name, name, *param) end
# File soap/rpc/cgistub.rb, line 139 def add_method_with_namespace_as(namespace, receiver, name, name_as, *param) param_def = if param.size == 1 and param[0].is_a?(Array) param[0] else SOAP::RPC::SOAPMethod.create_param_def(param) end qname = XSD::QName.new(namespace, name_as) @router.add_method(receiver, qname, nil, name, param_def) end
# File soap/rpc/cgistub.rb, line 108 def add_rpc_headerhandler(obj) @router.headerhandler << obj end
# File soap/rpc/cgistub.rb, line 97 def add_rpc_servant(obj, namespace = @default_namespace, soapaction = nil) RPC.defined_methods(obj).each do |name| qname = XSD::QName.new(namespace, name) param_size = obj.method(name).arity.abs params = (1..param_size).collect { |i| "p#{i}" } param_def = SOAP::RPC::SOAPMethod.create_param_def(params) @router.add_method(obj, qname, soapaction, name, param_def) end end
# File soap/rpc/cgistub.rb, line 153 def create_fault_response(e) @router.create_fault_response(e) end
# File soap/rpc/cgistub.rb, line 121 def mapping_registry=(value) @router.mapping_registry = value end
# File soap/rpc/cgistub.rb, line 113 def on_init # Override this method in derived class to call 'add_method' to add methods. end