TAO_PI  2.2.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Private Member Functions | Private Attributes | List of all members
TAO_ClientRequestInfo Class Reference

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

#include <ClientRequestInfo.h>

Inheritance diagram for TAO_ClientRequestInfo:
Inheritance graph
Collaboration diagram for TAO_ClientRequestInfo:
Collaboration graph

Public Member Functions

 TAO_ClientRequestInfo (TAO::Invocation_Base *invocation)
 
virtual CORBA::ULong request_id (void)
 
virtual char * operation (void)
 Return the operation name for the current request. More...
 
virtual Dynamic::ParameterList * arguments (void)
 Return the list of arguments passed to the current operation. More...
 
virtual Dynamic::ExceptionList * exceptions (void)
 
virtual Dynamic::ContextList * contexts (void)
 
virtual Dynamic::RequestContext * operation_context (void)
 
virtual CORBA::Any * result (void)
 
virtual CORBA::Boolean response_expected (void)
 Returns true for a two-way operation, and false otherwise. More...
 
virtual Messaging::SyncScope sync_scope (void)
 
virtual
PortableInterceptor::ReplyStatus 
reply_status (void)
 Return the reply status for the current request. More...
 
virtual CORBA::Object_ptr forward_reference (void)
 
virtual CORBA::Any * get_slot (PortableInterceptor::SlotId id)
 
virtual IOP::ServiceContext * get_request_service_context (IOP::ServiceId id)
 
virtual IOP::ServiceContext * get_reply_service_context (IOP::ServiceId id)
 
virtual CORBA::Object_ptr target (void)
 
virtual CORBA::Object_ptr effective_target (void)
 
virtual IOP::TaggedProfile * effective_profile (void)
 
virtual CORBA::Any * received_exception (void)
 
virtual char * received_exception_id (void)
 Return the repository ID for the received exception. More...
 
virtual IOP::TaggedComponent * get_effective_component (IOP::ComponentId id)
 
virtual IOP::TaggedComponentSeqget_effective_components (IOP::ComponentId id)
 
virtual CORBA::Policy_ptr get_request_policy (CORBA::PolicyType type)
 
virtual void add_request_service_context (const IOP::ServiceContext &service_context, CORBA::Boolean replace)
 
void tao_ft_expiration_time (TimeBase::TimeT time)
 Set the absolute FT expiration time for this request. More...
 
TimeBase::TimeT tao_ft_expiration_time (void) const
 Get the absolute FT expiration time for this request. More...
 
void tao_ft_retention_id (CORBA::Long request_id)
 Set the FT request retention ID for this request. More...
 
CORBA::Long tao_ft_retention_id (void) const
 Get the FT request retention ID for this request. More...
 
- Public Member Functions inherited from CORBA::Object
virtual TAO::ObjectKey_key (void)
 
virtual CORBA::ULong _hash (CORBA::ULong maximum)
 
virtual CORBA::Boolean _is_equivalent (CORBA::Object_ptr other_obj)
 
virtual CORBA::Boolean _non_existent (void)
 
virtual InterfaceDef_ptr _get_interface (void)
 
virtual CORBA::Object_ptr _get_component (void)
 
virtual char * _repository_id (void)
 
virtual void _create_request (CORBA::Context_ptr ctx, const char *operation, CORBA::NVList_ptr arg_list, CORBA::NamedValue_ptr result, CORBA::Request_ptr &request, CORBA::Flags req_flags)
 
virtual void _create_request (CORBA::Context_ptr ctx, const char *operation, CORBA::NVList_ptr arg_list, CORBA::NamedValue_ptr result, CORBA::ExceptionList_ptr exclist, CORBA::ContextList_ptr ctxtlist, CORBA::Request_ptr &request, CORBA::Flags req_flags)
 
virtual CORBA::Request_ptr _request (const char *operation)
 
virtual CORBA::ORB_ptr _get_orb (void)
 

Private Member Functions

bool parameter_list (Dynamic::ParameterList &param_list)
 
bool exception_list (Dynamic::ExceptionList &exception_list)
 
bool result (CORBA::Any *any)
 
void check_validity (void)
 
void setup_picurrent (void)
 
IOP::ServiceContext * get_service_context_i (TAO_Service_Context &service_context_list, IOP::ServiceId id)
 Helper method to get the request and response service contexts. More...
 

Private Attributes

TAO::Invocation_Baseinvocation_
 Pointer to the invocation object. More...
 
TAO::PICurrent_Impl rs_pi_current_
 

Detailed Description

Implementation of the PortableInterceptor::ClientRequestInfo interface.

Constructor & Destructor Documentation

TAO_ClientRequestInfo::TAO_ClientRequestInfo ( TAO::Invocation_Base invocation)

