Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages  

SOAPBridge_SOAPCall_i Class Reference

Class implementing IDL interface SOAPBridge::SOAPCall. More...

#include <sbimpl.h>

Inheritance diagram for SOAPBridge_SOAPCall_i:

CorbaSoap POA_SOAPBridge::SOAPCall PortableServer::ServantLocator List of all members.

Public Methods

SOAPBridge::SOAPCall::XMLDataFault (FaultCode fCode, const char *fSubCode, const char *fString)
 Constructs a SOAP Fault to return to the caller. More...

 SOAPBridge_SOAPCall_i (CosNaming::NamingContext_ptr inc)
 Constructor for the implementation of the IDL interface SOAPBridge::SOAPCall. More...

virtual ~SOAPBridge_SOAPCall_i ()
 Destructor. More...

SOAPBridge::SOAPCall::XMLDatainvokeAction (const char *action, const SOAPBridge::SOAPCall::XMLData &data) throw (CORBA::SystemException, SOAPBridge::SOAPCall::InvocationFailed)
 Make the call. More...

SOAPBridge::SOAPCall::XMLDatainvokeInstance (CORBA::Object_ptr objRef, const char *action, const SOAPBridge::SOAPCall::XMLData &data) throw (CORBA::SystemException, SOAPBridge::SOAPCall::InvocationFailed)
 Make the call to a specific object instance. More...

SOAPBridge::SOAPCall::SOAPActionSeqlistActions () throw (CORBA::SystemException)
 List the known SOAP actions. More...

CORBA::Boolean fetchSample (const char *action, SOAPBridge::SOAPCall::XMLData_out request, SOAPBridge::SOAPCall::XMLData_out respons) throw (CORBA::SystemException)
 Fetch sample XML for the SOAP request and response. More...


Private Methods

void soapFault (DOM_Document &doc, FaultCode fCode, const char *fSubCode, const char *fString)
 Constructs a SOAP Fault to return to the caller. More...

virtual void aFault (FaultCode fCode, const char *fSubCode, const char *fString)
 error reporting. More...

void soapFault (DOM_Document &doc, FaultCode fCode, const char *fSubCode, const char *fString, DynamicAny::DynAny_ptr da)
 Version of soapFault that includes a detail section. More...

virtual void CheckTag (char *cNam, DOM_Node &node) throw (DOM_Document &)
 Check tag and throw a SOAP fault if it does not match. More...


Private Attributes

CosNaming::NamingContext_ptr m_inc
 Naming context for locating SOAP actions. More...

CORBA::Object_ptr suppliedObject
 Optional object reference to use instead of the SOAP action. More...

bool useSupplied
 True if we are to use the suppliedObject. More...


Detailed Description

Class implementing IDL interface SOAPBridge::SOAPCall.

Definition at line 68 of file sbimpl.h.


Constructor & Destructor Documentation

SOAPBridge_SOAPCall_i::SOAPBridge_SOAPCall_i ( CosNaming::NamingContext_ptr inc )
 

Constructor for the implementation of the IDL interface SOAPBridge::SOAPCall.

Parameters:
resp   The CORBA Interface Repository to read.
inc   Access to the Corba Naming Service

Definition at line 625 of file SoapCall.cpp.

SOAPBridge_SOAPCall_i::~SOAPBridge_SOAPCall_i ( ) [virtual]
 

Destructor.

Definition at line 634 of file SoapCall.cpp.


Member Function Documentation

void SOAPBridge_SOAPCall_i::CheckTag ( char * cNam,
DOM_Node & node ) throw (DOM_Document &) [private, virtual]
 

Check tag and throw a SOAP fault if it does not match.

Checks several things at once. If the current node is NULL, it reports missing data. If the name of the current node does not match the specified name, it reports this as well.

Parameters:
cNam   The name the current node should have.
node   The node to check.

Reimplemented from CorbaSoap.

Definition at line 668 of file SoapCall.cpp.

SOAPBridge::SOAPCall::XMLData * SOAPBridge_SOAPCall_i::Fault ( FaultCode fCode,
const char * fSubCode,
const char * fString )
 

Constructs a SOAP Fault to return to the caller.

Parameters:
fCode   One of the defined SOAP Fault codes.
fSubCode   Subcode which says what went wrong.
fString   Human readable error description.

Constructs a SOAP Fault message to return to the caller.

Definition at line 646 of file SoapCall.cpp.

void SOAPBridge_SOAPCall_i::aFault ( FaultCode fCode,
const char * fSubCode,
const char * fString ) [inline, private, virtual]
 

error reporting.

Reimplemented from CorbaSoap.

Definition at line 78 of file sbimpl.h.

