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

TAO_ClientRequestInfo_i Class Reference

Implementation of the PortableInterceptor::ClientRequestInfo interface. More...

#include <ClientRequestInfo_i.h>

Inheritance diagram for TAO_ClientRequestInfo_i:

Inheritance graph
[legend]
Collaboration diagram for TAO_ClientRequestInfo_i:

Collaboration graph
[legend]
List of all members.

Stub helper methods

The following methods are used in the implementation of the Stubs, they are not part of the ClientRequestInfo interface, but an extension used internally by TAO.

void response_expected (CORBA::Boolean flag)
 Set the flag that states whether or not a response is expected. For example, no response is expected in a one-way operation. More...

void reply_status (int invoke_status)
 Set the status of the received reply. More...

void forward_reference (PortableInterceptor::ForwardRequest &exc)
 Extract the forward object reference from the PortableInterceptor::ForwardRequest exception, and set the reply status flag accordingly. More...

void exception CORBA::Exceptionexception
 Change the exception status. More...


Public Methods

 TAO_ClientRequestInfo_i (TAO_GIOP_Invocation *invocation, CORBA::Object_ptr target)
 Constructor from concrete interface. More...

 TAO_ClientRequestInfo_i (TAO_GIOP_Invocation *invocation, CORBA::AbstractBase_ptr abstract_target)
 Constructor from abstract interface. More...

virtual ~TAO_ClientRequestInfo_i (void)
 Destructor. More...

CORBA::ULong request_id (ACE_ENV_SINGLE_ARG_DECL) throw (CORBA::SystemException)
 Return an ID unique to the current request. This request ID may or may not be the same as the GIOP request ID. More...

char * operation (ACE_ENV_SINGLE_ARG_DECL) throw (CORBA::SystemException)
 Return the operation name for the current request. More...

virtual Dynamic::ParameterListarguments (ACE_ENV_SINGLE_ARG_DECL) throw (CORBA::SystemException)
 Return the list of arguments passed to the current operation. More...

virtual Dynamic::ExceptionListexceptions (ACE_ENV_SINGLE_ARG_DECL) throw (CORBA::SystemException)
 Return the list of exceptions the current operation is capable of throwing. More...

Dynamic::ContextListcontexts (ACE_ENV_SINGLE_ARG_DECL) throw (CORBA::SystemException)
Dynamic::RequestContextoperation_context (ACE_ENV_SINGLE_ARG_DECL) throw (CORBA::SystemException)
virtual CORBA::Anyresult (ACE_ENV_SINGLE_ARG_DECL) throw (CORBA::SystemException)
 Return the result of the current request. If there is no return value then an Any with tk_void TypeCode is returned. This is method is not valid for oneway operations. More...

CORBA::Boolean response_expected (ACE_ENV_SINGLE_ARG_DECL) throw (CORBA::SystemException)
 Returns true for a two-way operation, and false otherwise. More...

CORBA::Short sync_scope (ACE_ENV_SINGLE_ARG_DECL) throw (CORBA::SystemException)
 Return the sync_scope policy value for the current one-way operation. If the operation is not a one-way, a CORBA::BAD_INV_ORDER exception is thrown. More...

PortableInterceptor::ReplyStatus reply_status (ACE_ENV_SINGLE_ARG_DECL) throw (CORBA::SystemException)
 Return the reply status for the current request. Statuses can be PortableInterceptor::SUCCESSFUL, SYSTEM_EXCEPTION, USER_EXCEPTION, LOCATION_FORWARD, LOCATION_FORWARD_PERMANENT, TRANSPORT_RETRY. More...

CORBA::Object_ptr forward_reference (ACE_ENV_SINGLE_ARG_DECL) throw (CORBA::SystemException)
 If the reply status is PortableInterceptor::LOCATION_FORWARD or PortableInterceptor::LOCATION_FORWARD_PERMANENT, return the object reference to which the request was forwarded. More...

CORBA::Anyget_slot (PortableInterceptor::SlotId id ACE_ENV_ARG_DECL) throw (CORBA::SystemException, PortableInterceptor::InvalidSlot)
IOP::ServiceContextget_request_service_context (IOP::ServiceId id ACE_ENV_ARG_DECL) throw (CORBA::SystemException)
 Return the IOP::ServiceContext with the given IOP::ServiceId from the request service context list. More...

