00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef _LOG4CPP_IDSAAPPENDER_HH
00010 #define _LOG4CPP_IDSAAPPENDER_HH
00011
00012 #include <log4cpp/Portability.hh>
00013 #include <string>
00014 #include <stdarg.h>
00015 #include <idsa.h>
00016 #include <log4cpp/AppenderSkeleton.hh>
00017
00018 namespace log4cpp {
00019
00025 class IdsaAppender : public AppenderSkeleton {
00026 public:
00027
00034 IdsaAppender(const std::string& name, const std::string& idsaName);
00035 virtual ~IdsaAppender();
00036
00040 virtual bool reopen();
00041
00045 virtual void close();
00046
00051 virtual bool requiresLayout() const;
00052
00053 virtual void setLayout(Layout* layout);
00054
00055 protected:
00056
00060 virtual void open();
00061
00066 virtual void _append(const LoggingEvent& event);
00067
00068 const std::string _idsaName;
00069
00070 IDSA_CONNECTION *_idsaConnection;
00071
00072 };
00073 }
00074
00075 #endif // _LOG4CPP_IDSAAPPENDER_HH
00076