CORBA::Boolean SOAPBridge_SOAPCall_i::fetchSample ( const char * action,
SOAPBridge::SOAPCall::XMLData_out request,
SOAPBridge::SOAPCall::XMLData_out respons ) throw (CORBA::SystemException)
 

Fetch sample XML for the SOAP request and response.

Parameters:
action   The SOAP action to fetch the sample for.
request   The sample SOAP request.
respons   The sample SOAP respons.
Returns:
False if the action could not be located in the Interface Repository.

Definition at line 1425 of file SoapCall.cpp.

SOAPBridge::SOAPCall::XMLData * SOAPBridge_SOAPCall_i::invokeAction ( const char * action,
const SOAPBridge::SOAPCall::XMLData & data ) throw (CORBA::SystemException, SOAPBridge::SOAPCall::InvocationFailed)
 

Make the call.

Parameters:
action   The SOAP action string.
data   The complete SOAP request packet.
Returns:
The complete SOAP response or SOAP fault packet.

Takes a complete SOAP request and SOAP action, invokes the corresponding CORBA service and returns the formatted SOAP response or fault.

Definition at line 999 of file SoapCall.cpp.

SOAPBridge::SOAPCall::XMLData * SOAPBridge_SOAPCall_i::invokeInstance ( CORBA::Object_ptr objRef,
const char * action,
const SOAPBridge::SOAPCall::XMLData & data ) throw (CORBA::SystemException, SOAPBridge::SOAPCall::InvocationFailed)
 

Make the call to a specific object instance.

Parameters:
objRef   The object reference of the object instance to call.
action   The SOAP action string.
data   The complete SOAP request packet.
Returns:
The complete SOAP response or SOAP fault packet.

Takes a complete SOAP request and SOAP action, invokes the corresponding CORBA service and returns the formatted SOAP response or fault.

Definition at line 1380 of file SoapCall.cpp.

SOAPBridge::SOAPCall::SOAPActionSeq * SOAPBridge_SOAPCall_i::listActions ( ) throw (CORBA::SystemException)
 

List the known SOAP actions.

Returns:
The list of known SOAP actions, if any.

Definition at line 1392 of file SoapCall.cpp.

void SOAPBridge_SOAPCall_i::soapFault ( DOM_Document & doc,
FaultCode fCode,
const char * fSubCode,
const char * fString,
DynamicAny::DynAny_ptr da ) [private]
 

Version of soapFault that includes a detail section.

Definition at line 99 of file SoapCall.cpp.

void SOAPBridge_SOAPCall_i::soapFault ( DOM_Document & doc,
FaultCode fCode,
const char * fSubCode,
const char * fString ) [private]
 

Constructs a SOAP Fault to return to the caller.

Parameters:
doc   The DOM document to create and fill in.
fCode   One of the defined SOAP Fault codes.
fSubCode   Subcode which says what went wrong.
fString   Human readable error description.

Constructs a SOAP Fault message to return to the caller. The following subcodes are used:
  • InvalidAction The SOAP action could not be interpreted.
  • UnknownMethod The method of the SOAP action was not found.
  • CORBAException Invoking the method caused a CORBA exception. The detail section contains the exception if it was an expected exception.
  • SystemException An unexpected SYSTEM exception occured.
  • FatalException An unexpected (duh!) FATAL exception occured.
  • ParserException The parser found some kind of problem. See the faultstring element.
  • Exception An unexpected GENERAL exception occured.
  • MissingData The SOAP XML did not include all required fields. See the faultstring element.
  • ObjectNotFound A CORBA object referrence could not be located.
  • WrongMethod The first element of the SOAP Body did not match the SOAP Action method.
  • ActionMismatch The HTTP SOAP ACTION did not match the SOAP Header Action.
  • WrongElement The XLM element did not match the CORBA element.
  • Internal Some internal error occurred.
  • MustSpecify An unspecified parameter was encountered (probably an ANY as in or inout parameter).
  • NotImplemented An unimplemented feature was accessed.

Definition at line 74 of file SoapCall.cpp.

Referenced by Fault(), and aFault().


Member Data Documentation

CosNaming::NamingContext_ptr SOAPBridge_SOAPCall_i::m_inc [private]
 

Naming context for locating SOAP actions.

Definition at line 72 of file sbimpl.h.

CORBA::Object_ptr SOAPBridge_SOAPCall_i::suppliedObject [private]
 

Optional object reference to use instead of the SOAP action.

Definition at line 74 of file sbimpl.h.

bool SOAPBridge_SOAPCall_i::useSupplied [private]
 

True if we are to use the suppliedObject.

Definition at line 76 of file sbimpl.h.


The documentation for this class was generated from the following files:
This documentation is part of the "SOAP to CORBA bridge" project
Copyright © 2000 by Lifeline Networks bv.
All rights are reserved.