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

TAO_ServerRequest Class Reference

Class representing a ServerRequest object. More...

#include <TAO_Server_Request.h>

Collaboration diagram for TAO_ServerRequest:

Collaboration graph
[legend]
List of all members.

Public Methods

 TAO_ServerRequest (TAO_Pluggable_Messaging *mesg_base, TAO_InputCDR &input, TAO_OutputCDR &output, TAO_Transport *transport, TAO_ORB_Core *orb_core)
 TAO_ServerRequest (TAO_Pluggable_Messaging *mesg_base, CORBA::ULong request_id, CORBA::Boolean response_expected, CORBA::Boolean deferred_flag, TAO_ObjectKey &object_key, const char *operation, TAO_OutputCDR &output, TAO_Transport *transport, TAO_ORB_Core *orb_core, int &parse_error)
virtual ~TAO_ServerRequest (void)
 Destructor.

CORBA::ORB_ptr orb (void)
 Return the underlying ORB.

TAO_ORB_Coreorb_core (void)
 Return the ORB core pointer member.

void init_reply (void)
 Start a Reply message.

TAO_InputCDRincoming (void)
 Retrieve the incoming stream.

TAO_OutputCDRoutgoing (void)
 Retrieve the outgoing stream.

CORBA::Boolean response_expected (void) const
 Is the response expected?

CORBA::Boolean deferred_reply (void) const
 Should the reply be deferred?

void response_expected (CORBA::Boolean response)
 Set the response expected flag.

CORBA::Boolean sync_with_server (void) const
 Should we return before dispatching the servant?

void sync_with_server (CORBA::Boolean sync_flag)
 Set the sync_with_server flag.

void send_no_exception_reply (void)
 Used with reliable oneway requests.

TAO_ObjectKeyobject_key (void)
TAO_Service_Contextrequest_service_context (void)
 Return the TAO_Service_Context.

TAO_Service_Contextreply_service_context (void)
TAO_Transporttransport ()
 Return the underlying transport.

void forward_location (CORBA::Object_ptr forward_reference)
CORBA::Object_ptr forward_location (void)
 Get the forward_location.

CORBA::ULong exception_type (void)
 Get the exception type.

void exception_type (CORBA::ULong except_type)
 Set the exception type.

void requesting_principal (const CORBA_OctetSeq & principal)
 Set the requesting principal. More...

TAO_Tagged_Profileprofile (void)
 Return the reference to the tagged profile.

void tao_send_reply (void)
void tao_send_reply_exception (CORBA::Exception&)
void is_dsi (void)
 Set the boolean member to 1.

void dsi_nvlist_align (ptr_arith_t alignment)
 Set the member.

void argument_flag (CORBA::Boolean flag)
 Get/Set operations for the argument_flag.

CORBA::Boolean argument_flag (void)
size_t& interceptor_count (void)
 Return a reference to the number of interceptors pushed on to the current interceptor flow stack. More...

TAO_PICurrent_Implrs_pi_current (void)
 Return a reference to the "request scope" PICurrent object.

Request attributes.
const char* operation (void) const
 Return the operation name.

void operation (const char *operation, size_t length, int release)
 Set the operation name.

unsigned int operation_length (void) const
 Return the legnth of the operation.

IOP::ServiceContextListrequest_service_info (void)
IOP::ServiceContextListreply_service_info (void)
CORBA::ULong request_id (void)
void request_id (CORBA::ULong req)

Private Attributes

TAO_Pluggable_Messagingmesg_base_
ACE_CString operation_
 Operation name.

CORBA::Object_var forward_location_
TAO_InputCDRincoming_
 Incoming stream.

TAO_OutputCDRoutgoing_
 Outgoing stream.

TAO_Transporttransport_
 Transport class.

CORBA::Boolean response_expected_
 0: oneway (SYNC_NONE or SYNC_WITH_TRANSPORT) 1: twoway, or oneway (SYNC_WITH_SERVER or SYNC_WITH_TARGET).

CORBA::Boolean deferred_reply_
CORBA::Boolean sync_with_server_
 1: oneway (SYNC_WITH_SERVER) 0: anything else.

CORBA::ULong exception_type_
 Exception type (will be NO_EXCEPTION in the majority of the cases).

TAO_ORB_Coreorb_core_
 A pointer to the ORB Core for the context where the request was created.

TAO_Service_Context request_service_context_
 Service Context info.

TAO_Service_Context reply_service_context_
CORBA::ULong request_id_
 Unique identifier for a request.