Member Function Documentation

void TAO_ClientRequestInfo::add_request_service_context ( const IOP::ServiceContext &  service_context,
CORBA::Boolean  replace 
)
virtual

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

Dynamic::ParameterList * TAO_ClientRequestInfo::arguments ( void  )
virtual

Return the list of arguments passed to the current operation.

void TAO_ClientRequestInfo::check_validity ( void  )
private

Check if this ClientRequestInfo object is called within the context of a request.

Dynamic::ContextList * TAO_ClientRequestInfo::contexts ( void  )
virtual
IOP::TaggedProfile * TAO_ClientRequestInfo::effective_profile ( void  )
virtual
CORBA::Object_ptr TAO_ClientRequestInfo::effective_target ( void  )
virtual

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

bool TAO_ClientRequestInfo::exception_list ( Dynamic::ExceptionList &  exception_list)
private
Dynamic::ExceptionList * TAO_ClientRequestInfo::exceptions ( void  )
virtual

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

CORBA::Object_ptr TAO_ClientRequestInfo::forward_reference ( void  )
virtual

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

IOP::TaggedComponent * TAO_ClientRequestInfo::get_effective_component ( IOP::ComponentId  id)
virtual

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

IOP::TaggedComponentSeq * TAO_ClientRequestInfo::get_effective_components ( IOP::ComponentId  id)
virtual

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

IOP::ServiceContext * TAO_ClientRequestInfo::get_reply_service_context ( IOP::ServiceId  id)
virtual

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

CORBA::Policy_ptr TAO_ClientRequestInfo::get_request_policy ( CORBA::PolicyType  type)
virtual

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

IOP::ServiceContext * TAO_ClientRequestInfo::get_request_service_context ( IOP::ServiceId  id)
virtual

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

IOP::ServiceContext * TAO_ClientRequestInfo::get_service_context_i ( TAO_Service_Context service_context_list,
IOP::ServiceId  id 
)
private

Helper method to get the request and response service contexts.

CORBA::Any * TAO_ClientRequestInfo::get_slot ( PortableInterceptor::SlotId  id)
virtual
char * TAO_ClientRequestInfo::operation ( void  )
virtual

Return the operation name for the current request.

Dynamic::RequestContext * TAO_ClientRequestInfo::operation_context ( void  )
virtual
bool TAO_ClientRequestInfo::parameter_list ( Dynamic::ParameterList &  param_list)
private
CORBA::Any * TAO_ClientRequestInfo::received_exception ( void  )
virtual

Return an Any containing the received exception, if any. Otherwise, throw a CORBA::BAD_INV_ORDER exception.

Note
There is no trivial way to extract the exception from an Any.
char * TAO_ClientRequestInfo::received_exception_id ( void  )
virtual

Return the repository ID for the received exception.

PortableInterceptor::ReplyStatus TAO_ClientRequestInfo::reply_status ( void  )
virtual

Return the reply status for the current request.

Statuses can be PortableInterceptor::SUCCESSFUL, SYSTEM_EXCEPTION, USER_EXCEPTION, LOCATION_FORWARD, TRANSPORT_RETRY, UNKNOWN.

CORBA::ULong TAO_ClientRequestInfo::request_id ( void  )
virtual

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

CORBA::Boolean TAO_ClientRequestInfo::response_expected ( void  )
virtual

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

CORBA::Any * TAO_ClientRequestInfo::result ( void  )
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.

bool TAO_ClientRequestInfo::result ( CORBA::Any *  any)
private
void TAO_ClientRequestInfo::setup_picurrent ( void  )
private

Setup thread scope and request scope PortableInterceptor::Current objects.

Messaging::SyncScope TAO_ClientRequestInfo::sync_scope ( void  )
virtual

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.

void TAO_ClientRequestInfo::tao_ft_expiration_time ( TimeBase::TimeT  time)

Set the absolute FT expiration time for this request.

TimeBase::TimeT TAO_ClientRequestInfo::tao_ft_expiration_time ( void  ) const

Get the absolute FT expiration time for this request.

void TAO_ClientRequestInfo::tao_ft_retention_id ( CORBA::Long  request_id)

Set the FT request retention ID for this request.

CORBA::Long TAO_ClientRequestInfo::tao_ft_retention_id ( void  ) const

Get the FT request retention ID for this request.

CORBA::Object_ptr TAO_ClientRequestInfo::target ( void  )
virtual

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

Member Data Documentation

TAO::Invocation_Base* TAO_ClientRequestInfo::invocation_
private

Pointer to the invocation object.

TAO::PICurrent_Impl TAO_ClientRequestInfo::rs_pi_current_
private

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


The documentation for this class was generated from the following files: