Logger::Application
# File soap/rpc/httpserver.rb, line 23
def initialize(config)
super(config[:SOAPHTTPServerApplicationName] || self.class.name)
@default_namespace = config[:SOAPDefaultNamespace]
@webrick_config = config.dup
self.level = Logger::Severity::ERROR # keep silent by default
@webrick_config[:Logger] ||= @log
@log = @webrick_config[:Logger] # sync logger of App and HTTPServer
@router = ::SOAP::RPC::Router.new(self.class.name)
@soaplet = ::SOAP::RPC::SOAPlet.new(@router)
on_init
@server = WEBrick::HTTPServer.new(@webrick_config)
@server.mount('/', @soaplet)
end
# File soap/rpc/httpserver.rb, line 99
def add_document_method(obj, soapaction, name, req_qnames, res_qnames)
param_def = SOAPMethod.create_doc_param_def(req_qnames, res_qnames)
@router.add_document_operation(obj, soapaction, name, param_def)
end
# File soap/rpc/httpserver.rb, line 112
def add_document_operation(receiver, soapaction, name, param_def, opt = {})
@router.add_document_operation(receiver, soapaction, name, param_def, opt)
end
# File soap/rpc/httpserver.rb, line 116
def add_document_request_operation(factory, soapaction, name, param_def, opt = {})
@router.add_document_request_operation(factory, soapaction, name, param_def, opt)
end
# File soap/rpc/httpserver.rb, line 79
def add_headerhandler(obj)
@router.add_headerhandler(obj)
end
# File soap/rpc/httpserver.rb, line 75
def add_request_headerhandler(factory)
@router.add_request_headerhandler(factory)
end
method entry interface
# File soap/rpc/httpserver.rb, line 86
def add_rpc_method(obj, name, *param)
add_rpc_method_as(obj, name, name, *param)
end
# File soap/rpc/httpserver.rb, line 91
def add_rpc_method_as(obj, name, name_as, *param)
qname = XSD::QName.new(@default_namespace, name_as)
soapaction = nil
param_def = SOAPMethod.derive_rpc_param_def(obj, name, *param)
@router.add_rpc_operation(obj, qname, soapaction, name, param_def)
end
# File soap/rpc/httpserver.rb, line 104
def add_rpc_operation(receiver, qname, soapaction, name, param_def, opt = {})
@router.add_rpc_operation(receiver, qname, soapaction, name, param_def, opt)
end
# File soap/rpc/httpserver.rb, line 108
def add_rpc_request_operation(factory, qname, soapaction, name, param_def, opt = {})
@router.add_rpc_request_operation(factory, qname, soapaction, name, param_def, opt)
end
servant entry interface
# File soap/rpc/httpserver.rb, line 67
def add_rpc_request_servant(factory, namespace = @default_namespace)
@router.add_rpc_request_servant(factory, namespace)
end
# File soap/rpc/httpserver.rb, line 71
def add_rpc_servant(obj, namespace = @default_namespace)
@router.add_rpc_servant(obj, namespace)
end
# File soap/rpc/httpserver.rb, line 57
def generate_explicit_type
@router.generate_explicit_type
end
# File soap/rpc/httpserver.rb, line 61
def generate_explicit_type=(generate_explicit_type)
@router.generate_explicit_type = generate_explicit_type
end
# File soap/rpc/httpserver.rb, line 49
def mapping_registry
@router.mapping_registry
end
# File soap/rpc/httpserver.rb, line 53
def mapping_registry=(mapping_registry)
@router.mapping_registry = mapping_registry
end
# File soap/rpc/httpserver.rb, line 37
def on_init
# do extra initialization in a derived class if needed.
end
Commenting is here to help enhance the documentation. For example, code samples, or clarification of the documentation.
If you have questions about Ruby or the documentation, please post to one of the Ruby mailing lists. You will get better, faster, help that way.
If you wish to post a correction of the docs, please do so, but also file bug report so that it can be corrected for the next release. Thank you.
If you want to help improve the Ruby documentation, please see Improve the docs, or visit Documenting-ruby.org.