it_bus_pdk/bus_plugin_manager.h

00001 #ifndef _IT_BUS_PDK_BUS_PLUGIN_MANAGER_H_
00002 #define _IT_BUS_PDK_BUS_PLUGIN_MANAGER_H_
00003 
00004 // @Copyright 2004 IONA Technologies, Plc. All Rights Reserved.
00005 //
00006 
00007 #include <it_bus/api_defines.h>
00008 #include <it_bus/types.h>
00009 #include <it_bus/exception.h>
00010 
00011 namespace IT_Bus
00012 {
00013     class BusPlugIn;
00014     class BusPlugInResolver;
00015 
00016     class IT_BUS_API BusPlugInManager
00017     {
00018       public:
00019         BusPlugInManager();
00020 
00021         virtual
00022         ~BusPlugInManager();
00023 
00024         virtual Boolean
00025         register_plugin(
00026             const String& plugin_name,
00027             BusPlugIn*    plugin
00028         ) = 0;
00029         
00030         virtual bool
00031         get_plugin(
00032             const String& plugin_name
00033         ) IT_THROW_DECL((Exception)) = 0;
00034 
00035         virtual bool
00036         get_plugin_by_namespace(
00037             const String& xml_namespace
00038         ) IT_THROW_DECL((Exception)) = 0;
00039 
00040         virtual bool
00041         get_plugin_by_interceptor_factory_name(
00042             const String& interceptor_factory_name
00043         ) IT_THROW_DECL((Exception)) = 0;
00044         
00045         virtual Boolean 
00046         deregister_plugin(
00047             const String& plugin_name
00048         ) = 0;
00049 
00050         virtual void 
00051         register_plugin_resolver(
00052             BusPlugInResolver* resolver
00053         ) = 0;
00054     };
00055 }
00056 
00057 #endif  

Generated on Thu Sep 7 11:39:11 2006 for Artix by  doxygen 1.4.7