summaryrefslogtreecommitdiff
path: root/TAO/tao/ORB.h
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/tao/ORB.h')
-rw-r--r--TAO/tao/ORB.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/TAO/tao/ORB.h b/TAO/tao/ORB.h
index 38417465cb6..657b7b4f693 100644
--- a/TAO/tao/ORB.h
+++ b/TAO/tao/ORB.h
@@ -31,6 +31,9 @@
#include "tao/Services.h"
#include "tao/IORManipulation.h"
+// Interceptor definitions.
+#include "tao/InterceptorC.h"
+
// IRIX needs this for the throw specs
#include "tao/PolicyC.h"
@@ -379,6 +382,23 @@ public:
CORBA_Environment &ACE_TRY_ENV = TAO_default_environment () );
#endif /* TAO_HAS_VALUETYPE */
+ // = Interceptor registration routine
+ // Currently, we only support one interceptor per-ORB.
+
+ PortableInterceptor::ClientRequestInterceptor_ptr _register_client_interceptor
+ (PortableInterceptor::ClientRequestInterceptor_ptr ci,
+ CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ());
+
+ PortableInterceptor::ServerRequestInterceptor_ptr _register_server_interceptor
+ (PortableInterceptor::ServerRequestInterceptor_ptr ci,
+ CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ());
+
+ PortableInterceptor::ClientRequestInterceptor_ptr _get_client_interceptor
+ (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ());
+
+ PortableInterceptor::ServerRequestInterceptor_ptr _get_server_interceptor
+ (CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ());
+
#if !defined (TAO_HAS_MINIMUM_CORBA)
// Typedefs for CORBA_ORB_RequestSeq,
@@ -744,6 +764,10 @@ private:
// If non-0 then this is the Factory for OBV unmarshaling
#endif /* TAO_HAS_VALUETYPE */
+ PortableInterceptor::ClientRequestInterceptor_var client_interceptor_;
+ PortableInterceptor::ServerRequestInterceptor_var server_interceptor_;
+ // Interceptor registries.
+
TAO_IOR_LookupTable lookup_table_;
// Table of ObjectID->IOR mappings.