00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036 #include "stdafx.h"
00037 #include "TraceLog.h"
00038
00039 #include <atlbase.h>
00040
00041 #ifdef _MEMORY_DEBUG
00042 #define new DEBUG_NEW
00043 #define malloc DEBUG_MALLOC
00044 static char THIS_FILE[] = __FILE__;
00045 #endif
00046
00047 KOMODIA_NAMESPACE_START
00048
00049 CTraceLog::CTraceLog() : CErrorHandler::CErrorLog()
00050 {
00051 }
00052
00053 CTraceLog::~CTraceLog()
00054 {
00055 }
00056
00057 void CTraceLog::WriteLog(const std::string& rClass,
00058 const std::string& rMethod,
00059 const std::string& rMessage,
00060 CErrorHandler::LogPriority aPriority)
00061 {
00062 try
00063 {
00064
00065 std::string sPrefix;
00066
00067
00068 switch (aPriority)
00069 {
00070 case CErrorHandler::lpMessage:
00071 sPrefix="***MESSAGE*** ";
00072 break;
00073 case CErrorHandler::lpCritical:
00074 sPrefix="***CRITICAL*** ";
00075 break;
00076 case CErrorHandler::lpError:
00077 sPrefix="***ERROR*** ";
00078 break;
00079 }
00080
00081
00082 ATLTRACE("%s %s, %s, %s\n",sPrefix.c_str(),
00083 rClass.c_str(),
00084 rMethod.c_str(),
00085 rMessage.c_str());
00086 }
00087 catch (...)
00088 {
00089 }
00090 }
00091
00092 void CTraceLog::ReportError(const std::string& rClass,
00093 const std::string& rMethod,
00094 const std::string& rMessage)
00095 {
00096
00097 WriteLog(rClass,
00098 rMethod,
00099 rMessage,
00100 CErrorHandler::lpError);
00101 }
00102
00103 void CTraceLog::WriteMessage(const std::string& rClass,
00104 const std::string& rMethod,
00105 const std::string& rMessage,
00106 CErrorHandler::LogPriority aPriority)
00107 {
00108
00109 WriteLog(rClass,
00110 rMethod,
00111 rMessage,
00112 aPriority);
00113 }
00114
00115 KOMODIA_NAMESPACE_END