Class: SOAP::RPC::CGIStub

Inherits:
Logger::Application
  • Object
show all
Includes:
SOAP, WEBrick
Defined in:
lib/soap/rpc/cgistub.rb

Overview

SYNOPSIS

CGIStub.new

DESCRIPTION

To be written...

Defined Under Namespace

Classes: SOAPFCGIRequest, SOAPRequest, SOAPStdinRequest

Constant Summary

Constants included from SOAP

AttrActor, AttrArrayType, AttrArrayTypeName, AttrEncodingStyle, AttrEncodingStyleName, AttrMustUnderstand, AttrMustUnderstandName, AttrOffset, AttrOffsetName, AttrPosition, AttrPositionName, AttrRoot, AttrRootName, Base64Literal, EleBody, EleBodyName, EleEnvelope, EleEnvelopeName, EleFault, EleFaultActor, EleFaultActorName, EleFaultCode, EleFaultCodeName, EleFaultDetail, EleFaultDetailName, EleFaultName, EleFaultString, EleFaultStringName, EleHeader, EleHeaderName, EncodingNamespace, EnvelopeNamespace, LiteralNamespace, MediaType, NextActor, PropertyName, SOAPNamespaceTag, TypeMap, VERSION, ValueArray, ValueArrayName, XSDNamespaceTag, XSINamespaceTag

Instance Method Summary collapse

Constructor Details

#initialize(appname, default_namespace) ⇒ CGIStub

Returns a new instance of CGIStub.



77
78
79
80
81
82
83
84
85
86
# File 'lib/soap/rpc/cgistub.rb', line 77

def initialize(appname, default_namespace)
  super(appname)
  set_log(STDERR)
  self.level = ERROR
  @default_namespace = default_namespace
  @remote_host = ENV['REMOTE_HOST'] || ENV['REMOTE_ADDR'] || 'unknown'
  @router = ::SOAP::RPC::Router.new(self.class.name)
  @soaplet = ::SOAP::RPC::SOAPlet.new(@router)
  on_init
end

Instance Method Details

#add_document_operation(receiver, soapaction, name, param_def, opt = {}) ⇒ Object



149
150
151
# File 'lib/soap/rpc/cgistub.rb', line 149

def add_document_operation(receiver, soapaction, name, param_def, opt = {})
  @router.add_document_operation(receiver, soapaction, name, param_def, opt)
end

#add_headerhandler(obj) ⇒ Object Also known as: add_rpc_headerhandler



115
116
117
# File 'lib/soap/rpc/cgistub.rb', line 115

def add_headerhandler(obj)
  @router.add_headerhandler(obj)
end

#add_rpc_method(obj, name, *param) ⇒ Object Also known as: add_method

method entry interface



122
123
124
# File 'lib/soap/rpc/cgistub.rb', line 122

def add_rpc_method(obj, name, *param)
  add_rpc_method_with_namespace_as(@default_namespace, obj, name, name, *param)
end

#add_rpc_method_as(obj, name, name_as, *param) ⇒ Object Also known as: add_method_as



127
128
129
# File 'lib/soap/rpc/cgistub.rb', line 127

def add_rpc_method_as(obj, name, name_as, *param)
  add_rpc_method_with_namespace_as(@default_namespace, obj, name, name_as, *param)
end

#add_rpc_method_with_namespace(namespace, obj, name, *param) ⇒ Object Also known as: add_method_with_namespace



132
133
134
# File 'lib/soap/rpc/cgistub.rb', line 132

def add_rpc_method_with_namespace(namespace, obj, name, *param)
  add_rpc_method_with_namespace_as(namespace, obj, name, name, *param)
end

#add_rpc_method_with_namespace_as(namespace, obj, name, name_as, *param) ⇒ Object Also known as: add_method_with_namespace_as



137
138
139
140
141
142
# File 'lib/soap/rpc/cgistub.rb', line 137

def add_rpc_method_with_namespace_as(namespace, obj, name, name_as, *param)
  qname = XSD::QName.new(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

#add_rpc_operation(receiver, qname, soapaction, name, param_def, opt = {}) ⇒ Object



145
146
147
# File 'lib/soap/rpc/cgistub.rb', line 145

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_servant(obj, namespace = @default_namespace) ⇒ Object Also known as: add_servant

servant entry interface



110
111
112
# File 'lib/soap/rpc/cgistub.rb', line 110

def add_rpc_servant(obj, namespace = @default_namespace)
  @router.add_rpc_servant(obj, namespace)
end

#generate_explicit_typeObject



100
101
102
# File 'lib/soap/rpc/cgistub.rb', line 100

def generate_explicit_type
  @router.generate_explicit_type
end

#generate_explicit_type=(generate_explicit_type) ⇒ Object



104
105
106
# File 'lib/soap/rpc/cgistub.rb', line 104

def generate_explicit_type=(generate_explicit_type)
  @router.generate_explicit_type = generate_explicit_type
end

#mapping_registryObject



92
93
94
# File 'lib/soap/rpc/cgistub.rb', line 92

def mapping_registry
  @router.mapping_registry
end

#mapping_registry=(value) ⇒ Object



96
97
98
# File 'lib/soap/rpc/cgistub.rb', line 96

def mapping_registry=(value)
  @router.mapping_registry = value
end

#on_initObject



88
89
90
# File 'lib/soap/rpc/cgistub.rb', line 88

def on_init
  # do extra initialization in a derived class if needed.
end

#set_fcgi_request(request) ⇒ Object



153
154
155
# File 'lib/soap/rpc/cgistub.rb', line 153

def set_fcgi_request(request)
  @fcgi = request
end