TAO_Tagged_Profile profile_
 The tagged profile that has the addressing information.

CORBA_OctetSeq_var requesting_principal_
 Identifies the requester.

CORBA::Boolean is_dsi_
 Did we get passed to a CORBA::ServerRequest?

ptr_arith_t dsi_nvlist_align_
 Used to pad CDR stream if we have used DSI.

CORBA::Boolean argument_flag_
size_t interceptor_count_
 The number of interceptors pushed on to the current interceptor flow stack.

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


Detailed Description

Class representing a ServerRequest object.

Encapsulates CDR, transport and pluggable messaging components on the server side.


Constructor & Destructor Documentation

TAO_ServerRequest::TAO_ServerRequest ( TAO_Pluggable_Messaging * mesg_base,
TAO_InputCDR & input,
TAO_OutputCDR & output,
TAO_Transport * transport,
TAO_ORB_Core * orb_core )
 

TAO_ServerRequest::TAO_ServerRequest ( TAO_Pluggable_Messaging * mesg_base,
CORBA::ULong request_id,
CORBA::Boolean response_expected,
CORBA::Boolean deferred_reply,
TAO_ObjectKey & object_key,
const char * operation,
TAO_OutputCDR & output,
TAO_Transport * transport,
TAO_ORB_Core * orb_core,
int & parse_error )
 

TAO_ServerRequest::~TAO_ServerRequest ( void ) [virtual]
 

Destructor.


Member Function Documentation

ACE_INLINE CORBA::Boolean TAO_ServerRequest::argument_flag ( void )
 

ACE_INLINE void TAO_ServerRequest::argument_flag ( CORBA::Boolean flag )
 

Get/Set operations for the argument_flag.

ACE_INLINE CORBA::Boolean TAO_ServerRequest::deferred_reply ( void ) const
 

Should the reply be deferred?

ACE_INLINE void TAO_ServerRequest::dsi_nvlist_align ( ptr_arith_t alignment )
 

Set the member.

ACE_INLINE void TAO_ServerRequest::exception_type ( CORBA::ULong except_type )
 

Set the exception type.

ACE_INLINE CORBA::ULong TAO_ServerRequest::exception_type ( void )
 

Get the exception type.

ACE_INLINE CORBA::Object_ptr TAO_ServerRequest::forward_location ( void )
 

Get the forward_location.

ACE_INLINE void TAO_ServerRequest::forward_location ( CORBA::Object_ptr forward_reference )
 

Set the reference to the object the request should be forwarded to. This reference will only be used if set prior to calling init_reply().

ACE_INLINE TAO_InputCDR & TAO_ServerRequest::incoming ( void )
 

Retrieve the incoming stream.

void TAO_ServerRequest::init_reply ( void )
 

Start a Reply message.

size_t & TAO_ServerRequest::interceptor_count ( void )
 

Return a reference to the number of interceptors pushed on to the current interceptor flow stack.

Note:
It is a reference since the Portable Interceptor flow stack code must be able to modify this value and use that value at a later time without being forced to use TSS.

ACE_INLINE void TAO_ServerRequest::is_dsi ( void )
 

Set the boolean member to 1.

ACE_INLINE TAO_ObjectKey & TAO_ServerRequest::object_key ( void )
 

ACE_INLINE void TAO_ServerRequest::operation ( const char * operation,
size_t length,
int release )
 

Set the operation name.

ACE_INLINE const char * TAO_ServerRequest::operation ( void ) const
 

Return the operation name.

ACE_INLINE unsigned int TAO_ServerRequest::operation_length ( void ) const
 

Return the legnth of the operation.

CORBA::ORB_ptr TAO_ServerRequest::orb ( void )
 

Return the underlying ORB.

ACE_INLINE TAO_ORB_Core * TAO_ServerRequest::orb_core ( void )
 

Return the ORB core pointer member.

ACE_INLINE TAO_OutputCDR & TAO_ServerRequest::outgoing ( void )
 

Retrieve the outgoing stream.

ACE_INLINE TAO_Tagged_Profile & TAO_ServerRequest::profile ( void )
 

Return the reference to the tagged profile.

ACE_INLINE TAO_Service_Context & TAO_ServerRequest::reply_service_context ( void )
 

ACE_INLINE IOP::ServiceContextList & TAO_ServerRequest::reply_service_info ( void )
 

ACE_INLINE void TAO_ServerRequest::request_id ( CORBA::ULong req )
 

