summaryrefslogtreecommitdiff
path: root/TAO/tao/Remote_Invocation.h
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/tao/Remote_Invocation.h')
-rw-r--r--TAO/tao/Remote_Invocation.h22
1 files changed, 21 insertions, 1 deletions
diff --git a/TAO/tao/Remote_Invocation.h b/TAO/tao/Remote_Invocation.h
index 61638659a53..383691acddd 100644
--- a/TAO/tao/Remote_Invocation.h
+++ b/TAO/tao/Remote_Invocation.h
@@ -40,12 +40,27 @@ namespace TAO
/**
* @class Remote_Invocation
*
- * @brief Base class for Twoway_Invocation and Oneway_Invocation.
+ * @brief Base class for remote invocations.
+ *
+ * This class encapulates some of the common functionalities used by
+ * synchronous, asynchronous, DII and DSI invocations.
*
*/
class TAO_Export Remote_Invocation : public Invocation_Base
{
public:
+ /**
+ * @param otarget, The original target on which this invocation
+ * was started. This is there to be passed up to its parent
+ * class.
+ *
+ * @param resolver, The profile and transport holder.
+ *
+ * @param op, operation details of the invocation on the target
+ *
+ * @param response_expected, flag to indicate whether the
+ * operation encapsulated by @a op returns a response or not.
+ */
Remote_Invocation (CORBA::Object_ptr otarget,
Profile_Transport_Resolver &resolver,
TAO_Operation_Details &detail,
@@ -53,22 +68,27 @@ namespace TAO
protected:
+ /// Initialize the @a spec.
void init_target_spec (TAO_Target_Specification &spec
ACE_ENV_ARG_DECL);
+ /// Write the GIOP header into the stream.
void write_header (TAO_Target_Specification &spec,
TAO_OutputCDR &out_stream
ACE_ENV_ARG_DECL);
+ /// Marshal the arguments into the stream.
void marshal_data (TAO_OutputCDR &cdr
ACE_ENV_ARG_DECL);
+ /// Write the message onto the socket
Invocation_Status send_message (TAO_OutputCDR &cdr,
short message_semantics,
ACE_Time_Value *max_wait_time
ACE_ENV_ARG_DECL);
protected:
+ /// Our resolver
Profile_Transport_Resolver &resolver_;
};
}