--- a/locationmgmt/locmonitor/test/LocInfoConversionUnitTest/inc/lbtlogger.h Wed Sep 15 00:02:22 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,374 +0,0 @@
-/*
-* Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: Defines the macros for logging mechanism in LBT
-*
-*/
-
-
-#ifndef LBT_LOGGER_H
-#define LBT_LOGGER_H
-
-/**
- * To use this logger mechanism you also need to add flogger.lib to the mmp
- * using,
- * DEBUGLIBRARY flogger.lib
- */
-
-
-/**
- * The trace level is defined as follows,
- * 0x[moduleid - 4digits][logginglevel-4digits],
- * The currently define logginglevels are
- * 0x0001 - Verbose
- * things like entered method, leaving method etc,
- * logs of the parameters to methods, files
- * that are being used, creating a key, creating a file,
- * opening a resource,
- *
- * 0x0002 - Warning
- * things like events, error cases that were not processed
- * but ignored.
- *
- * 0x0003 - Operations
- * things like what operation started (create, delete),
- * manipulations to the data structures, important events like
- * MMC card , app uninstall events which we process,
- * current location, triggers being monitored, psy conked off,
- * any other such important event.
- *
- * 0x0004 - Errors
- * log all _ASSERT_DEBUG kind of cases, basically things which
- * you don't expect to happen but happened - Sounds like paradox ;-)
- * Also log all error cases with this trace level.
- *
- * 0x0005 - Fatal
- * Use this if the server cannot recover from this error and you
- * have to crash !! ;-)
- *
- * So for a create trigger operation in server the log should be like
- * LBT_TRACE(KLbtLogOperation|KLbtLogServerLogic,"Creating Trigger");
- */
-#define KLbtLogLevelMask 0x0000FFFF
-
-#define KLbtLogVerbose 0x00000001
-#define KLbtLogWarning 0x00000002
-#define KLbtLogOperation 0x00000003
-#define KLbtLogError 0x00000004
-#define KLbtLogFatal 0x00000005
-
-/**
- *
- * Then for the module id lets use
- * 0x0001 - Lbt Client Library
- * 0x0002 - Lbt Server Core
- * 0x0003 - Lbt Server Logic Base
- * 0x0004 - Lbt Server Logic ( ecom plugin )
- * 0x0005 - Lbt Container
- * 0x0006 - Lbt Strategy Plugin api
- * 0x0007 - Lbt Strategy Implementation ( Ecom plugin )
- * 0x0008 - Lbt Movement detector plugin api
- * 0x0009 - Lbt Cell id Movement Detector
- * Did I miss any component ?
- */
-#define KLbtLogComponentMask 0xFFFF0000
-
-#define KLbtLogClientLib 0x00010000
-#define KLbtLogServerCore 0x00020000
-#define KLbtLogServerLogicBase 0x00030000
-#define KLbtLogServerLogic 0x00040000
-#define KLbtLogContainer 0x00050000
-#define KLbtLogStrategyPluginApi 0x00060000
-#define KLbtLogStrategyEngine 0x00070000
-#define KLbtLogMovementDetectorApi 0x00080000
-#define KLbtLogCellIdMovementDetector 0x00090000
-
-#ifdef _DEBUG
-#define _LBT_DEBUG
-#endif // #ifdef _DEBUG
-
-// define _LBT_DEBUG to enable LBT logging
-#define _LBT_DEBUG
-
-#ifdef _LBT_DEBUG
-
-#include <flogger.h>
-#include <f32file.h>
-#include "lbtloggerimpl.h"
-
-_LIT8( KEndOfLineChars, "\r\n");
-
-// CLASS DECLARATION
-class TLogFunc
- {
- public:
- TLogFunc(const char aFunctionName[])
- {
- const unsigned char* string = (unsigned char*)(aFunctionName);
- iBuffer.Zero();
- iBuffer.Copy(string);
- TBuf8<150> buf;
- buf.Zero();
- buf.Append(_L("=>"));
- buf.Append(iBuffer);
- CLbtLoggerImpl* loggerImpl = CLbtLoggerImpl::CreateLogger();
- if( loggerImpl )
- {
- RFileLogger& logger = loggerImpl->GetFileLogger();
- logger.Write( buf );
- }
- }
-
- ~TLogFunc()
- {
- RThread thread;
- TInt exitReason = thread.ExitReason();
- if(exitReason != KErrNone)
- {
- TExitCategoryName name = thread.ExitCategory();
- TBuf8<400> buf;
- buf.Zero();
- buf.Append(_L("LBT PANICKED : "));
- buf.Append(name);
-
- CLbtLoggerImpl* loggerImpl = CLbtLoggerImpl::CreateLogger();
- if(loggerImpl)
- {
- RFileLogger& logger = loggerImpl->GetFileLogger();
- logger.Write( buf);
- }
- // The thread has panicked and hence dont print the exit placeholder
- thread.Close();
- return;
- }
- iBuffer.Append(_L("=>"));
- CLbtLoggerImpl* loggerImpl = CLbtLoggerImpl::CreateLogger();
- if(loggerImpl)
- {
- RFileLogger& logger = loggerImpl->GetFileLogger();
- logger.Write( iBuffer);
- }
- thread.Close();
- }
-
- static void FileName( TDes& aFileNameBuffer )
- {
- TTime currTime;
- currTime.HomeTime();
- TDateTime dt = currTime.DateTime();
-
- _LIT16( filefmt, "%S_%d%d%d_%d%d%d.log" );
-
- TBuf<150> logFileName;
- logFileName.Append( _L("C:\\Logs\\Epos\\lbt_func") );
- aFileNameBuffer.AppendFormat( filefmt(), &logFileName, dt.Day(),
- dt.Month(), dt.Year(), dt.Hour(), dt.Minute(), dt.Second() );
- }
-
- static void FormatTextToBuffer( TDes8& aTrg, const TDesC8& aText )
- {
- TTime currTime;
- currTime.HomeTime();
- TDateTime dt = currTime.DateTime();
- _LIT8( dtFmt, "%d/%d/%d %d:%d:%d ");
- aTrg.AppendFormat( dtFmt(), dt.Day(), dt.Month(), dt.Year(), dt.Hour(), dt.Minute(), dt.Second() );
- aTrg.Append( aText );
- aTrg.Append( KEndOfLineChars );
- }
-
- static void RenameFileIfRequired()
- {
- RFs fs;
- RFile file;
- fs.Connect();
-
- TInt err = file.Open( fs, _L("C:\\Logs\\Epos\\lbt_func.log"), EFileWrite|EFileShareAny );
- if( KErrNone == err )
- {
- // Check Size of file
- TInt size;
- file.Size( size );
-
- if( size > 1024 )
- {
- file.Close();
- TBuf<200> fileName;
- FileName( fileName );
- //BaflUtils::RenameFile( fs, _L("C:\\Logs\\Epos\\lbt.log"), fileName );
- fs.Rename(_L("C:\\Logs\\Epos\\lbt_func.log"), fileName );
- }
- }
- file.Close();
- fs.Close();
- }
-
- private:
- TBuf8<150> iBuffer;
- };
-
-#define FUNC_ENTER(x) //TLogFunc lbtlog(x);
-
-#define STOPLOGGING CLbtLoggerImpl::Destroy();
-
-#define ERROR(x,y) { TBuf8<150> buffer; \
- const unsigned char* string = (unsigned char*)(x); \
- buffer.Zero(); \
- buffer.Copy(string); \
- buffer.Append(_L(": LBT ERROR")); \
- CLbtLoggerImpl* loggerImpl = CLbtLoggerImpl::CreateLogger(); \
- if( loggerImpl ) \
- { \
- RFileLogger& logger = loggerImpl->GetFileLogger(); \
- logger.WriteFormat( buffer, y); \
- } \
- }
-
-#define LOG(x) { TBuf8<150> buffer; \
- const unsigned char* string = (unsigned char*)(x); \
- buffer.Zero(); \
- buffer.Copy(string); \
- CLbtLoggerImpl* loggerImpl = CLbtLoggerImpl::CreateLogger(); \
- if( loggerImpl ) \
- { \
- RFileLogger& logger = loggerImpl->GetFileLogger(); \
- logger.Write( buffer); \
- } \
- }
-
-#define LOG1(x,y) { TBuf8<150> buffer; \
- const unsigned char* string = (unsigned char*)(x); \
- buffer.Zero(); \
- buffer.Copy(string); \
- CLbtLoggerImpl* loggerImpl = CLbtLoggerImpl::CreateLogger(); \
- if( loggerImpl ) \
- { \
- RFileLogger& logger = loggerImpl->GetFileLogger(); \
- logger.WriteFormat( buffer, y); \
- } \
- }
-
-#define LOGSTRING(x, y) { \
- _LIT(KTmpStr, x); \
- CLbtLoggerImpl* loggerImpl = CLbtLoggerImpl::CreateLogger(); \
- if( loggerImpl ) \
- { \
- RFileLogger& logger = loggerImpl->GetFileLogger(); \
- logger.WriteFormat( TRefByValue<const TDesC>(KTmpStr()), y); \
- } \
- } \
-
-
-#define LBT_FILE_LOGGER 1 // Always log to file
-
-const char* const LbtLogLevelStr[] =
- {
- "",
- "Verbose",
- "Warning",
- "Operation",
- "Error",
- "Fatal"
- };
-
-const char* const LbtLogComponentStr[] =
- {
- "",
- "client lib",
- "server core",
- "server logic api",
- "server logic",
- "container",
- "strategy api",
- "strategy engine",
- "movement detector api",
- "cell id movement detector"
- };
-
-
-#define LENGTH(str,len) for(len = 0; str[len]; len++) {}
-
-
-NONSHARABLE_CLASS( TLbtDesOverflow ) : public TDes8Overflow
- {
- void Overflow(TDes8 &/*aDes*/)
- {
- // Dummy Implementation to prevent User panic 23
- }
- };
-
-#define LBT_TRACE(level, file, lineno, desc...)
-
-/*
-LOCAL_C void LBT_TRACE(TInt level, const char* file, TInt lineno, const char* desc,...)
- {
- _LIT8(fmt, "!%s %s %s:%d ");
- TInt desclength, filelength, fmtlength;
- fmtlength = fmt().Length();
- LENGTH(desc,desclength);
- LENGTH(file,filelength);
-
- HBufC8* str = NULL;
- TRAPD(error, str = HBufC8::NewL(desclength+fmtlength+filelength+10+25+200));
- if ( error != KErrNone )
- {
- return;
- }
-
- TPtr8 ptr(str->Des());
- ptr.Zero();
-
- TLbtDesOverflow ovrflowHandler;
- ptr.AppendFormat(fmt(),
- &ovrflowHandler,
- LbtLogLevelStr[(level&KLbtLogLevelMask)],
- LbtLogComponentStr[(level&KLbtLogComponentMask) >> 16],
- file,
- lineno);
-
- HBufC8* descbuf = HBufC8::NewL(desclength);
- if ( error == KErrNone )
- {
- descbuf->Des().Append(reinterpret_cast<const TUint8 *>(desc), desclength);
- VA_LIST list;
- VA_START(list, desc);
- ptr.AppendFormat(*descbuf,
- &ovrflowHandler,
- list );
- delete descbuf;
- }
-
-#ifdef LBT_FILE_LOGGER
- _LIT(KLbtTraceDir,"epos");
- _LIT(KLbtTraceFile,"lbt.log");
- RFileLogger::Write(KLbtTraceDir(), KLbtTraceFile(), EFileLoggingModeAppend, *str);
-#else
- RDebug::RawPrint(*str);
-#endif
- delete str;
- }
-*/
-
-#else // if _DEBUG flag is not defined
-
-#define LBT_TRACE(level, file, lineno, desc...)
-#define FUNC_ENTER(x)
-#define STOPLOGGING
-#define LOG(x)
-#define LOG1(x,y)
-#define ERROR(x,y)
-#define LOGSTRING(x, y)
-
-#endif // end of #ifdef _DEBUG
-
-
-#endif // LBT_LOGGER_H