IOP::ServiceContextget_reply_service_context (IOP::ServiceId id ACE_ENV_ARG_DECL) throw (CORBA::SystemException)
 Return the IOP::ServiceContext with the given IOP::ServiceId from the reply service context list. More...

CORBA::Object_ptr target (ACE_ENV_SINGLE_ARG_DECL) throw (CORBA::SystemException)
 Return the (initial, non-forwarded, or permanently forwarded) object reference of the target. More...

CORBA::Object_ptr effective_target (ACE_ENV_SINGLE_ARG_DECL) throw (CORBA::SystemException)
 Return the object reference for the current target. The target may change in the even of a location forward. More...

IOP::TaggedProfileeffective_profile (ACE_ENV_SINGLE_ARG_DECL) throw (CORBA::SystemException)
CORBA::Anyreceived_exception (ACE_ENV_SINGLE_ARG_DECL) throw (CORBA::SystemException)
char * received_exception_id (ACE_ENV_SINGLE_ARG_DECL) throw (CORBA::SystemException)
 Return the repository ID for the received exception. More...

IOP::TaggedComponentget_effective_component (IOP::ComponentId id ACE_ENV_ARG_DECL) throw (CORBA::SystemException)
 Return the first IOP::TaggedComponent that matches the given IOP::ComponentId in the object reference for the current target. More...

IOP::TaggedComponentSeqget_effective_components (IOP::ComponentId id ACE_ENV_ARG_DECL) throw (CORBA::SystemException)
 Return all IOP::TaggedComponent(s) that match the given IOP::ComponentId in the object reference for the current target. More...

CORBA::Policy_ptr get_request_policy (CORBA::PolicyType type ACE_ENV_ARG_DECL) throw (CORBA::SystemException)
 Return the policy of the given type in effect for the current request. More...

void add_request_service_context (const IOP::ServiceContext &service_context, CORBA::Boolean replace ACE_ENV_ARG_DECL) throw (CORBA::SystemException)
 Add the IOP::ServiceContext to the request (outgoing) IOP::ServiceContextList. More...


Protected Methods

IOP::ServiceContextget_service_context_i (TAO_Service_Context &service_context_list, IOP::ServiceId id ACE_ENV_ARG_DECL) throw (CORBA::SystemException)
 Helper method to get the request and response service contexts. More...


Protected Attributes

TAO_GIOP_Invocationinvocation_
 Pointer to the GIOP invocation object. More...

CORBA::Object_ptr target_
 Reference to the target object. More...

CORBA::AbstractBase_ptr abstract_target_
 Reference to the abstract interface target. More...

CORBA::Exceptioncaught_exception_
 Pointer to the caught exception. More...

CORBA::Boolean response_expected_
 True if a two-way operation, false otherwise. More...

PortableInterceptor::ReplyStatus reply_status_
 Reply status for the current request. More...

TAO_PICurrent_Impl rs_pi_current_
 The "Request Scope Current" (RSC) object, as required by Portable Interceptors. More...


Detailed Description

Implementation of the PortableInterceptor::ClientRequestInfo interface.


Constructor & Destructor Documentation

TAO_ClientRequestInfo_i::TAO_ClientRequestInfo_i TAO_GIOP_Invocation   inv,
CORBA::Object_ptr    target
 

Constructor from concrete interface.

TAO_ClientRequestInfo_i::TAO_ClientRequestInfo_i TAO_GIOP_Invocation   inv,
CORBA::AbstractBase_ptr    abstract_target
 

Constructor from abstract interface.

TAO_ClientRequestInfo_i::~TAO_ClientRequestInfo_i void    [virtual]
 

Destructor.


Member Function Documentation

void TAO_ClientRequestInfo_i::add_request_service_context const IOP::ServiceContext   service_context,
CORBA::Boolean replace    ACE_ENV_ARG_DECL
throw (CORBA::SystemException)
 

