Extended maintenance of Ruby versions 1.8.7 and 1.9.2 will end on July 31, 2014. Read more

In Files

  • soap/rpc/httpserver.rb

Class/Module Index [+]

Quicksearch

SOAP::RPC::HTTPServer

Attributes

default_namespace[RW]
server[R]

Public Class Methods

new(config) click to toggle source
 
               # 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
            

Public Instance Methods

add_document_method(obj, soapaction, name, req_qnames, res_qnames) click to toggle source
 
               # 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
            
add_document_operation(receiver, soapaction, name, param_def, opt = {}) click to toggle source
 
               # 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
            
add_document_request_operation(factory, soapaction, name, param_def, opt = {}) click to toggle source
 
               # 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
            
add_headerhandler(obj) click to toggle source
 
               # File soap/rpc/httpserver.rb, line 79
def add_headerhandler(obj)
  @router.add_headerhandler(obj)
end
            
Also aliased as: add_rpc_headerhandler
add_method(obj, name, *param) click to toggle source
Alias for: add_rpc_method
add_method_as(obj, name, name_as, *param) click to toggle source
Alias for: add_rpc_method_as
add_request_headerhandler(factory) click to toggle source
 
               # File soap/rpc/httpserver.rb, line 75
def add_request_headerhandler(factory)
  @router.add_request_headerhandler(factory)
end
            
add_rpc_headerhandler(obj) click to toggle source
Alias for: add_headerhandler
add_rpc_method(obj, name, *param) click to toggle source

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
            
Also aliased as: add_method
add_rpc_method_as(obj, name, name_as, *param) click to toggle source
 
               # 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
            
Also aliased as: add_method_as
add_rpc_operation(receiver, qname, soapaction, name, param_def, opt = {}) click to toggle source
 
               # 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
            
add_rpc_request_operation(factory, qname, soapaction, name, param_def, opt = {}) click to toggle source
 
               # 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
            
add_rpc_request_servant(factory, namespace = @default_namespace) click to toggle source

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
            
add_rpc_servant(obj, namespace = @default_namespace) click to toggle source
 
               # File soap/rpc/httpserver.rb, line 71
def add_rpc_servant(obj, namespace = @default_namespace)
  @router.add_rpc_servant(obj, namespace)
end
            
generate_explicit_type() click to toggle source
 
               # File soap/rpc/httpserver.rb, line 57
def generate_explicit_type
  @router.generate_explicit_type
end
            
generate_explicit_type=(generate_explicit_type) click to toggle source
 
               # File soap/rpc/httpserver.rb, line 61
def generate_explicit_type=(generate_explicit_type)
  @router.generate_explicit_type = generate_explicit_type
end
            
mapping_registry() click to toggle source
 
               # File soap/rpc/httpserver.rb, line 49
def mapping_registry
  @router.mapping_registry
end
            
mapping_registry=(mapping_registry) click to toggle source
 
               # File soap/rpc/httpserver.rb, line 53
def mapping_registry=(mapping_registry)
  @router.mapping_registry = mapping_registry
end
            
on_init() click to toggle source
 
               # File soap/rpc/httpserver.rb, line 37
def on_init
  # do extra initialization in a derived class if needed.
end
            
shutdown() click to toggle source
 
               # File soap/rpc/httpserver.rb, line 45
def shutdown
  @server.shutdown if @server
end
            
status() click to toggle source
 
               # File soap/rpc/httpserver.rb, line 41
def status
  @server.status if @server
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 visit Documenting-ruby.org.

blog comments powered by Disqus