#include <operation_details.h>
Collaboration diagram for TAO_Operation_Details:
Helper methods used by the Invocation classes. | |
bool | marshal_args (TAO_OutputCDR &cdr) |
Marshals the list of <this->arg_> into the cdr. | |
bool | demarshal_args (TAO_InputCDR &cdr) |
Demarshals the list of <this->arg_> into the cdr. | |
TAO::Argument ** | args (void) const |
Accessors for the argument list. | |
CORBA::ULong | args_num (void) const |
Marshals the list of <this->arg_> into the cdr. | |
CORBA::ULong | ex_count (void) const |
Exception count. | |
TAO::Exception_Data const * | ex_data (void) const |
Marshals the list of <this->arg_> into the cdr. | |
CORBA::Boolean | use_stub_args (void) const |
Marshals the list of <this->arg_> into the cdr. | |
void | use_stub_args (CORBA::Boolean use_stub_arguments) |
Marshals the list of <this->arg_> into the cdr. | |
void | ft_expiration_time (TimeBase::TimeT time) |
Marshals the list of <this->arg_> into the cdr. | |
TimeBase::TimeT | ft_expiration_time (void) const |
Marshals the list of <this->arg_> into the cdr. | |
void | ft_retention_id (CORBA::Long request_id) |
Marshals the list of <this->arg_> into the cdr. | |
CORBA::Long | ft_retention_id (void) const |
Marshals the list of <this->arg_> into the cdr. | |
CORBA::Boolean | is_dii_request (void) const |
Accessor for is_dii_request_ flag. | |
const char * | opname_ |
Name of the operation being invoked. | |
CORBA::ULong | opname_len_ |
Precalculated length of opname_. | |
CORBA::ULong | request_id_ |
Request ID of this operation. | |
CORBA::Octet | response_flags_ |
Response flags. | |
TAO_Service_Context | request_service_info_ |
TAO_Service_Context | reply_service_info_ |
TAO_Target_Specification::TAO_Target_Address | addressing_mode_ |
Addressing mode for this request. | |
TAO::Argument ** | args_ |
CORBA::ULong | num_args_ |
Number of arguments including the return value. | |
TAO::Exception_Data * | ex_data_ |
The type of exceptions that the operations can throw. | |
CORBA::ULong | ex_count_ |
Count of the exceptions that operations can throw. | |
CORBA::Boolean | use_stub_args_ |
TimeBase::TimeT | ft_expiration_time_ |
FT request expiration time (absolute gregorian). | |
CORBA::Long | ft_retention_id_ |
FT request retention id. | |
CORBA::Boolean | is_dii_request_ |
The dii request flag. | |
Public Member Functions | |
TAO_Operation_Details (const char *name, CORBA::ULong len, TAO::Argument **args=0, CORBA::ULong num_args=0, TAO::Exception_Data *ex_data=0, CORBA::ULong ex_count=0, CORBA::Boolean is_dii_request=false) | |
Constructor. | |
const char * | opname (void) const |
Operation name. | |
CORBA::ULong | opname_len (void) const |
Length of the operation name. | |
CORBA::Boolean | argument_flag (void) const |
void | response_flags (CORBA::Octet flags) |
Set the response flags. | |
CORBA::Octet | response_flags (void) const |
Get the response flags. | |
IOP::ServiceContextList & | request_service_info (void) |
Accessors for the service context list. | |
const IOP::ServiceContextList & | request_service_info (void) const |
IOP::ServiceContextList & | reply_service_info (void) |
const IOP::ServiceContextList & | reply_service_info (void) const |
TAO_Service_Context & | request_service_context (void) |
Access the TAO_Service_Context. | |
const TAO_Service_Context & | request_service_context (void) const |
TAO_Service_Context & | reply_service_context (void) |
const TAO_Service_Context & | reply_service_context (void) const |
void | reset_request_service_info (void) |
void | reset_reply_service_info (void) |
void | request_id (CORBA::ULong id) |
Cache the request id. | |
CORBA::ULong | request_id (void) const |
Return the request ID associated with the operation. | |
TAO_Target_Specification::TAO_Target_Address | addressing_mode (void) const |
Accessor method for the addressing mode. | |
void | addressing_mode (CORBA::Short addr) |
Set method for the addressing mode. | |
CORBA::Exception * | corba_exception (const char *ex) throw (CORBA::SystemException) |
Friends | |
class | TAO::CSD::FW_Server_Request_Wrapper |
This class stores some of the "operation" details that would be required by the invocation classes. This class is in its infancy now but I expect this one to grow as we come with different varieties of use cases.
TAO_BEGIN_VERSIONED_NAMESPACE_DECL ACE_INLINE TAO_Operation_Details::TAO_Operation_Details | ( | const char * | name, | |
CORBA::ULong | len, | |||
TAO::Argument ** | args = 0 , |
|||
CORBA::ULong | num_args = 0 , |
|||
TAO::Exception_Data * | ex_data = 0 , |
|||
CORBA::ULong | ex_count = 0 , |
|||
CORBA::Boolean | is_dii_request = false | |||
) |
Constructor.
ACE_INLINE void TAO_Operation_Details::addressing_mode | ( | CORBA::Short | addr | ) |
Set method for the addressing mode.
ACE_INLINE TAO_Target_Specification::TAO_Target_Address TAO_Operation_Details::addressing_mode | ( | void | ) | const |
Accessor method for the addressing mode.
ACE_INLINE TAO::Argument ** TAO_Operation_Details::args | ( | void | ) | const |
Accessors for the argument list.
ACE_INLINE CORBA::ULong TAO_Operation_Details::args_num | ( | void | ) | const |
Marshals the list of <this->arg_> into the cdr.
ACE_INLINE CORBA::Boolean TAO_Operation_Details::argument_flag | ( | void | ) | const |
Return the flag that indicates whether the operation has any arguments
TAO_BEGIN_VERSIONED_NAMESPACE_DECL CORBA::Exception * TAO_Operation_Details::corba_exception | ( | const char * | ex | ) | throw (CORBA::SystemException) |
This step is important to decode the exception that the client got from the server. If the exception received from the server is not found in the list of exceptions specified by the operation this call would raise an UNKNOWN exception.
bool TAO_Operation_Details::demarshal_args | ( | TAO_InputCDR & | cdr | ) |
Demarshals the list of <this->arg_> into the cdr.
ACE_INLINE CORBA::ULong TAO_Operation_Details::ex_count | ( | void | ) | const |
Exception count.
ACE_INLINE TAO::Exception_Data const * TAO_Operation_Details::ex_data | ( | void | ) | const |
Marshals the list of <this->arg_> into the cdr.
TimeBase::TimeT TAO_Operation_Details::ft_expiration_time | ( | void | ) | const |
Marshals the list of <this->arg_> into the cdr.
void TAO_Operation_Details::ft_expiration_time | ( | TimeBase::TimeT | time | ) |
Marshals the list of <this->arg_> into the cdr.
CORBA::Long TAO_Operation_Details::ft_retention_id | ( | void | ) | const |
Marshals the list of <this->arg_> into the cdr.
void TAO_Operation_Details::ft_retention_id | ( | CORBA::Long | request_id | ) |
Marshals the list of <this->arg_> into the cdr.
ACE_INLINE CORBA::Boolean TAO_Operation_Details::is_dii_request | ( | void | ) | const |
Accessor for is_dii_request_ flag.
bool TAO_Operation_Details::marshal_args | ( | TAO_OutputCDR & | cdr | ) |
Marshals the list of <this->arg_> into the cdr.
ACE_INLINE const char * TAO_Operation_Details::opname | ( | void | ) | const |
Operation name.
ACE_INLINE CORBA::ULong TAO_Operation_Details::opname_len | ( | void | ) | const |
Length of the operation name.
ACE_INLINE const TAO_Service_Context & TAO_Operation_Details::reply_service_context | ( | void | ) | const |
ACE_INLINE TAO_Service_Context & TAO_Operation_Details::reply_service_context | ( | void | ) |
ACE_INLINE const IOP::ServiceContextList & TAO_Operation_Details::reply_service_info | ( | void | ) | const |
ACE_INLINE IOP::ServiceContextList & TAO_Operation_Details::reply_service_info | ( | void | ) |
ACE_INLINE CORBA::ULong TAO_Operation_Details::request_id | ( | void | ) | const |
Return the request ID associated with the operation.
ACE_INLINE void TAO_Operation_Details::request_id | ( | CORBA::ULong | id | ) |
Cache the request id.
ACE_INLINE const TAO_Service_Context & TAO_Operation_Details::request_service_context | ( | void | ) | const |
ACE_INLINE TAO_Service_Context & TAO_Operation_Details::request_service_context | ( | void | ) |
Access the TAO_Service_Context.
ACE_INLINE const IOP::ServiceContextList & TAO_Operation_Details::request_service_info | ( | void | ) | const |
ACE_INLINE IOP::ServiceContextList & TAO_Operation_Details::request_service_info | ( | void | ) |
Accessors for the service context list.
ACE_INLINE void TAO_Operation_Details::reset_reply_service_info | ( | void | ) |
ACE_INLINE void TAO_Operation_Details::reset_request_service_info | ( | void | ) |
Reset the contents of the service context lists that we hold.
ACE_INLINE CORBA::Octet TAO_Operation_Details::response_flags | ( | void | ) | const |
Get the response flags.
ACE_INLINE void TAO_Operation_Details::response_flags | ( | CORBA::Octet | flags | ) |
Set the response flags.
ACE_INLINE void TAO_Operation_Details::use_stub_args | ( | CORBA::Boolean | use_stub_arguments | ) |
Marshals the list of <this->arg_> into the cdr.
ACE_INLINE CORBA::Boolean TAO_Operation_Details::use_stub_args | ( | void | ) | const |
Marshals the list of <this->arg_> into the cdr.
friend class TAO::CSD::FW_Server_Request_Wrapper [friend] |
Declare FW_Server_Request_Wrapper a friend This friendship makes the FW_Server_Request_Wrapper be able to clone the TAO_Operation_Details data member in TAO_ServerRequest.
Addressing mode for this request.
TAO::Argument** TAO_Operation_Details::args_ [private] |
The arguments of this operation. Note that the return value is also an argument
CORBA::ULong TAO_Operation_Details::ex_count_ [private] |
Count of the exceptions that operations can throw.
TAO::Exception_Data* TAO_Operation_Details::ex_data_ [private] |
The type of exceptions that the operations can throw.
FT request expiration time (absolute gregorian).
FT request retention id.
The dii request flag.
CORBA::ULong TAO_Operation_Details::num_args_ [private] |
Number of arguments including the return value.
const char* TAO_Operation_Details::opname_ [private] |
Name of the operation being invoked.
Precalculated length of opname_.
The ServiceContextList received from the server side. Only valid when sending a request.
Request ID of this operation.
The ServiceContextList sent to the server side. Only valid when sending a request.
Response flags.
Boolean flag to indicate whether in the skeletons the stub arguments stored in these operation details should be used or not.