diff -r 000000000000 -r b16258d2340f applayerprotocols/httpexamples/nwsswsptrhnd/logging.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/applayerprotocols/httpexamples/nwsswsptrhnd/logging.h Tue Feb 02 01:09:52 2010 +0200 @@ -0,0 +1,70 @@ +// Copyright (c) 2001-2009 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: +// + +/** + @file logging.h + @warning : This file contains Rose Model ID comments - please do not delete +*/ + +#ifndef __LOGGING_H__ +#define __LOGGING_H__ + +// System includes +#include +#include +#include + +// By default, logging will always be switched on. Later, this may be removed, leaving it to individual +// source files to enable logging where needed. +#define _LOGGING + +#if defined (_DEBUG) && defined (_LOGGING) + +// HTTP Logging macros +#define __DECLARE_LOG RFileLogger iLogger; +#define __OPENLOG(D, L) iLogger.Connect(); \ + TParse p; \ + _LIT(KLogFile, L); \ + p.Set(KLogFile(), NULL, NULL); \ + _LIT(KLogDir, D); \ + iLogger.CreateLog(KLogDir(), p.NameAndExt(), EFileLoggingModeOverwrite); \ + iLogger.SetDateAndTime(ETrue, ETrue); +#define __LOG_TITLE(T) iLogger.Write(TPtrC8((const TText8 *)(T))); +#define __CLOSELOG iLogger.Close(); +#define __LOG(C) iLogger.Write(TPtrC8((const TText8 *)(C))); +#define __LOG1(C, X) iLogger.WriteFormat(TPtrC8((const TText8 *)(C)), X); +#define __LOG2(C, X, Y) iLogger.WriteFormat(TPtrC8((const TText8 *)(C)), X, Y); +#define __LOG3(C, X, Y, Z) iLogger.WriteFormat(TPtrC8((const TText8 *)(C)), X, Y, Z); +#define __DUMP(H, M, D) {_LIT(KHeader, H); \ + _LIT(KMargin, M); \ + iLogger.HexDump((const TText*)(KHeader().Ptr()), (const TText*)(KMargin().Ptr()), D.Ptr(), D.Length());} +#define __QINFO(aText) {User::InfoPrint(aText); User::After(1000000);} + +#elif !defined (_DEBUG) + +// NULL macros +#define __DECLARE_LOG TUint8 iDummyLoggerNotUsed[sizeof(RFileLogger)]; +#define __OPENLOG(D, L) +#define __LOG_TITLE(T) +#define __CLOSELOG +#define __LOG(C) +#define __LOG1(C, X) +#define __LOG2(C, X, Y) +#define __LOG3(C, X, Y, Z) +#define __DUMP(H, M, D) +#define __QINFO(aText) +#endif // !_DEBUG + +#endif // __LOGGING_H__