Add the IOP::ServiceContext to the request (outgoing) IOP::ServiceContextList.

Dynamic::ParameterList * TAO_ClientRequestInfo_i::arguments ACE_ENV_SINGLE_ARG_DECL    throw (CORBA::SystemException) [virtual]
 

Return the list of arguments passed to the current operation.

Reimplemented in TAO_ClientRequestInfo_CORBA_Policy_copy, and TAO_ClientRequestInfo_CORBA_Policy_destroy.

Dynamic::ContextList * TAO_ClientRequestInfo_i::contexts ACE_ENV_SINGLE_ARG_DECL    throw (CORBA::SystemException)
 

IOP::TaggedProfile * TAO_ClientRequestInfo_i::effective_profile ACE_ENV_SINGLE_ARG_DECL    throw (CORBA::SystemException)
 

CORBA::Object_ptr TAO_ClientRequestInfo_i::effective_target ACE_ENV_SINGLE_ARG_DECL    throw (CORBA::SystemException)
 

Return the object reference for the current target. The target may change in the even of a location forward.

Dynamic::ExceptionList * TAO_ClientRequestInfo_i::exceptions ACE_ENV_SINGLE_ARG_DECL    throw (CORBA::SystemException) [virtual]
 

Return the list of exceptions the current operation is capable of throwing.

Reimplemented in TAO_ClientRequestInfo_CORBA_Policy_copy, and TAO_ClientRequestInfo_CORBA_Policy_destroy.

ACE_INLINE void TAO_ClientRequestInfo_i::forward_reference PortableInterceptor::ForwardRequest   exc
 

Extract the forward object reference from the PortableInterceptor::ForwardRequest exception, and set the reply status flag accordingly.

CORBA::Object_ptr TAO_ClientRequestInfo_i::forward_reference ACE_ENV_SINGLE_ARG_DECL    throw (CORBA::SystemException)
 

If the reply status is PortableInterceptor::LOCATION_FORWARD or PortableInterceptor::LOCATION_FORWARD_PERMANENT, return the object reference to which the request was forwarded.

IOP::TaggedComponent * TAO_ClientRequestInfo_i::get_effective_component IOP::ComponentId id    ACE_ENV_ARG_DECL throw (CORBA::SystemException)
 

Return the first IOP::TaggedComponent that matches the given IOP::ComponentId in the object reference for the current target.

IOP::TaggedComponentSeq * TAO_ClientRequestInfo_i::get_effective_components IOP::ComponentId id    ACE_ENV_ARG_DECL throw (CORBA::SystemException)
 

Return all IOP::TaggedComponent(s) that match the given IOP::ComponentId in the object reference for the current target.

IOP::ServiceContext * TAO_ClientRequestInfo_i::get_reply_service_context IOP::ServiceId id    ACE_ENV_ARG_DECL throw (CORBA::SystemException)
 

Return the IOP::ServiceContext with the given IOP::ServiceId from the reply service context list.

CORBA::Policy_ptr TAO_ClientRequestInfo_i::get_request_policy CORBA::PolicyType type    ACE_ENV_ARG_DECL throw (CORBA::SystemException)
 

Return the policy of the given type in effect for the current request.

IOP::ServiceContext * TAO_ClientRequestInfo_i::get_request_service_context IOP::ServiceId id    ACE_ENV_ARG_DECL throw (CORBA::SystemException)
 

Return the IOP::ServiceContext with the given IOP::ServiceId from the request service context list.

IOP::ServiceContext * TAO_ClientRequestInfo_i::get_service_context_i TAO_Service_Context   service_context_list,
IOP::ServiceId id    ACE_ENV_ARG_DECL
throw (CORBA::SystemException) [protected]
 

Helper method to get the request and response service contexts.

CORBA::Any * TAO_ClientRequestInfo_i::get_slot PortableInterceptor::SlotId id    ACE_ENV_ARG_DECL throw (CORBA::SystemException, PortableInterceptor::InvalidSlot)
 

char * TAO_ClientRequestInfo_i::operation ACE_ENV_SINGLE_ARG_DECL    throw (CORBA::SystemException)
 

Return the operation name for the current request.

