TAO_DynamicInterface  2.1.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Friends Defines
Public Types | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | Friends
CORBA::Request Class Reference

CORBA::Request. More...

#include <Request.h>

Collaboration diagram for CORBA::Request:
Collaboration graph
[legend]

List of all members.

Public Types

typedef CORBA::Request_ptr _ptr_type
typedef CORBA::Request_var _var_type
typedef CORBA::Request_out _out_type

Public Member Functions

CORBA::Object_ptr target (void) const
 Return the target of this request.
const CORBA::Charoperation (void) const
 Return the operation name for the request.
CORBA::NVList_ptr arguments (void)
 Return the arguments for the request.
CORBA::NamedValue_ptr result (void)
 Return the result for the request.
CORBA::ExceptionList_ptr exceptions (void)
 Return the exceptions resulting from this request.
CORBA::Context_ptr ctx (void) const
 Accessor for the Context member.
void ctx (CORBA::Context_ptr)
 Mutator for the Context member.
CORBA::ContextList_ptr contexts (void)
void set_return_type (CORBA::TypeCode_ptr tc)
 Initialize the return type.
CORBA::Any & return_value (void)
 Returns reference to Any for extraction using >>=.
void invoke (void)
 Perform method resolution and invoke an appropriate method.
void send_oneway (void)
 Send a oneway request.
void handle_response (TAO_InputCDR &incoming, GIOP::ReplyStatusType reply_status)
 Callback method for deferred synchronous requests.
void sendc (CORBA::Object_ptr handler)
CORBA::ULong _incr_refcount (void)
CORBA::ULong _decr_refcount (void)
void _tao_lazy_evaluation (bool lazy_evaluation)
 Set the lazy evaluation flag.
int _tao_byte_order (void) const
 Get the byte order member.
void _tao_byte_order (int byte_order)
 Set the byte order member.
void raw_user_exception (TAO_InputCDR &cdr)
ACE_CStringraw_user_exception (void)
 Accessor for the input stream containing the exception.
CORBA::Boolean response_received (void)
Argument manipulation helper functions.

Arg adders, one for each type of parameter, with and without optional name. Returns reference to Any for insertion using <<=.

CORBA::Any & add_in_arg (void)
CORBA::Any & add_in_arg (const char *name)
CORBA::Any & add_inout_arg (void)
CORBA::Any & add_inout_arg (const char *name)
CORBA::Any & add_out_arg (void)
CORBA::Any & add_out_arg (const char *name)
The 'deferred synchronous' methods.

The 'deferred synchronous' methods.

void send_deferred (void)
void get_response (void)
CORBA::Boolean poll_response (void)

Static Public Member Functions

static void _tao_reply_stub (TAO_InputCDR &_tao_reply_cdr, Messaging::ReplyHandler_ptr _tao_reply_handler, CORBA::ULong reply_status)
static CORBA::Request_duplicate (CORBA::Request *)
 Pseudo object methods.
static CORBA::Request_nil (void)

Private Member Functions

 Request (CORBA::Object_ptr obj, CORBA::ORB_ptr orb, const CORBA::Char *op, CORBA::NVList_ptr args, CORBA::NamedValue_ptr result, CORBA::Flags flags, CORBA::ExceptionList_ptr exceptions)
 Request (CORBA::Object_ptr obj, CORBA::ORB_ptr orb, const CORBA::Char *op)
 ~Request (void)

Private Attributes

CORBA::Object_ptr target_
 Target object.
CORBA::ORB_var orb_
 Pointer to our ORB.
const char * opname_
 Operation name.
CORBA::NVList_ptr args_
 Parameter list.
CORBA::NamedValue_ptr result_
 Result of the operation.
CORBA::Flags flags_
 Invocation flags.
CORBA::ExceptionList_var exceptions_
 List of exceptions raised by the operation.
CORBA::ContextList_ptr contexts_
 List of the request's result's contexts.
CORBA::Context_ptr ctx_
 Context associated with this request.
ACE_Atomic_Op< TAO_SYNCH_MUTEX,
unsigned long > 
refcount_
 Reference counting.
TAO_SYNCH_MUTEX lock_
 Protect the response_received_.
