summaryrefslogtreecommitdiff
path: root/trunk/TAO/orbsvcs/performance-tests/RTEvent/lib/Auto_Disconnect.inl
diff options
context:
space:
mode:
Diffstat (limited to 'trunk/TAO/orbsvcs/performance-tests/RTEvent/lib/Auto_Disconnect.inl')
-rw-r--r--trunk/TAO/orbsvcs/performance-tests/RTEvent/lib/Auto_Disconnect.inl27
1 files changed, 27 insertions, 0 deletions
diff --git a/trunk/TAO/orbsvcs/performance-tests/RTEvent/lib/Auto_Disconnect.inl b/trunk/TAO/orbsvcs/performance-tests/RTEvent/lib/Auto_Disconnect.inl
new file mode 100644
index 00000000000..3a09d5c68cf
--- /dev/null
+++ b/trunk/TAO/orbsvcs/performance-tests/RTEvent/lib/Auto_Disconnect.inl
@@ -0,0 +1,27 @@
+/**
+ * @file Auto_Disconnect.inl
+ *
+ * $Id$
+ *
+ * @author Carlos O'Ryan <coryan@uci.edu>
+ */
+#include "ace/CORBA_macros.h"
+
+template<class Client> ACE_INLINE void
+Disconnect<Client>::operator () (Client *client)
+{
+ ACE_DECLARE_NEW_ENV;
+ ACE_TRY
+ {
+ client->disconnect (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY { };
+ ACE_ENDTRY;
+}
+
+template<class Client> ACE_INLINE
+Auto_Disconnect<Client>::Auto_Disconnect (Client *client)
+ : ACE_Utils::Auto_Functor<Client,Disconnect<Client> > (client)
+{
+}