ACE_INLINE CORBA::ULong TAO_ServerRequest::request_id ( void )
 

ACE_INLINE TAO_Service_Context & TAO_ServerRequest::request_service_context ( void )
 

Return the TAO_Service_Context.

ACE_INLINE IOP::ServiceContextList & TAO_ServerRequest::request_service_info ( void )
 

Todo:
This two methods should go away.

ACE_INLINE void TAO_ServerRequest::requesting_principal ( const CORBA_OctetSeq & principal )
 

Set the requesting principal.

Note:
Deprecated in CORBA 2.4

ACE_INLINE void TAO_ServerRequest::response_expected ( CORBA::Boolean response )
 

Set the response expected flag.

ACE_INLINE CORBA::Boolean TAO_ServerRequest::response_expected ( void ) const
 

Is the response expected?

TAO_PICurrent_Impl & TAO_ServerRequest::rs_pi_current ( void )
 

Return a reference to the "request scope" PICurrent object.

void TAO_ServerRequest::send_no_exception_reply ( void )
 

Used with reliable oneway requests.

ACE_INLINE void TAO_ServerRequest::sync_with_server ( CORBA::Boolean sync_flag )
 

Set the sync_with_server flag.

ACE_INLINE CORBA::Boolean TAO_ServerRequest::sync_with_server ( void ) const
 

Should we return before dispatching the servant?

void TAO_ServerRequest::tao_send_reply ( void )
 

void TAO_ServerRequest::tao_send_reply_exception ( CORBA::Exception & ex )
 

ACE_INLINE TAO_Transport * TAO_ServerRequest::transport ( void )
 

Return the underlying transport.


Member Data Documentation

CORBA::Boolean TAO_ServerRequest::argument_flag_ [private]
 

An argument flag to indicate whether there is any data that is going to get marshalled along as a reply. The default will be 1 which indicates that we have some data that needs to be sent back to the client.

CORBA::Boolean TAO_ServerRequest::deferred_reply_ [private]
 

0: Reply would be sent by the object of this class which is the default. 1: Reply would not be prepared by this class and it would be deferred for somebody.

ptr_arith_t TAO_ServerRequest::dsi_nvlist_align_ [private]
 

Used to pad CDR stream if we have used DSI.

CORBA::ULong TAO_ServerRequest::exception_type_ [private]
 

Exception type (will be NO_EXCEPTION in the majority of the cases).

CORBA::Object_var TAO_ServerRequest::forward_location_ [private]
 

TAO_InputCDR * TAO_ServerRequest::incoming_ [private]
 

Incoming stream.

size_t TAO_ServerRequest::interceptor_count_ [private]
 

The number of interceptors pushed on to the current interceptor flow stack.

CORBA::Boolean TAO_ServerRequest::is_dsi_ [private]
 

Did we get passed to a CORBA::ServerRequest?

TAO_Pluggable_Messaging * TAO_ServerRequest::mesg_base_ [private]
 

ACE_CString TAO_ServerRequest::operation_ [private]
 

Operation name.

TAO_ORB_Core * TAO_ServerRequest::orb_core_ [private]
 

A pointer to the ORB Core for the context where the request was created.

TAO_OutputCDR * TAO_ServerRequest::outgoing_ [private]
 

Outgoing stream.

TAO_Tagged_Profile TAO_ServerRequest::profile_ [private]
 

The tagged profile that has the addressing information.

TAO_Service_Context TAO_ServerRequest::reply_service_context_ [private]
 

CORBA::ULong TAO_ServerRequest::request_id_ [private]
 

Unique identifier for a request.

TAO_Service_Context TAO_ServerRequest::request_service_context_ [private]
 

Service Context info.

CORBA_OctetSeq_var TAO_ServerRequest::requesting_principal_ [private]
 

Identifies the requester.

CORBA::Boolean TAO_ServerRequest::response_expected_ [private]
 

0: oneway (SYNC_NONE or SYNC_WITH_TRANSPORT) 1: twoway, or oneway (SYNC_WITH_SERVER or SYNC_WITH_TARGET).

TAO_PICurrent_Impl TAO_ServerRequest::rs_pi_current_ [private]
 

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

CORBA::Boolean TAO_ServerRequest::sync_with_server_ [private]
 

1: oneway (SYNC_WITH_SERVER) 0: anything else.

TAO_Transport * TAO_ServerRequest::transport_ [private]
 

Transport class.


The documentation for this class was generated from the following files:
Generated at Sat Dec 1 12:08:52 2001 for TAO by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000