it_bus_pdk/logging_config.h

00001 #ifndef _IT_BUS_LOGGING_LOGGING_CONFIG_H_
00002 #define _IT_BUS_LOGGING_LOGGING_CONFIG_H_
00003 
00004 // @Copyright 2004 IONA Technologies, Plc. All Rights Reserved.
00005 //
00006 
00007 #include <it_bus/string.h>
00008 #include <it_bus/qname.h>
00009 
00010 #include <it_dsa/types.h>
00011 #include <it_dsa/vector.h>
00012 #include <orbix/configuration.hh>
00013 #include <orbix/logging.hh>
00014 
00015 typedef IT_UShort IT_TraceLevel;
00016 
00017 namespace IT_Logging
00018 {
00019     class EventLog;
00020 }
00021 
00022 namespace IT_Bus
00023 {
00024     class PDKBus;
00025 
00026     namespace Logging
00027     {
00028         class IT_BUS_API LoggingConfig
00029         {
00030           public:
00031             virtual void 
00032             set_log_filter_service_on(
00033                 IT_Bool val
00034             ) = 0;
00035 
00036             virtual IT_Bool
00037             get_log_filter_service_on() = 0;
00038 
00039             virtual void
00040             set_log_filter_service_names(
00041                 const IT_Vector<IT_Bus::String>&
00042             ) = 0;
00043 
00044             virtual void
00045             clear_log_filter_service_names() = 0;
00046 
00047             virtual void
00048             add_log_filter_service_name(
00049                 const IT_Bus::String& name
00050             ) = 0;
00051 
00052             virtual void
00053             remove_log_filter_service_name(
00054                 const IT_Bus::String& name
00055             ) = 0;
00056 
00057             virtual void
00058             set_master_log_filter(
00059                 IT_TraceLevel trace_level
00060             ) = 0;
00061 
00062             virtual IT_TraceLevel
00063             get_master_log_filter() = 0;
00064 
00065             virtual bool
00066             is_service_ignored(
00067                 const char* service
00068             ) = 0;
00069 
00070             virtual IT_Logging::EventLog*
00071             get_event_log() = 0;
00072 
00073             virtual IT_TraceLevel
00074             get_logging_level(
00075                 const IT_Bus::String& subsystem
00076             ) = 0;
00077 
00078             virtual IT_TraceLevel
00079             get_logging_level(
00080                 const IT_Bus::QName& service,
00081                 const IT_Bus::String& subsystem
00082             ) = 0;
00083 
00084             virtual IT_Logging::InternalEventLog::Filters*
00085             get_logging_levels(
00086             ) = 0;
00087 
00088             virtual void
00089             set_logging_level(
00090                 const IT_Bus::String& subsystem,
00091                 IT_TraceLevel level,
00092                 bool propagate = false
00093             ) = 0;
00094 
00095             virtual void
00096             cancel_logging_level(
00097                 const IT_Bus::String& subsystem,
00098                 bool propagate = false
00099             ) = 0;
00100 
00101           protected:
00102 
00103             virtual ~LoggingConfig();
00104             
00105         };
00106     }
00107 }
00108 
00109 #endif /*  _IT_BUS_LOGGING_LOGGING_CONFIG_H_ */

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