TAO 3.1.4
Loading...
Searching...
No Matches
Public Member Functions | Friends | List of all members
TAO_Operation_Details Class Reference

Class with operation details. More...

#include <operation_details.h>

Collaboration diagram for TAO_Operation_Details:
Collaboration graph
[legend]

Public Member Functions

 TAO_Operation_Details (const char *name, const CORBA::ULong len, TAO::Argument **args=0, const CORBA::ULong num_args=0, const CORBA::Boolean has_in_args=true, const TAO::Exception_Data *ex_data=0, const CORBA::ULong ex_count=0)
 Constructor.
 
const char * opname () const
 Operation name.
 
CORBA::ULong opname_len () const
 Length of the operation name.
 
CORBA::Boolean argument_flag () const
 
CORBA::Boolean in_argument_flag () const
 
void response_flags (CORBA::Octet flags)
 Set the response flags.
 
CORBA::Octet response_flags () const
 Get the response flags.
 
IOP::ServiceContextListrequest_service_info ()
 Accessors for the service context list.
 
const IOP::ServiceContextListrequest_service_info () const
 
IOP::ServiceContextListreply_service_info ()
 
const IOP::ServiceContextListreply_service_info () const
 
TAO_Service_Contextrequest_service_context ()
 Access the TAO_Service_Context.
 
const TAO_Service_Contextrequest_service_context () const
 
TAO_Service_Contextreply_service_context ()
 
const TAO_Service_Contextreply_service_context () const
 
void reset_request_service_info ()
 Reset the contents of the service context lists that we hold.
 
void reset_reply_service_info ()
 
void request_id (CORBA::ULong id)
 Cache the request id.
 
CORBA::ULong request_id () const
 Return the request ID associated with the operation.
 
TAO_Target_Specification::TAO_Target_Address addressing_mode () const
 Accessor method for the addressing mode.
 
void addressing_mode (CORBA::Short addr)
 Set method for the addressing mode.
 
CORBA::Exceptioncorba_exception (const char *ex) const
 
bool has_exception (::CORBA::Exception &ex) const
 Check whether exception ex is in the signature of this operation.
 

Friends

class TAO::CSD::FW_Server_Request_Wrapper
 

Helper methods used by the Invocation classes.

const char * opname_
 Name of the operation being invoked.
 
const 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_
 
const CORBA::ULong num_args_
 Number of arguments including the return value.
 
const CORBA::Boolean has_in_args_
 A flag indicating any args are sent with the request.
 
const TAO::Exception_Dataex_data_
 The type of exceptions that the operations can throw.
 
const CORBA::ULong ex_count_
 Count of the exceptions that operations can throw.
 
CORBA::Boolean use_stub_args_
 
TAO::Collocated_Arguments_Converter * cac_
 The optional collocated arguments converter.
 
TAO_Reply_Dispatcherreply_dispatcher_
 The optional reply dispatcher.
 
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 () const
 Accessors for the argument list.
 
CORBA::ULong args_num () const
 Name of the operation being invoked.
 
CORBA::ULong ex_count () const
 Exception count.
 
TAO::Exception_Data const * ex_data () const
 Name of the operation being invoked.
 
CORBA::Boolean use_stub_args () const
 Name of the operation being invoked.
 
void use_stub_args (CORBA::Boolean use_stub_arguments)
 Name of the operation being invoked.
 
TAO::Collocated_Arguments_Converter * cac () const
 Accessor for cac_ pointer.
 
void cac (TAO::Collocated_Arguments_Converter *cac)
 Name of the operation being invoked.
 
TAO_Reply_Dispatcherreply_dispatcher () const
 Name of the operation being invoked.
 
void reply_dispatcher (TAO_Reply_Dispatcher *rd)
 Name of the operation being invoked.
 

Detailed Description

Class with operation details.

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.

Todo
Put this in namespace TAO.

Constructor & Destructor Documentation

◆ TAO_Operation_Details()

TAO_Operation_Details::TAO_Operation_Details ( const char * name,
const CORBA::ULong len,
TAO::Argument ** args = 0,
const CORBA::ULong num_args = 0,
const CORBA::Boolean has_in_args = true,
const TAO::Exception_Data * ex_data = 0,
const CORBA::ULong ex_count = 0 )

Constructor.

Member Function Documentation

◆ addressing_mode() [1/2]

TAO_Target_Specification::TAO_Target_Address TAO_Operation_Details::addressing_mode ( ) const

Accessor method for the addressing mode.

◆ addressing_mode() [2/2]

void TAO_Operation_Details::addressing_mode ( CORBA::Short addr)

Set method for the addressing mode.

◆ args()

TAO::Argument ** TAO_Operation_Details::args ( ) const

Accessors for the argument list.

◆ args_num()

CORBA::ULong TAO_Operation_Details::args_num ( ) const

Name of the operation being invoked.

◆ argument_flag()

CORBA::Boolean TAO_Operation_Details::argument_flag ( ) const

Return the flag that indicates whether the operation has any arguments

◆ cac() [1/2]

TAO::Collocated_Arguments_Converter * TAO_Operation_Details::cac ( ) const

Accessor for cac_ pointer.

◆ cac() [2/2]

void TAO_Operation_Details::cac ( TAO::Collocated_Arguments_Converter * cac)

Name of the operation being invoked.

◆ corba_exception()

CORBA::Exception * TAO_Operation_Details::corba_exception ( const char * ex) const

Creates and returns a CORBA::Exception object whose repository id ex matches the exception list that this operation specified. 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.

◆ demarshal_args()

bool TAO_Operation_Details::demarshal_args ( TAO_InputCDR & cdr)

