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, CORBA::ULong reply_status)
 Callback method for deferred synchronous requests.
void sendc (CORBA::Object_ptr handler)
CORBA::ULong _incr_refcnt (void)
CORBA::ULong _decr_refcnt (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.
CORBA::ULong refcount_
 Reference counting.
TAO_SYNCH_MUTEX lock_
 Protect the refcount_ and 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

typedef CORBA::Request_out CORBA::Request::_out_type

typedef CORBA::Request_ptr CORBA::Request::_ptr_type

typedef CORBA::Request_var CORBA::Request::_var_type


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

CORBA::ULong CORBA::Request::_decr_refcnt ( void   ) 

static CORBA::Request* CORBA::Request::_duplicate ( CORBA::Request  )  [static]

Pseudo object methods.

TAO_BEGIN_VERSIONED_NAMESPACE_DECL CORBA::ULong CORBA::Request::_incr_refcnt ( void   ) 

ACE_INLINE CORBA::Request_ptr CORBA::Request::_nil ( void   )  [static]

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

Set the byte order member.

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

Get the byte order member.

ACE_INLINE 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 ( const char *  name  ) 

ACE_INLINE CORBA::Any & CORBA::Request::add_in_arg ( void   ) 

CORBA::Any& CORBA::Request::add_inout_arg ( const char *  name  ) 

ACE_INLINE CORBA::Any & CORBA::Request::add_inout_arg ( void   ) 

CORBA::Any& CORBA::Request::add_out_arg ( const char *  name  ) 

ACE_INLINE CORBA::Any & CORBA::Request::add_out_arg ( void   ) 

ACE_INLINE CORBA::NVList_ptr CORBA::Request::arguments ( void   ) 

Return the arguments for the request.

ACE_INLINE CORBA::ContextList_ptr CORBA::Request::contexts ( void   ) 

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

ACE_INLINE void CORBA::Request::ctx ( CORBA::Context_ptr   ) 

Mutator for the Context member.

ACE_INLINE CORBA::Context_ptr CORBA::Request::ctx ( void   )  const

Accessor for the Context member.

ACE_INLINE CORBA::ExceptionList_ptr CORBA::Request::exceptions ( void   ) 

Return the exceptions resulting from this request.

void CORBA::Request::get_response ( void   ) 

void CORBA::Request::handle_response ( TAO_InputCDR incoming,
CORBA::ULong  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 .

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

ACE_INLINE const CORBA::Char * CORBA::Request::operation ( void   )  const

Return the operation name for the request.

CORBA::Boolean CORBA::Request::poll_response ( void   ) 

ACE_INLINE ACE_CString & CORBA::Request::raw_user_exception ( void   ) 

Accessor for the input stream containing the exception.

ACE_INLINE void CORBA::Request::raw_user_exception ( TAO_InputCDR cdr  ) 

ACE_INLINE CORBA::Boolean CORBA::Request::response_received ( void   ) 

Proprietary method to check whether a response has been received.

ACE_INLINE CORBA::NamedValue_ptr CORBA::Request::result ( void   ) 

Return the result for the request.

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

Returns reference to Any for extraction using >>=.

void CORBA::Request::send_deferred ( void   ) 

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.

void CORBA::Request::sendc ( CORBA::Object_ptr  handler  ) 

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

ACE_INLINE void CORBA::Request::set_return_type ( CORBA::TypeCode_ptr  tc  ) 

Initialize the return type.

ACE_INLINE CORBA::Object_ptr CORBA::Request::target ( void   )  const

Return the target of this request.


Friends And Related Function Documentation

friend class ::TAO_Dynamic_Adapter_Impl [friend]


Member Data Documentation

CORBA::NVList_ptr CORBA::Request::args_ [private]

Parameter list.

int CORBA::Request::byte_order_ [private]

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

CORBA::ContextList_ptr CORBA::Request::contexts_ [private]

List of the request's result's contexts.

CORBA::Context_ptr CORBA::Request::ctx_ [private]

Context associated with this request.

CORBA::ExceptionList_var CORBA::Request::exceptions_ [private]

List of exceptions raised by the operation.

Deprecated:
Holds exceptions.

CORBA::Flags CORBA::Request::flags_ [private]

Invocation flags.

bool CORBA::Request::lazy_evaluation_ [private]

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

TAO_SYNCH_MUTEX CORBA::Request::lock_ [private]

Protect the refcount_ and response_received_.

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

Operation name.

CORBA::ORB_var CORBA::Request::orb_ [private]

Pointer to our ORB.

ACE_CString CORBA::Request::raw_user_exception_ [private]

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

CORBA::ULong CORBA::Request::refcount_ [private]

Reference counting.

CORBA::Boolean CORBA::Request::response_received_ [private]

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

CORBA::NamedValue_ptr CORBA::Request::result_ [private]

Result of the operation.

CORBA::Object_ptr CORBA::Request::target_ [private]

Target object.


The documentation for this class was generated from the following files:
Generated on Mon Apr 30 23:17:33 2007 for TAO_DynamicInterface by  doxygen 1.4.7-1