In Files

  • soap/rpc/driver.rb

Class/Module Index [+]

Quicksearch

SOAP::RPC::Driver

Attributes

options[R]
proxy[R]
soapaction[RW]

Public Class Methods

new(endpoint_url, namespace = nil, soapaction = nil) click to toggle source
 
               # File soap/rpc/driver.rb, line 108
def initialize(endpoint_url, namespace = nil, soapaction = nil)
  @namespace = namespace
  @soapaction = soapaction
  @options = setup_options
  @wiredump_file_base = nil
  @proxy = Proxy.new(endpoint_url, @soapaction, @options)
end
            

Public Instance Methods

__attr_proxy(symbol, assignable = false) click to toggle source
 
               # File soap/rpc/driver.rb, line 27
def __attr_proxy(symbol, assignable = false)
  name = symbol.to_s
  define_method(name) {
    @proxy.__send__(name)
  }
  if assignable
    aname = name + '='
    define_method(aname) { |rhs|
      @proxy.__send__(aname, rhs)
    }
  end
end
            
add_document_method(name, soapaction, req_qname, res_qname) click to toggle source
 
               # File soap/rpc/driver.rb, line 147
def add_document_method(name, soapaction, req_qname, res_qname)
  param_def = SOAPMethod.create_doc_param_def(req_qname, res_qname)
  @proxy.add_document_method(soapaction, name, param_def)
  add_document_method_interface(name, param_def)
end
            
add_document_operation(soapaction, name, param_def, opt = {}) click to toggle source
 
               # File soap/rpc/driver.rb, line 158
def add_document_operation(soapaction, name, param_def, opt = {})
  @proxy.add_document_operation(soapaction, name, param_def, opt)
  add_document_method_interface(name, param_def)
end
            
add_method(name, *params) click to toggle source

#add_method is for shortcut of typical rpc/encoded method definition.

Alias for: add_rpc_method
add_method_as(name, name_as, *params) click to toggle source
Alias for: add_rpc_method_as
add_method_with_soapaction(name, soapaction, *params) click to toggle source
add_method_with_soapaction_as(name, name_as, soapaction, *params) click to toggle source
add_rpc_method(name, *params) click to toggle source
 
               # File soap/rpc/driver.rb, line 122
def add_rpc_method(name, *params)
  add_rpc_method_with_soapaction_as(name, name, @soapaction, *params)
end
            
Also aliased as: add_method
add_rpc_method_as(name, name_as, *params) click to toggle source
 
               # File soap/rpc/driver.rb, line 126
def add_rpc_method_as(name, name_as, *params)
  add_rpc_method_with_soapaction_as(name, name_as, @soapaction, *params)
end
            
Also aliased as: add_method_as
add_rpc_method_with_soapaction(name, soapaction, *params) click to toggle source
 
               # File soap/rpc/driver.rb, line 130
def add_rpc_method_with_soapaction(name, soapaction, *params)
  add_rpc_method_with_soapaction_as(name, name, soapaction, *params)
end
            
Also aliased as: add_method_with_soapaction
add_rpc_method_with_soapaction_as(name, name_as, soapaction, *params) click to toggle source
 
               # File soap/rpc/driver.rb, line 134
def add_rpc_method_with_soapaction_as(name, name_as, soapaction, *params)
  param_def = SOAPMethod.create_rpc_param_def(params)
  qname = XSD::QName.new(@namespace, name_as)
  @proxy.add_rpc_method(qname, soapaction, name, param_def)
  add_rpc_method_interface(name, param_def)
end
            
add_rpc_operation(qname, soapaction, name, param_def, opt = {}) click to toggle source
 
               # File soap/rpc/driver.rb, line 153
def add_rpc_operation(qname, soapaction, name, param_def, opt = {})
  @proxy.add_rpc_operation(qname, soapaction, name, param_def, opt)
  add_rpc_method_interface(name, param_def)
end
            
call(name, *params) click to toggle source
 
               # File soap/rpc/driver.rb, line 176
def call(name, *params)
  set_wiredump_file_base(name)
  @proxy.call(name, *params)
end
            
httpproxy() click to toggle source
 
               # File soap/rpc/driver.rb, line 76
def httpproxy
  options["protocol.http.proxy"]
end
            
httpproxy=(httpproxy) click to toggle source
 
               # File soap/rpc/driver.rb, line 80
def httpproxy=(httpproxy)
  options["protocol.http.proxy"] = httpproxy
end
            
inspect() click to toggle source
 
               # File soap/rpc/driver.rb, line 72
def inspect
  "#<#{self.class}:#{@proxy.inspect}>"
end
            
invoke(headers, body) click to toggle source
 
               # File soap/rpc/driver.rb, line 163
def invoke(headers, body)
  if headers and !headers.is_a?(SOAPHeader)
    headers = create_header(headers)
  end
  set_wiredump_file_base(body.elename.name)
  env = @proxy.invoke(headers, body)
  if env.nil?
    return nil, nil
  else
    return env.header, env.body
  end
end
            
loadproperty(propertyname) click to toggle source
 
               # File soap/rpc/driver.rb, line 116
def loadproperty(propertyname)
  unless options.loadproperty(propertyname)
    raise LoadError.new("No such property to load -- #{propertyname}")
  end
end
            
mandatorycharset() click to toggle source
 
               # File soap/rpc/driver.rb, line 92
def mandatorycharset
  options["protocol.mandatorycharset"]
end
            
mandatorycharset=(mandatorycharset) click to toggle source
 
               # File soap/rpc/driver.rb, line 96
def mandatorycharset=(mandatorycharset)
  options["protocol.mandatorycharset"] = mandatorycharset
end
            
wiredump_dev() click to toggle source
 
               # File soap/rpc/driver.rb, line 84
def wiredump_dev
  options["protocol.http.wiredump_dev"]
end
            
wiredump_dev=(wiredump_dev) click to toggle source
 
               # File soap/rpc/driver.rb, line 88
def wiredump_dev=(wiredump_dev)
  options["protocol.http.wiredump_dev"] = wiredump_dev
end
            
wiredump_file_base() click to toggle source
 
               # File soap/rpc/driver.rb, line 100
def wiredump_file_base
  options["protocol.wiredump_file_base"]
end
            
wiredump_file_base=(wiredump_file_base) click to toggle source
 
               # File soap/rpc/driver.rb, line 104
def wiredump_file_base=(wiredump_file_base)
  options["protocol.wiredump_file_base"] = wiredump_file_base
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