Dynamic::RequestContext * TAO_ClientRequestInfo_i::operation_context ACE_ENV_SINGLE_ARG_DECL    throw (CORBA::SystemException)
 

CORBA::Any * TAO_ClientRequestInfo_i::received_exception ACE_ENV_SINGLE_ARG_DECL    throw (CORBA::SystemException)
 

Note:
There is no trivial way to extract the exception from an Any.

char * TAO_ClientRequestInfo_i::received_exception_id ACE_ENV_SINGLE_ARG_DECL    throw (CORBA::SystemException)
 

Return the repository ID for the received exception.

void TAO_ClientRequestInfo_i::reply_status int    invoke_status
 

Set the status of the received reply.

PortableInterceptor::ReplyStatus TAO_ClientRequestInfo_i::reply_status ACE_ENV_SINGLE_ARG_DECL    throw (CORBA::SystemException)
 

Return the reply status for the current request. Statuses can be PortableInterceptor::SUCCESSFUL, SYSTEM_EXCEPTION, USER_EXCEPTION, LOCATION_FORWARD, LOCATION_FORWARD_PERMANENT, TRANSPORT_RETRY.

CORBA::ULong TAO_ClientRequestInfo_i::request_id ACE_ENV_SINGLE_ARG_DECL    throw (CORBA::SystemException)
 

Return an ID unique to the current request. This request ID may or may not be the same as the GIOP request ID.

ACE_INLINE void TAO_ClientRequestInfo_i::response_expected CORBA::Boolean    flag
 

Set the flag that states whether or not a response is expected. For example, no response is expected in a one-way operation.

CORBA::Boolean TAO_ClientRequestInfo_i::response_expected ACE_ENV_SINGLE_ARG_DECL    throw (CORBA::SystemException)
 

Returns true for a two-way operation, and false otherwise.

CORBA::Any * TAO_ClientRequestInfo_i::result ACE_ENV_SINGLE_ARG_DECL    throw (CORBA::SystemException) [virtual]
 

Return the result of the current request. If there is no return value then an Any with tk_void TypeCode is returned. This is method is not valid for oneway operations.

Reimplemented in TAO_ClientRequestInfo_CORBA_Policy_copy, and TAO_ClientRequestInfo_CORBA_Policy_destroy.

CORBA::Short TAO_ClientRequestInfo_i::sync_scope ACE_ENV_SINGLE_ARG_DECL    throw (CORBA::SystemException)
 

Return the sync_scope policy value for the current one-way operation. If the operation is not a one-way, a CORBA::BAD_INV_ORDER exception is thrown.

CORBA::Object_ptr TAO_ClientRequestInfo_i::target ACE_ENV_SINGLE_ARG_DECL    throw (CORBA::SystemException)
 

Return the (initial, non-forwarded, or permanently forwarded) object reference of the target.


Member Data Documentation

CORBA::AbstractBase_ptr TAO_ClientRequestInfo_i::abstract_target_ [protected]
 

Reference to the abstract interface target.

CORBA::Exception* TAO_ClientRequestInfo_i::caught_exception_ [protected]
 

Pointer to the caught exception.

ACE_INLINE void TAO_ClientRequestInfo_i::exception
 

Change the exception status.

TAO_GIOP_Invocation* TAO_ClientRequestInfo_i::invocation_ [protected]
 

Pointer to the GIOP invocation object.

PortableInterceptor::ReplyStatus TAO_ClientRequestInfo_i::reply_status_ [protected]
 

Reply status for the current request.

CORBA::Boolean TAO_ClientRequestInfo_i::response_expected_ [protected]
 

True if a two-way operation, false otherwise.

TAO_PICurrent_Impl TAO_ClientRequestInfo_i::rs_pi_current_ [protected]
 

The "Request Scope Current" (RSC) object, as required by Portable Interceptors.

CORBA::Object_ptr TAO_ClientRequestInfo_i::target_ [protected]
 

Reference to the target object.


The documentation for this class was generated from the following files:
Generated on Thu Oct 10 18:26:50 2002 for TAO by doxygen1.2.13.1 written by Dimitri van Heesch, © 1997-2001