diff options
Diffstat (limited to 'TAO/tao/ORB.h')
-rw-r--r-- | TAO/tao/ORB.h | 24 |
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. |