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