summaryrefslogtreecommitdiff
path: root/TAO/orbsvcs/Transport_Current/TC.idl
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/orbsvcs/Transport_Current/TC.idl')
-rw-r--r--TAO/orbsvcs/Transport_Current/TC.idl57
1 files changed, 57 insertions, 0 deletions
diff --git a/TAO/orbsvcs/Transport_Current/TC.idl b/TAO/orbsvcs/Transport_Current/TC.idl
index 55464973668..05e2075f57d 100644
--- a/TAO/orbsvcs/Transport_Current/TC.idl
+++ b/TAO/orbsvcs/Transport_Current/TC.idl
@@ -112,3 +112,60 @@ module TAO
};
#endif /* TAO_TRANSPORT_CURRENT_IDL */
+/**
+ * @file TC.idl
+ *
+ * @brief Defines the TAO::Transport::Current interface
+ *
+ * $Id$
+ *
+ * @author Iliyan Jeliazkov <iliyan@ociweb.com>
+ */
+
+#ifndef TAO_TRANSPORT_CURRENT_IDL
+#define TAO_TRANSPORT_CURRENT_IDL
+
+#include <IOP.pidl>
+#include <TimeBase.pidl>
+
+module TAO
+{
+ /// A type used to represent counters
+ typedef unsigned long long CounterT;
+
+ module Transport
+ {
+ /// Used to signal that a call was made within improper invocation
+ /// context. Also, this exception is thrown if no Transport has
+ /// been selected for the current thread, for example in a
+ /// collocated invocation.
+
+ exception NoContext
+ {
+ };
+
+ // The primary interface, providing access to Transport
+ // information, available to the current thread.
+
+ local interface Current
+ {
+ /// Transport ID, unique within the process.
+ readonly attribute long id raises (NoContext);
+
+ /// Bytes sent/received through the transport.
+ readonly attribute CounterT bytes_sent raises (NoContext);
+ readonly attribute CounterT bytes_received raises (NoContext);
+
+ /// Messages (requests and replies) sent/received using the current
+ /// protocol.
+ readonly attribute CounterT messages_sent raises (NoContext);
+ readonly attribute CounterT messages_received raises (NoContext);
+
+ /// The absolute time (miliseconds) since the transport has been
+ /// open.
+ readonly attribute TimeBase::TimeT open_since raises (NoContext);
+ };
+ };
+};
+
+#endif /* TAO_TRANSPORT_CURRENT_IDL */