Invocation_Utils.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 
00003 //=============================================================================
00004 /**
00005  *  @file    Invocation_Utils.h
00006  *
00007  *  Invocation_Utils.h,v 1.4 2005/11/02 07:13:03 ossama Exp
00008  *
00009  *
00010  *  @author Balachandran Natarajan <bala@dre.vanderbilt.edu>
00011  */
00012 //=============================================================================
00013 
00014 #ifndef TAO_INVOCATION_UTILS_H
00015 #define TAO_INVOCATION_UTILS_H
00016 #include /**/ "ace/pre.h"
00017 
00018 #include "ace/config-all.h"
00019 
00020 #if !defined (ACE_LACKS_PRAGMA_ONCE)
00021 # pragma once
00022 #endif /* ACE_LACKS_PRAGMA_ONCE */
00023 
00024 #include "tao/Versioned_Namespace.h"
00025 
00026 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00027 
00028 namespace TAO
00029 {
00030   enum Invocation_Status
00031     {
00032       /// Initial state of the FSM in the invocation class.
00033       TAO_INVOKE_START = 0,
00034       /// The request must be restarted, a temporary failure has
00035       /// occured.
00036       TAO_INVOKE_RESTART,
00037       /// invoke() call successful. Final state of the FSM.
00038       TAO_INVOKE_SUCCESS,
00039       /// Received a user exception from the remote object, and this
00040       /// is one of the final states.
00041       TAO_INVOKE_USER_EXCEPTION,
00042       /// Received a system exception from the remote object or the
00043       /// PI and it is one of the final states
00044       TAO_INVOKE_SYSTEM_EXCEPTION,
00045       /// Invocation failed. It is a final state.
00046       TAO_INVOKE_FAILURE
00047     };
00048 
00049   /// Enums for invocation types
00050   enum Invocation_Type {
00051     /// A simple oneway invocation
00052     TAO_ONEWAY_INVOCATION,
00053     /// A simple twoway invocation
00054     TAO_TWOWAY_INVOCATION
00055   };
00056 
00057   /// Enum for invocation modes
00058   enum Invocation_Mode {
00059     /// Standard synchronous twoway
00060     TAO_SYNCHRONOUS_INVOCATION,
00061     /// Asynchronous twoway with callback model for collecting the
00062     /// replies.
00063     TAO_ASYNCHRONOUS_CALLBACK_INVOCATION,
00064     /// Asynchronous twoway with poller model for collecting the
00065     /// replies.
00066     /// @note This is not supported in TAO now
00067     TAO_ASYNCHRONOUS_POLLER_INVOCATION,
00068     /// Types of DII
00069     TAO_DII_INVOCATION,
00070     TAO_DII_DEFERRED_INVOCATION
00071   };
00072 }
00073 
00074 TAO_END_VERSIONED_NAMESPACE_DECL
00075 
00076 #include /**/ "ace/post.h"
00077 #endif /* TAO_INVOCATION_UTILS_H */

Generated on Thu Nov 9 11:54:14 2006 for TAO by doxygen 1.3.6