Demarshals the list of this->arg_ into the cdr.

◆ ex_count()

CORBA::ULong TAO_Operation_Details::ex_count ( ) const

Exception count.

◆ ex_data()

TAO::Exception_Data const * TAO_Operation_Details::ex_data ( ) const

Name of the operation being invoked.

◆ has_exception()

bool TAO_Operation_Details::has_exception ( ::CORBA::Exception & ex) const

Check whether exception ex is in the signature of this operation.

◆ in_argument_flag()

CORBA::Boolean TAO_Operation_Details::in_argument_flag ( ) const

◆ marshal_args()

bool TAO_Operation_Details::marshal_args ( TAO_OutputCDR & cdr)

Marshals the list of this->arg_ into the cdr.

◆ opname()

const char * TAO_Operation_Details::opname ( ) const

Operation name.

◆ opname_len()

CORBA::ULong TAO_Operation_Details::opname_len ( ) const

Length of the operation name.

◆ reply_dispatcher() [1/2]

TAO_Reply_Dispatcher * TAO_Operation_Details::reply_dispatcher ( ) const

Name of the operation being invoked.

◆ reply_dispatcher() [2/2]

void TAO_Operation_Details::reply_dispatcher ( TAO_Reply_Dispatcher * rd)

Name of the operation being invoked.

◆ reply_service_context() [1/2]

TAO_Service_Context & TAO_Operation_Details::reply_service_context ( )

◆ reply_service_context() [2/2]

const TAO_Service_Context & TAO_Operation_Details::reply_service_context ( ) const

◆ reply_service_info() [1/2]

IOP::ServiceContextList & TAO_Operation_Details::reply_service_info ( )

◆ reply_service_info() [2/2]

const IOP::ServiceContextList & TAO_Operation_Details::reply_service_info ( ) const

◆ request_id() [1/2]

CORBA::ULong TAO_Operation_Details::request_id ( ) const

Return the request ID associated with the operation.

◆ request_id() [2/2]

void TAO_Operation_Details::request_id ( CORBA::ULong id)

Cache the request id.

◆ request_service_context() [1/2]

TAO_Service_Context & TAO_Operation_Details::request_service_context ( )

Access the TAO_Service_Context.

◆ request_service_context() [2/2]

const TAO_Service_Context & TAO_Operation_Details::request_service_context ( ) const

◆ request_service_info() [1/2]

IOP::ServiceContextList & TAO_Operation_Details::request_service_info ( )

Accessors for the service context list.

◆ request_service_info() [2/2]

const IOP::ServiceContextList & TAO_Operation_Details::request_service_info ( ) const

◆ reset_reply_service_info()

void TAO_Operation_Details::reset_reply_service_info ( )

◆ reset_request_service_info()

void TAO_Operation_Details::reset_request_service_info ( )

Reset the contents of the service context lists that we hold.

◆ response_flags() [1/2]

CORBA::Octet TAO_Operation_Details::response_flags ( ) const

Get the response flags.

◆ response_flags() [2/2]

void TAO_Operation_Details::response_flags ( CORBA::Octet flags)

Set the response flags.

◆ use_stub_args() [1/2]

CORBA::Boolean TAO_Operation_Details::use_stub_args ( ) const

Name of the operation being invoked.

◆ use_stub_args() [2/2]

void TAO_Operation_Details::use_stub_args ( CORBA::Boolean use_stub_arguments)

Name of the operation being invoked.

Friends And Related Symbol Documentation

◆ TAO::CSD::FW_Server_Request_Wrapper

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.

Member Data Documentation

◆ addressing_mode_

TAO_Target_Specification::TAO_Target_Address TAO_Operation_Details::addressing_mode_
private

Addressing mode for this request.

◆ args_

TAO::Argument** TAO_Operation_Details::args_
private

The arguments of this operation. Note that the return value is also an argument

◆ cac_

TAO::Collocated_Arguments_Converter* TAO_Operation_Details::cac_
private

The optional collocated arguments converter.

◆ ex_count_

const CORBA::ULong TAO_Operation_Details::ex_count_
private

Count of the exceptions that operations can throw.

◆ ex_data_

const TAO::Exception_Data* TAO_Operation_Details::ex_data_
private

The type of exceptions that the operations can throw.

◆ has_in_args_

const CORBA::Boolean TAO_Operation_Details::has_in_args_
private

A flag indicating any args are sent with the request.

◆ num_args_

const CORBA::ULong TAO_Operation_Details::num_args_
private

Number of arguments including the return value.

◆ opname_

const char* TAO_Operation_Details::opname_
private

Name of the operation being invoked.

◆ opname_len_

const CORBA::ULong TAO_Operation_Details::opname_len_
private

Precalculated length of opname_.

◆ reply_dispatcher_

TAO_Reply_Dispatcher* TAO_Operation_Details::reply_dispatcher_
private

The optional reply dispatcher.

◆ reply_service_info_

TAO_Service_Context TAO_Operation_Details::reply_service_info_
private

The ServiceContextList received from the server side. Only valid when sending a request.

◆ request_id_

CORBA::ULong TAO_Operation_Details::request_id_
private

Request ID of this operation.

◆ request_service_info_

TAO_Service_Context TAO_Operation_Details::request_service_info_
private

The ServiceContextList sent to the server side. Only valid when sending a request.

◆ response_flags_

CORBA::Octet TAO_Operation_Details::response_flags_
private

Response flags.

◆ use_stub_args_

CORBA::Boolean TAO_Operation_Details::use_stub_args_
private

Boolean flag to indicate whether in the skeletons the stub arguments stored in these operation details should be used or not.


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