TAO 4.0.1
|
Class representing a ServerRequest object. More...
#include <TAO_Server_Request.h>
Public Member Functions | |
TAO_ServerRequest (TAO_GIOP_Message_Base *mesg_base, TAO_InputCDR &input, TAO_OutputCDR &output, TAO_Transport *transport, TAO_ORB_Core *orb_core) | |
TAO_ServerRequest (TAO_GIOP_Message_Base *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) | |
TAO_ServerRequest (TAO_ORB_Core *orb_core, TAO_Operation_Details const &details, CORBA::Object_ptr target) | |
Constructor used by thru-POA collocated invocation path. | |
~TAO_ServerRequest () | |
Destructor. | |
Friends | |
class | TAO::CSD::FW_Server_Request_Wrapper |
class | TAO_AMH_Response_Handler |
Declare TAO_AMH_Response_Handler a friend. | |
Request attributes. | |
TAO_GIOP_Message_Base * | mesg_base_ |
Operation name. | |
const char * | operation_ |
Operation name. | |
size_t | operation_len_ |
Operation length. | |
bool | release_operation_ |
Do we own the memory associated with operation_? | |
CORBA::Object_var | forward_location_ |
Operation name. | |
bool | is_forwarded_ |
Operation name. | |
TAO_InputCDR * | incoming_ |
Incoming stream. | |
TAO_OutputCDR * | outgoing_ |
Outgoing stream. | |
CORBA::Boolean | response_expected_ |
CORBA::Boolean | deferred_reply_ |
CORBA::Boolean | sync_with_server_ |
CORBA::Boolean | is_queued_ |
CORBA::Boolean | is_dsi_ |
Did we get passed to a CORBA::ServerRequest? | |
GIOP::ReplyStatusType | reply_status_ |
Reply status (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_ |
Operation name. | |
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. | |
ptrdiff_t | dsi_nvlist_align_ |
Used to pad CDR stream if we have used DSI. | |
TAO_Operation_Details const * | operation_details_ |
Operation name. | |
CORBA::Boolean | argument_flag_ |
TAO::Transport_Selection_Guard | transport_ |
const char * | operation () const |
Return the operation name. | |
void | operation (const char *operation, size_t length, int release) |
Set the operation name. | |
size_t | operation_length () const |
Return the length of the operation. | |
CORBA::ORB_ptr | orb () |
Return the underlying ORB. | |
TAO_ORB_Core * | orb_core () const |
Return the ORB core pointer member. | |
void | init_reply () |
Start a Reply message. | |
TAO_InputCDR * | incoming () const |
Retrieve the incoming stream. | |
TAO_OutputCDR * | outgoing () const |
Retrieve the outgoing stream. | |
CORBA::Boolean | response_expected () const |
Is the response expected? | |
CORBA::Boolean | deferred_reply () const |
Should the reply be deferred? | |
void | response_expected (CORBA::Boolean response) |
Set the response expected flag. | |
CORBA::Boolean | sync_with_server () const |
Should we return before dispatching the servant? | |
void | sync_with_server (CORBA::Boolean sync_flag) |
Set the sync_with_server flag. | |
CORBA::Boolean | is_queued () const |
Is the request at risk of being queued? | |
void | is_queued (CORBA::Boolean qeueued_flag) |
Set the queued flag. | |
void | sync_after_dispatch () |
Send a sync reply if needed after _dispatch is called. | |
void | sync_before_dispatch () |
void | send_no_exception_reply () |
Used with reliable oneway requests. | |
TAO::ObjectKey & | object_key () |
Operation name. | |
TAO_Service_Context & | request_service_context () |
Return the request TAO_Service_Context. | |
TAO_Service_Context & | reply_service_context () |
Return the reply TAO_Service_Context. | |
IOP::ServiceContextList & | reply_service_info () |
Operation name. | |
IOP::ServiceContextList & | request_service_info () |
Operation name. | |
TAO_Transport * | transport () |
Return the underlying transport. | |
CORBA::ULong | request_id () |
void | request_id (CORBA::ULong req) |
Operation name. | |
void | forward_location (CORBA::Object_ptr forward_reference) |
CORBA::Object_ptr | forward_location () |
Get the forward_location. | |
bool | is_forwarded () const |
GIOP::ReplyStatusType | reply_status () |
Get the reply status. | |
void | reply_status (GIOP::ReplyStatusType except_type) |
Set the reply status. | |
void | requesting_principal (const CORBA::OctetSeq &principal) |
Set the requesting principal. | |
TAO_Tagged_Profile & | profile () |
Return the reference to the tagged profile. | |
void | tao_send_reply () |
Operation name. | |
void | tao_send_reply_exception (const CORBA::Exception &ex) |
Operation name. | |
void | is_dsi () |
Set the boolean member to true. | |
void | dsi_nvlist_align (ptrdiff_t alignment) |
Set the member. | |
TAO_Operation_Details const * | operation_details () const |
Get the operation details for the current request. | |
void | argument_flag (CORBA::Boolean flag) |
Set the argument_flag. | |
CORBA::Boolean | argument_flag () |
Get the argument_flag. | |
bool | collocated () const |
Returns true if the current request is collocated. | |
TAO_ServerRequest () | |
Class representing a ServerRequest object.
Encapsulates CDR, transport and pluggable messaging components on the server side.
TAO_ServerRequest::TAO_ServerRequest | ( | TAO_GIOP_Message_Base * | mesg_base, |
TAO_InputCDR & | input, | ||
TAO_OutputCDR & | output, | ||
TAO_Transport * | transport, | ||
TAO_ORB_Core * | orb_core ) |
TAO_ServerRequest::TAO_ServerRequest | ( | TAO_GIOP_Message_Base * | 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 ) |
TAO_ServerRequest::TAO_ServerRequest | ( | TAO_ORB_Core * | orb_core, |
TAO_Operation_Details const & | details, | ||
CORBA::Object_ptr | target ) |
Constructor used by thru-POA collocated invocation path.
TAO_ServerRequest::~TAO_ServerRequest | ( | ) |
Destructor.
|
private |
Default ctor only used to create a TAO_ServerRequest that is about to be the target of a clone operation.
CORBA::Boolean TAO_ServerRequest::argument_flag | ( | ) |
Get the argument_flag.
void TAO_ServerRequest::argument_flag | ( | CORBA::Boolean | flag | ) |
Set the argument_flag.
bool TAO_ServerRequest::collocated | ( | ) | const |
Returns true
if the current request is collocated.
CORBA::Boolean TAO_ServerRequest::deferred_reply | ( | ) | const |
Should the reply be deferred?
void TAO_ServerRequest::dsi_nvlist_align | ( | ptrdiff_t | alignment | ) |
Set the member.
CORBA::Object_ptr TAO_ServerRequest::forward_location | ( | ) |
Get the forward_location.
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().
TAO_InputCDR * TAO_ServerRequest::incoming | ( | ) | const |
Retrieve the incoming stream.
void TAO_ServerRequest::init_reply | ( | ) |
Start a Reply message.
void TAO_ServerRequest::is_dsi | ( | ) |
Set the boolean member to true.
bool TAO_ServerRequest::is_forwarded | ( | ) | const |
Since forward location is allowed to be nil then this is a proper method to check if the request is being forwarded.
CORBA::Boolean TAO_ServerRequest::is_queued | ( | ) | const |
Is the request at risk of being queued?
void TAO_ServerRequest::is_queued | ( | CORBA::Boolean | qeueued_flag | ) |
Set the queued flag.
TAO::ObjectKey & TAO_ServerRequest::object_key | ( | ) |
Operation name.
const char * TAO_ServerRequest::operation | ( | ) | const |
Return the operation name.
void TAO_ServerRequest::operation | ( | const char * | operation, |
size_t | length, | ||
int | release ) |
Set the operation name.
TAO_Operation_Details const * TAO_ServerRequest::operation_details | ( | ) | const |
Get the operation details for the current request.
size_t TAO_ServerRequest::operation_length | ( | ) | const |
Return the length of the operation.
CORBA::ORB_ptr TAO_ServerRequest::orb | ( | ) |
Return the underlying ORB.
TAO_ORB_Core * TAO_ServerRequest::orb_core | ( | ) | const |
Return the ORB core pointer member.
TAO_OutputCDR * TAO_ServerRequest::outgoing | ( | ) | const |
Retrieve the outgoing stream.
TAO_Tagged_Profile & TAO_ServerRequest::profile | ( | ) |
Return the reference to the tagged profile.
TAO_Service_Context & TAO_ServerRequest::reply_service_context | ( | ) |
Return the reply TAO_Service_Context.
IOP::ServiceContextList & TAO_ServerRequest::reply_service_info | ( | ) |
Operation name.
GIOP::ReplyStatusType TAO_ServerRequest::reply_status | ( | ) |
Get the reply status.
void TAO_ServerRequest::reply_status | ( | GIOP::ReplyStatusType | except_type | ) |
Set the reply status.
CORBA::ULong TAO_ServerRequest::request_id | ( | ) |
To handle System Exceptions at the lowest level, a method returning the request_id_ is needed.
void TAO_ServerRequest::request_id | ( | CORBA::ULong | req | ) |
Operation name.
TAO_Service_Context & TAO_ServerRequest::request_service_context | ( | ) |
Return the request TAO_Service_Context.
IOP::ServiceContextList & TAO_ServerRequest::request_service_info | ( | ) |
Operation name.
void TAO_ServerRequest::requesting_principal | ( | const CORBA::OctetSeq & | principal | ) |
Set the requesting principal.
CORBA::Boolean TAO_ServerRequest::response_expected | ( | ) | const |
Is the response expected?
void TAO_ServerRequest::response_expected | ( | CORBA::Boolean | response | ) |
Set the response expected flag.
void TAO_ServerRequest::send_no_exception_reply | ( | ) |
Used with reliable oneway requests.
void TAO_ServerRequest::sync_after_dispatch | ( | ) |
Send a sync reply if needed after _dispatch is called.
void TAO_ServerRequest::sync_before_dispatch | ( | ) |
Send a sync reply if needed before _dispatch is called to avoid possible queuing first.
CORBA::Boolean TAO_ServerRequest::sync_with_server | ( | ) | const |
Should we return before dispatching the servant?
void TAO_ServerRequest::sync_with_server | ( | CORBA::Boolean | sync_flag | ) |
Set the sync_with_server flag.
void TAO_ServerRequest::tao_send_reply | ( | ) |
Operation name.
void TAO_ServerRequest::tao_send_reply_exception | ( | const CORBA::Exception & | ex | ) |
Operation name.
TAO_Transport * TAO_ServerRequest::transport | ( | ) |
Return the underlying transport.
|
friend |
Declare FW_Server_Request_Wrapper a friend This friendship makes the FW_Server_Request_Wrapper be able to clone the TAO_ServerRequest.
|
friend |
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.
|
private |
An argument flag to indicate whether there is any data that is going to get marshaled along as a reply. The default will be true which indicates that we have some data that needs to be sent back to the client.
|
private |
false: Reply would be sent by the object of this class which is the default. true: Reply would not be prepared by this class and it would be deferred for somebody.
|
private |
Used to pad CDR stream if we have used DSI.
|
private |
Operation name.
|
private |
Incoming stream.
|
private |
Did we get passed to a CORBA::ServerRequest?
|
private |
Operation name.
|
private |
true: this request is (or may be) queued by the POA false: no POA queuing involved
|
private |
Operation name.
|
private |
Operation name.
|
private |
Operation name.
|
private |
Operation length.
|
private |
A pointer to the ORB Core for the context where the request was created.
|
private |
Outgoing stream.
|
private |
The tagged profile that has the addressing information.
|
private |
Do we own the memory associated with operation_?
|
private |
Operation name.
|
private |
Reply status (will be NO_EXCEPTION in the majority of the cases).
|
private |
Unique identifier for a request.
|
private |
Service Context info.
|
private |
Identifies the requester.
|
private |
false: oneway (SYNC_NONE or SYNC_WITH_TRANSPORT) true: twoway, or oneway (SYNC_WITH_SERVER or SYNC_WITH_TARGET)
|
private |
true: oneway (SYNC_WITH_SERVER) false: anything else
|
private |
Transport class. An RAII (resource acquisition is initialization) class instance for interfacing with TSS storage for the "current" transport.