00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #pragma once
00021
00022 #include <stdarg.h>
00023
00024 #include <string>
00025
00026 namespace drizzle_plugin
00027 {
00028
00029 class WrapSyslog
00030 {
00031 private:
00032 bool _check;
00033
00034 WrapSyslog(const WrapSyslog&);
00035 WrapSyslog& operator=(const WrapSyslog&);
00036
00037 WrapSyslog();
00038
00039
00040 public:
00041 ~WrapSyslog();
00042 static WrapSyslog& singleton();
00043
00044 static int getFacilityByName(const char *);
00045 static int getPriorityByName(const char *);
00046
00047 void openlog(const std::string &ident);
00048 void vlog(int facility, int priority, const char *format, va_list ap);
00049 void log(int facility, int priority, const char *format, ...);
00050 };
00051
00052 inline WrapSyslog& WrapSyslog::singleton()
00053 {
00054 static WrapSyslog handle;
00055 return handle;
00056 }
00057
00058 }
00059