bool lazy_evaluation_
 If not zero then the NVList is not evaluated by default.
CORBA::Boolean response_received_
 Set to true upon completion of invoke() or handle_response().
int byte_order_
 Can be reset by a gateway when passing along a request.
ACE_CString raw_user_exception_

Friends

class ::TAO_Dynamic_Adapter_Impl

Detailed Description

CORBA::Request.

Provides a way to create requests and populate it with parameters for use in the Dynamic Invocation Interface.


Member Typedef Documentation


Constructor & Destructor Documentation

CORBA::Request::Request ( CORBA::Object_ptr  obj,
CORBA::ORB_ptr  orb,
const CORBA::Char op,
CORBA::NVList_ptr  args,
CORBA::NamedValue_ptr  result,
CORBA::Flags  flags,
CORBA::ExceptionList_ptr  exceptions 
) [private]
CORBA::Request::Request ( CORBA::Object_ptr  obj,
CORBA::ORB_ptr  orb,
const CORBA::Char op 
) [private]
CORBA::Request::~Request ( void  ) [private]

Member Function Documentation

Pseudo object methods.

int CORBA::Request::_tao_byte_order ( void  ) const

Get the byte order member.

void CORBA::Request::_tao_byte_order ( int  byte_order)

Set the byte order member.

void CORBA::Request::_tao_lazy_evaluation ( bool  lazy_evaluation)

Set the lazy evaluation flag.

void CORBA::Request::_tao_reply_stub ( TAO_InputCDR _tao_reply_cdr,
Messaging::ReplyHandler_ptr  _tao_reply_handler,
CORBA::ULong  reply_status 
) [static]
CORBA::Any & CORBA::Request::add_in_arg ( void  )
CORBA::Any & CORBA::Request::add_in_arg ( const char *  name)
CORBA::Any & CORBA::Request::add_inout_arg ( void  )
CORBA::Any & CORBA::Request::add_inout_arg ( const char *  name)
CORBA::Any & CORBA::Request::add_out_arg ( void  )
CORBA::Any & CORBA::Request::add_out_arg ( const char *  name)

Return the arguments for the request.

Return a list of the request's result's contexts. Since TAO does not implement Contexts, this will always be 0.

Accessor for the Context member.

Mutator for the Context member.

Return the exceptions resulting from this request.

void CORBA::Request::handle_response ( TAO_InputCDR incoming,
GIOP::ReplyStatusType  reply_status 
)

Callback method for deferred synchronous requests.

void CORBA::Request::invoke ( void  )

Perform method resolution and invoke an appropriate method.

If the method returns successfully, its result is placed in the result argument specified on create_request. The behavior is undefined if this Request has already been used with a previous call to invoke, send, or send_multiple_requests.

Note:
A default argument is set, but please note that this not recommended as the user may not be able to propagate the exceptions.
const CORBA::Char * CORBA::Request::operation ( void  ) const

Return the operation name for the request.

Accessor for the input stream containing the exception.

Proprietary method to check whether a response has been received.

Return the result for the request.

CORBA::Any & CORBA::Request::return_value ( void  )

Returns reference to Any for extraction using >>=.

void CORBA::Request::send_oneway ( void  )

Send a oneway request.

Note:
A default argument is set, but please note that this not recommended as the user may not be able to propagate the exceptions.

The 'asychronous' send method. The object is a DSI based callback handler. This handler must implement Messaging::ReplyHandler

Initialize the return type.

Return the target of this request.


Friends And Related Function Documentation

friend class ::TAO_Dynamic_Adapter_Impl [friend]

Member Data Documentation

Parameter list.

Can be reset by a gateway when passing along a request.

List of the request's result's contexts.

Context associated with this request.

List of exceptions raised by the operation.

Deprecated:
Holds exceptions.

Invocation flags.

If not zero then the NVList is not evaluated by default.

Protect the response_received_.

const char* CORBA::Request::opname_ [private]

Operation name.

Pointer to our ORB.

Stores user exception as a CDR stream when this request is used in a TAO gateway.

Reference counting.

Set to true upon completion of invoke() or handle_response().

Result of the operation.

Target object.


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