#include <TAO_Server_Request.h>
Collaboration diagram for TAO_ServerRequest:
Public Member Functions | |
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_Core * | orb_core (void) |
Return the ORB core pointer member. | |
void | init_reply (void) |
Start a Reply message. | |
TAO_InputCDR & | incoming (void) |
Retrieve the incoming stream. | |
TAO_OutputCDR & | outgoing (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::ObjectKey & | object_key (void) |
TAO_Service_Context & | request_service_context (void) |
Return the TAO_Service_Context. | |
TAO_Service_Context & | reply_service_context (void) |
TAO_Transport * | transport () |
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. | |
TAO_Tagged_Profile & | profile (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 (ptrdiff_t alignment) |
Set the member. | |
void | argument_flag (CORBA::Boolean flag) |
Get/Set operations for the argument_flag. | |
CORBA::Boolean | argument_flag (void) |
void | send_cached_reply (CORBA::OctetSeq &ocs) |
void | result_seq (CORBA::OctetSeq &ocs) |
int | got_result (void) |
Check whether we got the result. | |
size_t & | interceptor_count (void) |
TAO::PICurrent_Impl & | rs_pi_current (void) |
Return a reference to the "request scope" PICurrent object. | |
TAO::PICurrent_Copy_Callback & | pi_current_copy_callback (void) |
Return a reference to the PICurrent copy callback 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. | |
size_t | operation_length (void) const |
Return the length of the operation. | |
IOP::ServiceContextList & | request_service_info (void) |
IOP::ServiceContextList & | reply_service_info (void) |
CORBA::ULong | request_id (void) |
void | request_id (CORBA::ULong req) |
Private Attributes | |
TAO_Pluggable_Messaging * | mesg_base_ |
ACE_CString | operation_ |
Operation name. | |
CORBA::Object_var | forward_location_ |
TAO_InputCDR * | incoming_ |
Incoming stream. | |
TAO_OutputCDR * | outgoing_ |
Outgoing stream. | |
TAO_Transport * | transport_ |
Transport class. | |
CORBA::Boolean | response_expected_ |
CORBA::Boolean | deferred_reply_ |
CORBA::Boolean | sync_with_server_ |
CORBA::ULong | exception_type_ |
Exception type (will be NO_EXCEPTION in the majority of the cases). | |
TAO_ORB_Core * | orb_core_ |
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? | |
ptrdiff_t | dsi_nvlist_align_ |
Used to pad CDR stream if we have used DSI. | |
CORBA::Boolean | argument_flag_ |
size_t | interceptor_count_ |
TAO::PICurrent_Impl | rs_pi_current_ |
TAO::PICurrent_Copy_Callback | pi_current_copy_callback_ |
CORBA::OctetSeq_var | result_seq_ |
Used by the FTORB. | |
Friends | |
class | TAO_AMH_Response_Handler |
Declare TAO_AMH_Response_Handler a friend. |
Encapsulates CDR, transport and pluggable messaging components on the server side.
|
|
|
|
|
Destructor.
|
|
|
|
Get/Set operations for the argument_flag.
|
|
Should the reply be deferred?
|
|
Set the member.
|
|
Set the exception type.
|
|
Get the exception type.
|
|
Get the forward_location.
|
|
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(). |
|
Check whether we got the result.
|
|
Retrieve the incoming stream.
|
|
Start a Reply message.
|
|
|
|
Set the boolean member to 1.
|
|
|
|
Set the operation name.
|
|
Return the operation name.
|
|
Return the length of the operation.
|
|
Return the underlying ORB.
|
|
Return the ORB core pointer member.
|
|
Retrieve the outgoing stream.
|
|
Return a reference to the PICurrent copy callback object.
|
|
Return the reference to the tagged profile.
|
|
|
|
|
|
To handle System Exceptions at the lowest level, a method returning the request_id_ is needed. |
|
To handle System Exceptions at the lowest level, a method returning the request_id_ is needed. |
|
Return the TAO_Service_Context.
|
|
|
|
Set the requesting principal.
|
|
Set the response expected flag.
|
|
Is the response expected?
|
|
Return the octet sequence pointer through which the FTORB would send the reply back. |
|
Return a reference to the "request scope" PICurrent object.
|
|
Send cached reply. Used in scenarios where the FTORB thinks that this request is a duplicate |
|
Used with reliable oneway requests.
|
|
Set the sync_with_server flag.
|
|
Should we return before dispatching the servant?
|
|
|
|
|
|
Return the underlying transport.
|
|
Declare TAO_AMH_Response_Handler a friend. The TAO_AMH_Response_Handler class needs to copy part of the state in a TAO_ServerRequest, however, we do not want to expose that state as public members of this class, neither do we want to add modifiers to the TAO_AMH_Response_Handler class that would allow us (the TAO_ServerRequest class) to set the state. Lucky for us, C++ is a language for adult developers, and allow us to use the evil "friend" declaration. |
|
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. |
|
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. |
|
Used to pad CDR stream if we have used DSI.
|
|
Exception type (will be NO_EXCEPTION in the majority of the cases).
|
|
|
|
Incoming stream.
|
|
The number of interceptors pushed on to the current interceptor flow stack. |
|
Did we get passed to a CORBA::ServerRequest?
|
|
|
|
Operation name.
|
|
A pointer to the ORB Core for the context where the request was created. |
|
Outgoing stream.
|
|
PICurrent callback object responsible for copying slot table between PICurrents in different scopes (i.e. thread or request). |
|
The tagged profile that has the addressing information.
|
|
|
|
Unique identifier for a request.
|
|
Service Context info.
|
|
Identifies the requester.
|
|
0: oneway (SYNC_NONE or SYNC_WITH_TRANSPORT) 1: twoway, or oneway (SYNC_WITH_SERVER or SYNC_WITH_TARGET) |
|
Used by the FTORB.
|
|
The "Request Scope Current" (RSC) object, as required by Portable Interceptors. |
|
1: oneway (SYNC_WITH_SERVER) 0: anything else |
|
Transport class.
|