Revision: 201013 RCL_3
authorDremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
Wed, 14 Apr 2010 15:46:18 +0300
branchRCL_3
changeset 9 9fdee5e1da30
parent 8 796276a1bdcc
child 10 d20aea8a18b6
Revision: 201013 Kit: 201015
imstutils/imconversationview/imcvuiapp/src/cimcvapprichtextcontainer.cpp
imstutils/imconversationview/imcvuiapp/src/cimcvappui.cpp
imstutils/imconversationview/rom/imconversationview.iby
imstutils/imconversationview/rom/imconversationviewresources.iby
imstutils/loc/meco.loc
instantmsgindicatorplugin/inc/instantmsgindicatorpluginimplementation.h
instantmsgindicatorplugin/src/instantmsgindicatorpluginimplementation.cpp
servicewidget/servicewidgetdatapublisher/inc/cservicewidgetplugin.h
servicewidget/servicewidgetdatapublisher/src/cservicewidgetplugin.cpp
uiservicetab/inc/uiservicetabtracer.h
uiservicetab/vimpstcmdprocess/inc/cvimpstprocessarrayitem.h
uiservicetab/vimpstcmdprocess/src/cvimpstcmdaddcontact.cpp
uiservicetab/vimpstcmdprocess/src/cvimpstcmdaddfrompbk.cpp
uiservicetab/vimpstcmdprocess/src/cvimpstcmdaddtopbk.cpp
uiservicetab/vimpstcmdprocess/src/cvimpstcmdblockcontact.cpp
uiservicetab/vimpstcmdprocess/src/cvimpstcmdcall.cpp
uiservicetab/vimpstcmdprocess/src/cvimpstcmdcancellogin.cpp
uiservicetab/vimpstcmdprocess/src/cvimpstcmdcca.cpp
uiservicetab/vimpstcmdprocess/src/cvimpstcmdchangeownavtar.cpp
uiservicetab/vimpstcmdprocess/src/cvimpstcmdchangeownmessage.cpp
uiservicetab/vimpstcmdprocess/src/cvimpstcmdchangeownstatus.cpp
uiservicetab/vimpstcmdprocess/src/cvimpstcmdcloseconversation.cpp
uiservicetab/vimpstcmdprocess/src/cvimpstcmddeletecontact.cpp
uiservicetab/vimpstcmdprocess/src/cvimpstcmdeditcontact.cpp
uiservicetab/vimpstcmdprocess/src/cvimpstcmdfactory.cpp
uiservicetab/vimpstcmdprocess/src/cvimpstcmdfetchblockedlist.cpp
uiservicetab/vimpstcmdprocess/src/cvimpstcmdlogin.cpp
uiservicetab/vimpstcmdprocess/src/cvimpstcmdlogout.cpp
uiservicetab/vimpstcmdprocess/src/cvimpstcmdprocessselectedcontact.cpp
uiservicetab/vimpstcmdprocess/src/cvimpstcmdsearch.cpp
uiservicetab/vimpstcmdprocess/src/cvimpstcmdunblockcontact.cpp
uiservicetab/vimpstcmdprocess/src/cvimpstprocessArray.cpp
uiservicetab/vimpstcmdprocess/src/cvimstcmdfriendrequest.cpp
uiservicetab/vimpstdetailsviewplugin/src/cvimpstdetailscontacthandler.cpp
uiservicetab/vimpstdetailsviewplugin/src/cvimpstdetailsheadercontrol.cpp
uiservicetab/vimpstdetailsviewplugin/src/cvimpstdetailspresencehandler.cpp
uiservicetab/vimpstdetailsviewplugin/src/cvimpstdetailsviewbrandhandler.cpp
uiservicetab/vimpstdetailsviewplugin/src/cvimpstdetailsviewfactory.cpp
uiservicetab/vimpstdetailsviewplugin/src/cvimpstdetailsviewplugin.cpp
uiservicetab/vimpstdetailsviewplugin/src/cvimpstfieldproperty.cpp
uiservicetab/vimpstdetailsviewplugin/src/cvimpstfieldpropertyarray.cpp
uiservicetab/vimpstengine/src/cvimpstblockedlistmanager.cpp
uiservicetab/vimpstengine/src/cvimpstengine.cpp
uiservicetab/vimpstengine/src/cvimpstenginecchhandler.cpp
uiservicetab/vimpstengine/src/cvimpstenginecontactmgmtextention.cpp
uiservicetab/vimpstengine/src/cvimpstenginecvlistener.cpp
uiservicetab/vimpstengine/src/cvimpstenginefactory.cpp
uiservicetab/vimpstengine/src/cvimpstengineimsubservice.cpp
uiservicetab/vimpstengine/src/cvimpstenginepresencesubservice.cpp
uiservicetab/vimpstengine/src/cvimpstenginerequest.cpp
uiservicetab/vimpstengine/src/cvimpstenginerequestmapper.cpp
uiservicetab/vimpstengine/src/cvimpstenginesearchmgrextention.cpp
uiservicetab/vimpstengine/src/cvimpstengineservicetablefetcher.cpp
uiservicetab/vimpstengine/src/cvimpstenginesessioncntxtobserver.cpp
uiservicetab/vimpstengine/src/cvimpstenginevoipsubservice.cpp
uiservicetab/vimpststorage/src/cvimpststorageactivehandler.cpp
uiservicetab/vimpststorage/src/cvimpststoragecontact.cpp
uiservicetab/vimpststorage/src/cvimpststoragecontactlist.cpp
uiservicetab/vimpststorage/src/cvimpststoragecontactsorter.cpp
uiservicetab/vimpststorage/src/cvimpststoragemanager.cpp
uiservicetab/vimpststorage/src/cvimpststoragemanagerfactory.cpp
uiservicetab/vimpststorage/src/cvimpststorageserviceview.cpp
uiservicetab/vimpststorage/src/cvimpststoragevpbklocalstore.cpp
uiservicetab/vimpststorage/src/cvimpststoragevpbkserverstore.cpp
uiservicetab/vimpststorage/src/cvimpststoragevpbkstorehandler.cpp
uiservicetab/vimpststorage/src/vimpststorageutils.cpp
uiservicetab/vimpstui/rss/vimpsterrornotes.rss
uiservicetab/vimpstui/src/ccommandinfo.cpp
uiservicetab/vimpstui/src/cvimpstuiavatarselectionhandler.cpp
uiservicetab/vimpstui/src/cvimpstuiblockview.cpp
uiservicetab/vimpstui/src/cvimpstuiblockviewcontrol.cpp
uiservicetab/vimpstui/src/cvimpstuibranddata.cpp
uiservicetab/vimpstui/src/cvimpstuicontactselection.cpp
uiservicetab/vimpstui/src/cvimpstuicveventlistener.cpp
uiservicetab/vimpstui/src/cvimpstuidoublelistboxarray.cpp
uiservicetab/vimpstui/src/cvimpstuidoublelistboxtabviewcontrol.cpp
uiservicetab/vimpstui/src/cvimpstuiextensionfactory.cpp
uiservicetab/vimpstui/src/cvimpstuiextensionservice.cpp
uiservicetab/vimpstui/src/cvimpstuilistboxmodel.cpp
uiservicetab/vimpstui/src/cvimpstuimenuextension.cpp
uiservicetab/vimpstui/src/cvimpstuisearchfieldarray.cpp
uiservicetab/vimpstui/src/cvimpstuisearchquerydialog.cpp
uiservicetab/vimpstui/src/cvimpstuisearchview.cpp
uiservicetab/vimpstui/src/cvimpstuisearchviewcontrol.cpp
uiservicetab/vimpstui/src/cvimpstuisinglelistboxarray.cpp
uiservicetab/vimpstui/src/cvimpstuisinglelistboxtabviewcontrol.cpp
uiservicetab/vimpstui/src/cvimpstuisinglestylelistbox.cpp
uiservicetab/vimpstui/src/cvimpstuitabbedview.cpp
uiservicetab/vimpstui/src/cvimpstuitermsofusedialoghandler.cpp
uiservicetab/vimpstui/src/cvimpstuitermsofusedlg.cpp
uiservicetab/vimpstui/src/cvimpstuiviewmanager.cpp
uiservicetab/vimpstutils/src/cvimpstengineaimagehandler.cpp
uiservicetab/vimpstutils/src/cvimpstimageprocessor.cpp
uiservicetab/vimpstutils/src/vimpstutils.cpp
uiservicetab/vimpstutils/src/vimpstutilsdialog.cpp
uiservicetab/vimpstutils/src/vimpstutilsnotemapper.cpp
uiservicetab/vimpstutils/src/vimpstutilstextquerydialog.cpp
uiservicetab/vimpstutils/src/vimpstutilswaitnote.cpp
--- a/imstutils/imconversationview/imcvuiapp/src/cimcvapprichtextcontainer.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/imstutils/imconversationview/imcvuiapp/src/cimcvapprichtextcontainer.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -1731,7 +1731,10 @@
         types.AppendL( item.iItemType );
         
         // apply highlight item formatting
-        HighLightItemL( realSel );
+        if( iItemHighlight )
+        	{
+			HighLightItemL( realSel );
+        	}
         }
     
     CleanupStack::PopAndDestroy( findItem );
--- a/imstutils/imconversationview/imcvuiapp/src/cimcvappui.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/imstutils/imconversationview/imcvuiapp/src/cimcvappui.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -37,7 +37,7 @@
 #include 	<layoutmetadata.cdl.h>
 #include 	<aknlayoutscalable_avkon.cdl.h>
 #include 	<AknStatuspaneUtils.h>
-#include 	<AknLayoutScalable_Avkon.cdl.common.h>
+#include 	<aknlayoutscalable_avkon.cdl.common.h>
 #include 	"imcvuicommonuids.h"
 #include    "cimcvuiappskinvariant.h"
 #include 	"imcvuiparams.h"
--- a/imstutils/imconversationview/rom/imconversationview.iby	Wed Mar 31 21:14:49 2010 +0300
+++ b/imstutils/imconversationview/rom/imconversationview.iby	Wed Apr 14 15:46:18 2010 +0300
@@ -23,8 +23,7 @@
 
 // imcvuiapp application
 S60_APP_EXE(imcvuiapp)
-S60_APP_BITMAP(imcvuiapp)
-S60_APP_AIF_ICONS(imcvuiapp)
+
 
 //Publish application registration resource file 
 data=DATAZ_\private\10003a3f\apps\imcvuiapp_reg.rsc    								private\10003a3f\Import\Apps\imcvuiapp_reg.rsc
--- a/imstutils/imconversationview/rom/imconversationviewresources.iby	Wed Mar 31 21:14:49 2010 +0300
+++ b/imstutils/imconversationview/rom/imconversationviewresources.iby	Wed Apr 14 15:46:18 2010 +0300
@@ -23,6 +23,7 @@
 S60_APP_RESOURCE(imcvuiapp)
 S60_APP_CAPTION(imcvuiapp)
 
+
 data=DATAZ_\BITMAP_DIR\imcvuiapp.mif      BITMAP_DIR\imcvuiapp.mif 
 
 
--- a/imstutils/loc/meco.loc	Wed Mar 31 21:14:49 2010 +0300
+++ b/imstutils/loc/meco.loc	Wed Apr 14 15:46:18 2010 +0300
@@ -1598,8 +1598,16 @@
 #define qtn_servtab_widget_servdesc          "My online service"
 
 // d: Text shown when service tab is not usable after uninstall
-// l: main_pane_empty_t1/opt2
+// l: main_list_empty_pane/opt2
 // r: MCL
 #define qtn_servtab_swupdate_restart								"Please restart phone to use %U service"
 
+// d: Item showed when there is no XSP id present for the service contact in Uiservicetab
+// d: Popup is shown when there is no XSP id
+// l: popup_note_window/opt2
+// r: MCL
+//
+#define qtn_servtab_noxsp_error          "Contact has no communication address. Add details to the contact."
+
+
 //end of file
--- a/instantmsgindicatorplugin/inc/instantmsgindicatorpluginimplementation.h	Wed Mar 31 21:14:49 2010 +0300
+++ b/instantmsgindicatorplugin/inc/instantmsgindicatorpluginimplementation.h	Wed Apr 14 15:46:18 2010 +0300
@@ -64,8 +64,11 @@
 		 * @param aSeriveId, service id.
 		 * @param aSenderId, message sender id.
 		 * @param aMultipleSender, count of number of P-2_p chats.
+		 * @param aCloseConversation, indicates that this even came from closing the 
+		 * conversation and hence no need to paly the tone if there were already new messages.
 		 */
-     void MessageInfoL(TInt aNewMessages, TInt aSeriveId, const TDesC& aSenderId, TInt aMultipleSender);
+     void MessageInfoL(TInt aNewMessages, TInt aSeriveId, const TDesC& aSenderId, 
+                       TInt aMultipleSender,TBool aCloseConversation = EFalse);
  
 
     
--- a/instantmsgindicatorplugin/src/instantmsgindicatorpluginimplementation.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/instantmsgindicatorplugin/src/instantmsgindicatorpluginimplementation.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -176,11 +176,17 @@
 //
  void CInstantMsgIndicatorPluginImplementation::MessageInfoL(TInt aNewMessages, TInt aSeriveId,
                                                          const TDesC& aSenderId ,
-                                                         TInt aMultipleSender)
+                                                         TInt aMultipleSender,
+                                                         TBool aCloseConversation /*= EFalse*/)
     {
     
     ShowIMIndicatorL(aNewMessages, aSeriveId,aSenderId, aMultipleSender);
-    PlayMsgToneL(aNewMessages,aSeriveId);
+    // this event is not from close conversation hence play the tone, 
+    // else do not play the tone.
+    if(!aCloseConversation)
+        {
+        PlayMsgToneL(aNewMessages,aSeriveId);
+        }
   	}
 
 //end of file
--- a/servicewidget/servicewidgetdatapublisher/inc/cservicewidgetplugin.h	Wed Mar 31 21:14:49 2010 +0300
+++ b/servicewidget/servicewidgetdatapublisher/inc/cservicewidgetplugin.h	Wed Apr 14 15:46:18 2010 +0300
@@ -23,7 +23,7 @@
 #include <contentharvesterplugin.h>
 #include <contentharvesterpluginuids.hrh>
 #include <mspnotifychangeobserver.h>
-#include <aipropertyextension.h>
+//#include <aipropertyextension.h>
 #include "mservicewidgetobservers.h"
 #include<badesca.h>
 // FORWARD DECLARATIONS
@@ -43,8 +43,8 @@
  
 class CServiceWidgetPlugin : public CContentHarvesterPlugin,
 							 public MSPNotifyChangeObserver,
-							 public MServiceWidgetEventObserver,
-							 public MAiPropertyExtension
+							 public MServiceWidgetEventObserver//,
+							 //public MAiPropertyExtension
 	{
 	friend class Cservicewidgetdatapublisher_ut;
 	public:
@@ -133,7 +133,7 @@
 		    * @param aProperty - identification of property.
 		    * @return pointer to property value.
 		    */
-		    TAny* GetPropertyL( TInt aProperty );
+		    //TAny* GetPropertyL( TInt aProperty );
 
 		    /**
 		    * From MAiPropertyExtension.
@@ -142,7 +142,7 @@
 		    * @param aProperty - identification of property.
 		    * @param aValue - contains pointer to property value.
 		    */
-		    void SetPropertyL( TInt aProperty, TAny* aValue );
+		    //void SetPropertyL( TInt aProperty, TAny* aValue );
 		
 		
 	private:  // Data members
@@ -161,7 +161,7 @@
 	    // Own: service observer
 	    CSPNotifyChange* iSpNotifyChange; 
 	    // Information about the content publisher (this plug-in)
-	    TAiPublisherInfo iInfo;
+	    //TAiPublisherInfo iInfo;
 	};
 
 #endif  // CSERVICEWIDGETPLUGIN_H
--- a/servicewidget/servicewidgetdatapublisher/src/cservicewidgetplugin.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/servicewidget/servicewidgetdatapublisher/src/cservicewidgetplugin.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -413,7 +413,7 @@
 // Read property of publisher plug-in.
 // ---------------------------------------------------------------------------
 //
-TAny* CServiceWidgetPlugin::GetPropertyL( TInt aProperty )
+/*TAny* CServiceWidgetPlugin::GetPropertyL( TInt aProperty )
     {
     TRACE_SWP(TXT("CServiceWidgetPlugin::GetPropertyL() start") );
     TAny* property = NULL;
@@ -454,5 +454,5 @@
             break;         
         }
     TRACE_SWP(TXT("CServiceWidgetPlugin::SetPropertyL() end") );
-    }
+    }*/
 // End of File
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/uiservicetab/inc/uiservicetabtracer.h	Wed Apr 14 15:46:18 2010 +0300
@@ -0,0 +1,416 @@
+/*
+* Copyright (c) 2008 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: trace logs
+ *
+*/
+
+#ifndef UISERVICETABTRACER_H
+#define UISERVICETABTRACER_H
+
+#include <e32base.h>
+#include <flogger.h>
+#include "vimpstbuilddefinitions.h"
+
+#ifdef CHAT_ENABLE_DEBUG_PRINT
+
+// --------------------------------------------------------------------------
+// Define tracer logging method
+// 0    = Logging off
+// 1    = Log to RDebug
+// 2    = Log to file (RFileLogger)
+// --------------------------------------------------------------------------
+//
+#ifdef __WINS__
+    #define TRACER_LOG_METHOD 1 // for WINS
+#else
+    #define TRACER_LOG_METHOD 2 // for device
+#endif
+
+#endif
+
+// --------------------------------------------------------------------------
+// Whether to use TRAP_INSTRUMENTATIONs to
+// log trapped leaves
+// --------------------------------------------------------------------------
+//
+#define TRACE_TRAPS
+//============================================================================
+
+// Logging off, define empty macros and skip all the rest
+#if TRACER_LOG_METHOD == 0
+
+#define TRACER(func)
+#define TRACER_AUTO
+#define TRACER_RET(func,format)
+#define TRACER_AUTO_RET(format)
+#define TRACER_LEAVE(func)
+#define TRACER_AUTO_LEAVE
+#define TRACE(args...)
+#define TRACE8(args...)
+#define TRACER_TO16(a,b)
+#define TRACER_TO8(a,b)
+#define TRACER_CLOSELOG
+
+#else  // Logging on
+
+// --------------------------------------------------------------------------
+// Change these to modify line syntax
+// --------------------------------------------------------------------------
+//
+_LIT( KLogBase, "UiServiceTab %S(%d): %S");
+_LIT( KLogEnter, "UiServiceTab %S: ENTER" );
+_LIT( KLogExit, "UiServiceTab %S: EXIT" );
+_LIT( KLogLeave, "UiServiceTab %S: LEAVE!" );
+_LIT( KLogTrappedLeave, "UiServiceTab %S(%d): TRAPPED LEAVE, code %d!" );
+_LIT( KLogExitRet, "UiServiceTab %S: EXIT, Returning " );
+_LIT( KLogDir,  "UiServiceTab" ); 
+_LIT( KLogFile, "UiServiceTab.log" );
+
+#define TRACER_PARAMS_LENGTH 200
+
+// --------------------------------------------------------------------------
+// Macro to print only function leaves (not entries or exits). 
+// Example: TRACER_LEAVE( "CMyClass::MyFunction" );
+// --------------------------------------------------------------------------
+//
+#define TRACER_LEAVE(func) TTracer function_tracer( _S(func), _S(""), EFalse )
+
+// --------------------------------------------------------------------------
+// Same as above, except that function name is generated automatically
+// Example: TRACER_AUTO_LEAVE;
+// --------------------------------------------------------------------------
+//
+#define TRACER_AUTO_LEAVE TTracer \
+    function_tracer( ((const TText8*)__PRETTY_FUNCTION__), _S(""), EFalse )
+
+// --------------------------------------------------------------------------
+// Macro to print function entry, exit and leave. 
+// Example: TRACER( "CMyClass::MyFunction" );
+// --------------------------------------------------------------------------
+//
+#define TRACER(func) TTracer function_tracer( _S(func), _S(""), ETrue )
+
+// --------------------------------------------------------------------------
+// Same as above, except that function name is generated automatically
+// Example: TRACER_AUTO;
+// --------------------------------------------------------------------------
+//
+#define TRACER_AUTO \
+    TTracer function_tracer \
+        ( ((const TText8*)__PRETTY_FUNCTION__), _S(""), ETrue )
+
+// --------------------------------------------------------------------------
+// Macro to print function return value in addition to entry, exit 
+// and leave conditions. Second parameter is a formatting string used 
+// to print the return value Example to print an integer return value:
+// TRACER_RET("CMyclass::MyFunction", "%d");
+// --------------------------------------------------------------------------
+//
+#define TRACER_RET(func,format) \
+    TTracer function_tracer( _S(func), _S(format), ETrue )
+
+// --------------------------------------------------------------------------
+// Same as above, except that function name is generated automatically
+// Example: TRACER_AUTO_RET( "%d" );
+// --------------------------------------------------------------------------
+//
+#define TRACER_AUTO_RET(format) \
+    TTracer function_tracer \
+        ( ((const TText8*)__PRETTY_FUNCTION__), _S(format), ETrue )
+
+// --------------------------------------------------------------------------
+// Macro to print custom msg with any number of parameters
+// Either TRACER, TRACER_RET or TRACER_LEAVE 
+// must be called before in same scope
+// It's is assumed that descriptor (pointer) parameters are 16-bit
+// NOTE: It is also assumed that parameter values
+// add no more than TRACE_PARAMS_LENGTH to the traced string
+// --------------------------------------------------------------------------
+//
+#define TRACE( args... ) function_tracer.trace( __LINE__, ## args )
+
+// --------------------------------------------------------------------------
+// Macro to print custom msg with any number of parameters
+// Either TRACER, TRACER_RET or TRACER_LEAVE 
+// must be called before in same scope
+// It's is assumed that descriptor (pointer) parameters are 8-bit
+// NOTE: It is also assumed that parameter values 
+// add no more than TRACE_PARAMS_LENGTH to the traced string
+// --------------------------------------------------------------------------
+//
+#define TRACE8( args... ) function_tracer.trace8(__LINE__, ## args )
+
+// --------------------------------------------------------------------------
+// Just to quickly convert descriptors if needed
+// --------------------------------------------------------------------------
+//
+#define DESCRIPTOR_LENGTH 100
+#define TRACER_TO16( desc8, desc16 ) \
+    TBuf<DESCRIPTOR_LENGTH> desc16;desc16.Copy(desc8) 
+#define TRACER_TO8( desc16, desc8 ) \
+    TBuf8<DESCRIPTOR_LENGTH> desc8;desc8.Copy(desc16) 
+
+#ifdef TRACE_TRAPS
+#undef TRAP_INSTRUMENTATION_LEAVE
+#define TRAP_INSTRUMENTATION_LEAVE(aResult) \
+    TTracer::static_trace( ((const TText8*)__PRETTY_FUNCTION__), \
+                           __LINE__, aResult )
+#endif
+
+
+#if TRACER_LOG_METHOD == 1      // Print to RDebug
+
+#include <e32debug.h>
+
+#define TRACER_PRINT(a)            RDebug::Print(a,&iFunc);
+#define TRACER_PRINT_BASE(a,b,c)   RDebug::Print(a,&iFunc, b, c);
+#define TRACER_PRINT_RET(a,b)      RDebug::Print(a,&iFunc,b);
+#define TRACER_PRINT_STATIC(a, b, c,d ) \
+    RDebug::Print(a, b, c, d);
+
+#elif TRACER_LOG_METHOD == 2    // Print to file
+
+ // needs flogger.lib as DEBUGLIBRARY
+
+// --------------------------------------------------------------------------
+// Log directory under C:\logs
+// --------------------------------------------------------------------------
+//
+//_LIT( KLogDir,  "MeCo" );      
+
+// --------------------------------------------------------------------------
+// Log filename in log directory
+// --------------------------------------------------------------------------
+//
+//_LIT( KLogFile, "MeCo.log" );
+#define TRACER_PRINT(a)         RFileLogger::WriteFormat(KLogDir, \
+                            KLogFile,EFileLoggingModeAppend,a,&iFunc);
+#define TRACER_PRINT_BASE(a,b,c)   RFileLogger::WriteFormat(KLogDir, \
+                            KLogFile,EFileLoggingModeAppend,a,&iFunc,b,c);
+#define TRACER_PRINT_RET(a,b)   RFileLogger::WriteFormat(KLogDir, \
+                            KLogFile,EFileLoggingModeAppend,a,&iFunc,b);
+#define TRACER_PRINT_STATIC(a,b,c,d) \
+    RFileLogger::WriteFormat(KLogDir, \
+        KLogFile,EFileLoggingModeAppend,a,b,c,d);
+
+#endif
+
+
+/**
+ * Simple tracer class that logs function enter, exit or leave
+ */
+class TTracer : public CBase
+    {
+private:
+    
+    /**
+     * Simple helper method to just return if NULL
+     */
+    template<class T> static void ReturnIfNull(T* aNy) 
+        { if ( !aNy ) return; }
+
+public:
+    /**
+     * inline constructor to write log of entering a function
+     */
+    TTracer( const TText* aFunc, 
+             const TText* aRetFormat, 
+             TBool aPrintEnter) :
+        iFunc( aFunc), 
+        iRetFormat( aRetFormat ),
+        iPrintEnterAndExit( aPrintEnter)
+        {
+        iFuncBuf = NULL;
+        //iLogger.Connect();
+        //iLogger.CreateLog(KLogDir, KLogFile, mode);
+        if ( iPrintEnterAndExit )
+            {
+            TRACER_PRINT( KLogEnter );
+            }
+        }
+
+    /**
+     * inline constructor to write log of entering a function (8-bit)
+     */
+    TTracer( const TText8* aFunc, 
+             const TText* aRetFormat, 
+             TBool aPrintEnter) :
+        iRetFormat( aRetFormat ),
+        iPrintEnterAndExit( aPrintEnter )
+        {
+        TInt len = User::StringLength ((const unsigned char*)aFunc );
+        HBufC8* temp = HBufC8::New( len );
+        ReturnIfNull( temp );
+        *temp = (const TUint8*)aFunc;
+        iFuncBuf = HBufC::NewL( len );
+        //iLogger.Connect();
+        //iLogger.CreateLog(KLogDir, KLogFile, EFileLoggingModeAppend);
+        if ( iFuncBuf )
+            {
+            iFuncBuf->Des().Copy( *temp );
+            iFunc.Set( *iFuncBuf );
+            if ( iPrintEnterAndExit )
+                {
+                TRACER_PRINT( KLogEnter );
+                }
+            }
+        delete temp;
+        }
+
+
+    /**
+     * inline destructor to write log of exiting a function 
+     * normally or with a leave
+     */
+    ~TTracer( )
+        {
+        if ( std::uncaught_exception ( ) ) // Leave is an exception
+            {
+            // The function exited with a leave
+            TRACER_PRINT( KLogLeave );
+            }
+        else
+            {
+            // The function exited normally
+            if ( iPrintEnterAndExit )
+                {
+                if ( iRetFormat.Length ( )== 0 )
+                    {
+                    TRACER_PRINT( KLogExit );
+                    }
+                else
+                    {
+                    // Log the return value
+#ifdef __WINS__
+                    TInt32 retVal = 0;
+
+                    // The assembly bit. This needs to be reimplemented
+                    // for every target. 
+                    _asm( mov retVal, ebx );
+
+                    TBuf<100> format( KLogExitRet );
+                    format.Append( iRetFormat );
+                    TRACER_PRINT_RET( format, retVal );
+#else
+                    // ARM assembler to get return value
+                    // could be implemented here..
+                    TRACER_PRINT( KLogExit );
+#endif
+                    }
+                }
+            }
+        //iLogger.Close();
+        delete iFuncBuf;
+        }
+
+public:
+
+    /**
+     * Trace method that assumes 16-bit descriptor parameters
+     */
+    void trace( TInt aLine, const char* aMsg, ... )
+        {
+        ReturnIfNull( iFunc.Ptr() );
+        TInt len = User::StringLength ((const unsigned char*)aMsg );
+        TPtrC8 msg( (const unsigned char*)aMsg, len );
+        HBufC* format = HBufC::New( len );
+        ReturnIfNull( format );
+        format->Des().Copy( msg );
+        HBufC* result = HBufC::New( len + TRACER_PARAMS_LENGTH );
+        if ( result )
+            {
+            VA_LIST list;
+            VA_START( list, aMsg );
+            result->Des().FormatList( *format, list );
+            VA_END(list);
+            TRACER_PRINT_BASE(KLogBase, aLine, result );
+            }
+        delete format;
+        delete result;
+        }
+
+    /**
+     * Trace method that assumes 8-bit descriptor parameters
+     */
+    void trace8(TInt aLine, const char* aMsg, ... )
+        {
+        ReturnIfNull( iFunc.Ptr() );
+        TInt len = User::StringLength ((const unsigned char*)aMsg );
+        TPtrC8 msg( (const unsigned char*)aMsg, len );
+        HBufC8* result8 = HBufC8::New( len + TRACER_PARAMS_LENGTH );
+        ReturnIfNull( result8 );
+        VA_LIST list;
+        VA_START( list, aMsg );
+        result8->Des().FormatList( msg, list );
+        VA_END(list);
+        HBufC* result16 = HBufC::New( result8->Length() );
+        if ( result16 )
+            {
+            result16->Des().Copy( *result8 );
+            TRACER_PRINT_BASE( KLogBase, aLine, result16 );
+            }
+        delete result8;
+        delete result16;
+        }
+    
+    static void static_trace( const TText8* aFunc, 
+                              TInt aLine,
+                              TInt aResult )
+        {
+        TInt len = User::StringLength ((const unsigned char*)aFunc );
+        HBufC8* temp = HBufC8::New( len );
+        ReturnIfNull( temp );
+        *temp = (const TUint8*)aFunc;
+        HBufC* funcBuf = HBufC::NewL( len );
+        if ( funcBuf )
+            {
+            funcBuf->Des().Copy( *temp );
+            TRACER_PRINT_STATIC( 
+                KLogTrappedLeave, funcBuf, aLine, aResult );
+            }
+        delete temp;
+        delete funcBuf;
+        }
+public:
+
+    /** 
+     * Pointer descriptor to function signature that is to be logged.
+     */
+    TPtrC iFunc;
+    //RFileLogger iLogger;
+
+private:
+
+    
+	/**
+     * Formatting string used to print the function return value
+     */
+    TPtrC iRetFormat;
+    
+    /**
+     * If true, method enters and exits are printed
+     */
+    TBool iPrintEnterAndExit;
+    
+    /**
+     * Buffer to store function name when needed
+     */
+    HBufC* iFuncBuf;
+    };
+
+#endif // TRACER_LOG_METHOD != 0 && CHAT_ENABLE_DEBUG_PRINT
+
+#endif // UISERVICETABTRACER_H
+
+// End of file
--- a/uiservicetab/vimpstcmdprocess/inc/cvimpstprocessarrayitem.h	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstcmdprocess/inc/cvimpstprocessarrayitem.h	Wed Apr 14 15:46:18 2010 +0300
@@ -139,6 +139,12 @@
      */
     virtual TPtrC16 FormattedItemString() = 0;
     
+    
+    /*
+     * Format and Reformat the string for listbox
+     */
+    virtual void DoFormatStringL() = 0;
+    
    
     /**
      * virtual destructor.
--- a/uiservicetab/vimpstcmdprocess/src/cvimpstcmdaddcontact.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstcmdprocess/src/cvimpstcmdaddcontact.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -21,7 +21,7 @@
 
 #include "vimpstcmd.hrh"
 #include "mvimpstcmdobserver.h"
-#include "vimpstdebugprint.h" 
+
 
 #include <e32def.h>
 #include "mvimpstengine.h"
@@ -40,6 +40,8 @@
 #include "mvimpstenginesubservice.h"
 #include "mvimpstenginepresencesubservice.h"
 
+#include "uiservicetabtracer.h"
+
 // Constants
 _LIT( KListNameAllBuddy ,"buddylist" );
 
@@ -54,6 +56,7 @@
             iContactId( aContactId ),
             iEngine(aEngine)
     {
+    TRACER_AUTO;
     }
 
 // --------------------------------------------------------------------------
@@ -62,7 +65,7 @@
 //
 CVIMPSTCmdAddContact::~CVIMPSTCmdAddContact()
     {    
-    
+    TRACER_AUTO;
     }
 
 // --------------------------------------------------------------------------
@@ -73,6 +76,7 @@
         const TInt aCommandId,const TDesC& aContactId,
         MVIMPSTEngine& aEngine)
     {
+    TRACER_AUTO;
     CVIMPSTCmdAddContact* self = new (ELeave ) CVIMPSTCmdAddContact( aCommandId ,aContactId, aEngine);
     self->ConstructL(); //use contsurctL if necessary
     return self;
@@ -82,7 +86,8 @@
 // --------------------------------------------------------------------------
 //
 void CVIMPSTCmdAddContact::ConstructL()
-    {    
+    {
+    TRACER_AUTO;
     iError = KErrNone;
     }
 
@@ -92,7 +97,8 @@
 //
 void CVIMPSTCmdAddContact::ExecuteLD()
     {
-   	CHAT_DP_FUNC_ENTER("CVIMPSTEnableServiceCmd::ExecuteLD");
+   
+    TRACER_AUTO;
     //push to the cleanupstack
     CleanupStack::PushL( this );
     MVIMPSTStorageServiceView* storage = CVIMPSTStorageManagerFactory::ContactListInterfaceL(iEngine.ServiceId()) ;
@@ -135,15 +141,15 @@
 	        }
         }//End  if(storage)
    			
-    CHAT_DP_FUNC_ENTER("CVIMPSTEnableServiceCmd:: CommandFinished");
+    
 
     if(iObserver)
 	    {
 	    iObserver->CommandFinishedL(*this);
 	    }
-	CHAT_DP_FUNC_ENTER("CVIMPSTEnableServiceCmd:: CommandFinished");	
+		
 	CleanupStack::PopAndDestroy();	
-	CHAT_DP_FUNC_DONE("CVIMPSTEnableServiceCmd::ExecuteLD");	
+	
     }
 
 // --------------------------------------------------------------------------
@@ -151,6 +157,8 @@
 // --------------------------------------------------------------------------
 TBool CVIMPSTCmdAddContact::IsContactBlocked(const TDesC& aUserId)
 	{
+	TRACER_AUTO;
+	TRACE("userId: %S", &aUserId);
    	MVIMPSTEngineSubService* subService =    	   
    	   					(iEngine.SubService(TVIMPSTEnums::EPresence));
     if(subService)
--- a/uiservicetab/vimpstcmdprocess/src/cvimpstcmdaddfrompbk.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstcmdprocess/src/cvimpstcmdaddfrompbk.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -20,7 +20,8 @@
 #include "cvimpstcmdaddfrompbk.h"
 #include "vimpstcmd.hrh"
 #include "mvimpstcmdobserver.h"
-#include "vimpstdebugprint.h" 
+
+#include "uiservicetabtracer.h"
 
 #include <e32def.h>
 #include <mvpbkstorecontact.h>
@@ -66,6 +67,7 @@
                                                   const MVPbkStoreContact& aStoreContact,
                                                   MVIMPSTEngine& aEngine )
     {
+    TRACER_AUTO;
     CVIMPSTCmdAddFromPbk* self = new (ELeave ) CVIMPSTCmdAddFromPbk( aCommandId ,aStoreContact, aEngine);
     self->ConstructL(); //use contsurctL if necessary
     return self;
@@ -85,7 +87,8 @@
 //
 void CVIMPSTCmdAddFromPbk::ExecuteLD()
     {
-    CHAT_DP_FUNC_ENTER("CVIMPSTCmdAddFromPbk::ExecuteLD");
+    
+    TRACER_AUTO;
     //push to the cleanupstack
     CleanupStack::PushL( this );
     MVIMPSTStorageServiceView* storage = CVIMPSTStorageManagerFactory::ContactListInterfaceL( iEngine.ServiceId() ) ;
@@ -125,9 +128,9 @@
         {
         iObserver->CommandFinishedL(*this);
         }
-    CHAT_DP_FUNC_ENTER("CVIMPSTCmdAddFromPbk:: CommandFinished");    
+       
     CleanupStack::PopAndDestroy();  
-    CHAT_DP_FUNC_DONE("CVIMPSTCmdAddFromPbk::ExecuteLD");    
+   
     }
 
 
@@ -166,7 +169,8 @@
 //  
 void CVIMPSTCmdAddFromPbk::GetServiceFieldsL( CDesCArray& aArrayForServiceFields )
     {
-    CHAT_DP_FUNC_ENTER("[CVIMPSTStorageContact::GetServiceFieldsL]  ->  GetServiceFieldsL");
+   
+    TRACER_AUTO;
     HBufC* values[40];
     for( TInt index = 0 ; 
         index < iStoreContact.Fields().FieldCount() ; 
@@ -188,7 +192,7 @@
             ( fieldType->FieldTypeResId() == R_VPBK_FIELD_TYPE_EMAILHOME ) ||
             ( fieldType->FieldTypeResId() == R_VPBK_FIELD_TYPE_EMAILGEN ))
                 {
-                CHAT_DP_FUNC_ENTER("[CVIMPSTStorageContact::GetServiceFieldsL]  ->  GetServiceFieldsL - Found");
+                TRACE("GetServiceFieldsL - Found");
                 values[0] = MVPbkContactFieldTextData::Cast( 
                 iStoreContact.Fields().FieldAt( index ).
                 FieldData() ).Text().AllocLC();
@@ -198,13 +202,13 @@
                     TInt prefixLocation = values[0]->Locate( ':' );
                     if ( KErrNotFound != prefixLocation )
                         {
-                        CHAT_DP_FUNC_ENTER("[CVIMPSTStorageContact::GetServiceFieldsL]  ->  Prefix found -> remove");
+                        TRACE("Prefix found -> remove");                    
                         aArrayForServiceFields.AppendL( values[0]->Des().Mid(
                         prefixLocation+1 ) );
                         }
                     else
                         {
-                        CHAT_DP_FUNC_ENTER("[CVIMPSTStorageContact::GetServiceFieldsL]  ->  No Prefix found");
+                    TRACE("No prefix");                    
                         aArrayForServiceFields.AppendL( values[0]->Des() );    
                         }
                     CleanupStack::PopAndDestroy( values[0] );
--- a/uiservicetab/vimpstcmdprocess/src/cvimpstcmdaddtopbk.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstcmdprocess/src/cvimpstcmdaddtopbk.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -20,7 +20,8 @@
 #include "cvimpstcmdaddtopbk.h"
 #include "vimpstcmd.hrh"
 #include "mvimpstcmdobserver.h"
-#include "vimpstdebugprint.h" 
+
+#include "uiservicetabtracer.h"
 
 #include <e32def.h>
 #include <MVPbkStoreContact.h>
@@ -79,7 +80,7 @@
 //
 void CVIMPSTCmdAddToPbk::ExecuteLD()
     {
-    CHAT_DP_FUNC_ENTER("CVIMPSTCmdAddToPbk::ExecuteLD");
+    TRACER_AUTO;
     //push to the cleanupstack
     CleanupStack::PushL( this );
     MVIMPSTStorageServiceView* storage = CVIMPSTStorageManagerFactory::ContactListInterfaceL(iEngine.ServiceId()) ;
@@ -95,9 +96,9 @@
         {
         iObserver->CommandFinishedL(*this);
         }
-    CHAT_DP_FUNC_ENTER("CVIMPSTCmdAddToPbk:: CommandFinished");    
+       
     CleanupStack::PopAndDestroy();  
-    CHAT_DP_FUNC_DONE("CVIMPSTCmdAddToPbk::ExecuteLD");    
+    
     }
 
 
--- a/uiservicetab/vimpstcmdprocess/src/cvimpstcmdblockcontact.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstcmdprocess/src/cvimpstcmdblockcontact.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -18,7 +18,8 @@
 
 #include "vimpstcmd.hrh"
 #include "mvimpstcmdobserver.h"
-#include "vimpstdebugprint.h" 
+
+#include "uiservicetabtracer.h"
 
 #include <e32def.h>
 #include "mvimpstengine.h"
@@ -83,7 +84,7 @@
 //
 void CVIMPSTCmdBlockContact::ExecuteLD()
     {
-   	CHAT_DP_FUNC_ENTER("CVIMPSTCmdBlockContact::ExecuteLD");
+   	TRACER_AUTO;
     //push to the cleanupstack
     CleanupStack::PushL( this );       
     iError = KErrGeneral;
@@ -96,11 +97,11 @@
             {
             MVIMPSTEnginePresenceSubService& presence = 
                 MVIMPSTEnginePresenceSubService::Cast (*subService);
-            iError = presence.AddToBlockListL(iContactId);
-            CHAT_DP( D_CHAT_LIT(" -> After iError: %d" ), iError);
+            iError = presence.AddToBlockListL(iContactId);           
+            TRACE("iError: %d", iError);
             }
         }
-    CHAT_DP_FUNC_ENTER("CVIMPSTCmdBlockContact:: CommandFinished");
+   
     if( iError == KErrNone )
         {
         iProcessArray.RemoveFromUnknonOrInvitationListL( iContactId ,ETrue );
@@ -109,9 +110,8 @@
 	    {
 	    iObserver->CommandFinishedL(*this);
 	    }
-	CHAT_DP_FUNC_ENTER("CVIMPSTCmdBlockContact:: CommandFinished");	
 	CleanupStack::PopAndDestroy();	
-	CHAT_DP_FUNC_DONE("CVIMPSTCmdBlockContact::ExecuteLD");	
+	
     }
 
 
--- a/uiservicetab/vimpstcmdprocess/src/cvimpstcmdcall.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstcmdprocess/src/cvimpstcmdcall.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -24,6 +24,7 @@
 #include "cvimpstcmdcall.h"
 #include "mvimpstprocessarray.h"
 
+#include "uiservicetabtracer.h"
 
 #include <aiwdialdataext.h>
 #include <aknpopup.h>
@@ -92,7 +93,8 @@
 //
 void CVIMPSTCmdCall::ExecuteLD()
     {
-   	// CHAT_DP_FUNC_ENTER("CVIMPSTCallCmd::ExecuteLD");
+    TRACER_AUTO;
+   	
     //push to the cleanupstack
     CleanupStack::PushL( this );
 
@@ -142,6 +144,7 @@
 //
 void CVIMPSTCmdCall::AddObserver( MVIMPSTCmdObserver& aObserver )
     {
+	TRACER_AUTO;
     // store the observer to notify the command completion
     iObserver = &aObserver;
     }
--- a/uiservicetab/vimpstcmdprocess/src/cvimpstcmdcancellogin.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstcmdprocess/src/cvimpstcmdcancellogin.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -22,7 +22,8 @@
 
 #include "vimpstcmd.hrh"
 #include "mvimpstcmdobserver.h"
-#include "vimpstdebugprint.h" 
+
+#include "uiservicetabtracer.h"
 
 #include <e32def.h>
 #include "mvimpstengine.h"
@@ -56,7 +57,8 @@
         MVIMPSTEngine& aEngine)
     {
     // return the object created 
-    CHAT_DP_FUNC_ENTER("CVIMPSTCmdCancelLogin::NewL");
+   
+    TRACER_AUTO;
     return  new (ELeave ) CVIMPSTCmdCancelLogin( aCommandId , aEngine);
     }
 
@@ -66,23 +68,23 @@
 //
 void CVIMPSTCmdCancelLogin::ExecuteLD()
     {
-   	CHAT_DP_FUNC_ENTER("CVIMPSTCmdCancelLogin::ExecuteLD");
+   	
+    TRACER_AUTO;
     //push to the cleanupstack
     CleanupStack::PushL( this );    
     
     // now  call logout for cancel login
     // protocol adaptation has to take care of this 
-    iEngine.LogoutL();
-   	
-    CHAT_DP_FUNC_ENTER("CVIMPSTCmdCancelLogin:: CommandFinished");
+    iEngine.LogoutL();	
+    
 
     if(iObserver)
 	    {
 	    iObserver->CommandFinishedL(*this);
 	    }
-	CHAT_DP_FUNC_ENTER("CVIMPSTCmdCancelLogin:: CommandFinished");	
+		
 	CleanupStack::PopAndDestroy();	
-	CHAT_DP_FUNC_DONE("CVIMPSTCmdCancelLogin::ExecuteLD");	
+	
     }
 
 
--- a/uiservicetab/vimpstcmdprocess/src/cvimpstcmdcca.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstcmdprocess/src/cvimpstcmdcca.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -33,6 +33,8 @@
 #include "tvimpstconsts.h"
 #include "vimpstdetailsviewpluginuids.hrh"
 
+#include "uiservicetabtracer.h"
+
 // Constants
 
 // --------------------------------------------------------------------------
@@ -71,6 +73,7 @@
         	MVIMPSTProcessArray& aArrayProcess,
         MVIMPSTEngine& aEngine )
     {
+	 TRACER_AUTO;
     CVIMPSTCmdCCA* self = new (ELeave ) CVIMPSTCmdCCA( aCommandId,aIndex,aConnection,aArrayProcess, aEngine );
     self->ConstructL(); //use contsurctL if necessary
     return self;
@@ -92,7 +95,8 @@
 //
 void CVIMPSTCmdCCA::ExecuteLD()
     {
-   	// CHAT_DP_FUNC_ENTER("CVIMPSTSettingsCmd::ExecuteLD");
+    TRACER_AUTO;
+   	
     //push to the cleanupstack
     CleanupStack::PushL( this );    
   	
@@ -101,9 +105,9 @@
 	    {
 	    iObserver->CommandFinishedL(*this);
 	    }
-	// CHAT_DP_FUNC_ENTER("CVIMPSTSettingsCmd:: CommandFinished");	
+		
 	CleanupStack::PopAndDestroy();	
-	// CHAT_DP_FUNC_DONE("CVIMPSTSettingsCmd::ExecuteLD");	
+		
     }
 
 
@@ -143,7 +147,7 @@
 //
 void CVIMPSTCmdCCA::LaunchCcaL()
 	{   
-
+	TRACER_AUTO;
 	if ( iParameter )
 		{
 		iParameter->Close();
--- a/uiservicetab/vimpstcmdprocess/src/cvimpstcmdchangeownavtar.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstcmdprocess/src/cvimpstcmdchangeownavtar.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -21,7 +21,8 @@
 
 #include "vimpstcmd.hrh"
 #include "mvimpstcmdobserver.h"
-#include "vimpstdebugprint.h" 
+
+#include "uiservicetabtracer.h"
 
 #include <e32def.h>
 #include "mvimpstengine.h"
@@ -78,8 +79,8 @@
 //
 void CVIMPSTCmdChangeOwnAvtar::ExecuteLD()
     {
-    CHAT_DP_FUNC_ENTER("CVIMPSTCmdChangeOwnAvtar::ExecuteLD");
-    //push to the cleanupstack
+    TRACER_AUTO;
+     //push to the cleanupstack
     CleanupStack::PushL( this );   
 	
 	//Get Presence SubService  			
@@ -92,15 +93,15 @@
         presence.PublishOwnPresenceL(iData.iStatus, iData.iStatusText, iData.iFileName , iData.iMimeType, ETrue );
         }      
   
-    CHAT_DP_FUNC_ENTER("CVIMPSTCmdChangeOwnAvtar:: CommandFinished");
+    
 
     if(iObserver)
 	    {
 	    iObserver->CommandFinishedL(*this);
 	    }
-	CHAT_DP_FUNC_ENTER("CVIMPSTCmdChangeOwnAvtar:: CommandFinished");	
+		
 	CleanupStack::PopAndDestroy();	
-	CHAT_DP_FUNC_DONE("CVIMPSTCmdChangeOwnAvtar::ExecuteLD");	
+	
     }
 
 
--- a/uiservicetab/vimpstcmdprocess/src/cvimpstcmdchangeownmessage.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstcmdprocess/src/cvimpstcmdchangeownmessage.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -21,7 +21,8 @@
 
 #include "vimpstcmd.hrh"
 #include "mvimpstcmdobserver.h"
-#include "vimpstdebugprint.h" 
+
+#include "uiservicetabtracer.h"
 
 #include <e32def.h>
 #include "mvimpstengine.h"
@@ -61,6 +62,7 @@
         const TInt aCommandId,TStatusAndStatusText aStatus,
         MVIMPSTEngine& aEngine)
     {
+	 TRACER_AUTO;
     CVIMPSTCmdChangeOwnMessage* self = new (ELeave ) CVIMPSTCmdChangeOwnMessage( aCommandId ,aStatus, aEngine);
     self->ConstructL(); //use contsurctL if necessary
     return self;
@@ -80,7 +82,8 @@
 //
 void CVIMPSTCmdChangeOwnMessage::ExecuteLD()
     {
-    CHAT_DP_FUNC_ENTER("CVIMPSTCmdChangeOwnMessage::ExecuteLD");
+    
+    TRACER_AUTO;
     //push to the cleanupstack
     CleanupStack::PushL( this );   
 	
@@ -95,15 +98,15 @@
         presence.PublishOwnPresenceL(iStatus, iStatusText);
         }
    	
-    CHAT_DP_FUNC_ENTER("CVIMPSTCmdChangeOwnMessage:: CommandFinished");
+    
 
     if(iObserver)
 	    {
 	    iObserver->CommandFinishedL(*this);
 	    }
-	CHAT_DP_FUNC_ENTER("CVIMPSTCmdChangeOwnMessage:: CommandFinished");	
+		
 	CleanupStack::PopAndDestroy();	
-	CHAT_DP_FUNC_DONE("CVIMPSTCmdChangeOwnMessage::ExecuteLD");	
+	
     }
 
 
--- a/uiservicetab/vimpstcmdprocess/src/cvimpstcmdchangeownstatus.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstcmdprocess/src/cvimpstcmdchangeownstatus.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -22,7 +22,8 @@
 
 #include "vimpstcmd.hrh"
 #include "mvimpstcmdobserver.h"
-#include "vimpstdebugprint.h" 
+
+#include "uiservicetabtracer.h"
 
 #include <e32def.h>
 #include "mvimpstengine.h"
@@ -80,7 +81,8 @@
 //
 void CVIMPSTCmdChangeOwnStatus::ExecuteLD()
     {
-    CHAT_DP_FUNC_ENTER("CVIMPSTCmdChangeOwnStatus::ExecuteLD");
+   
+    TRACER_AUTO;
     //push to the cleanupstack
     CleanupStack::PushL( this );   
 	
@@ -111,9 +113,9 @@
         
 	
     
-	CHAT_DP_FUNC_ENTER("CVIMPSTCmdChangeOwnStatus:: CommandFinished");	
+		
 	CleanupStack::PopAndDestroy();	
-	CHAT_DP_FUNC_DONE("CVIMPSTCmdChangeOwnStatus::ExecuteLD");	
+
     }
 
 
--- a/uiservicetab/vimpstcmdprocess/src/cvimpstcmdcloseconversation.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstcmdprocess/src/cvimpstcmdcloseconversation.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -21,7 +21,8 @@
 
 #include "vimpstcmd.hrh"
 #include "mvimpstcmdobserver.h"
-#include "vimpstdebugprint.h" 
+
+#include "uiservicetabtracer.h"
 
 #include <e32def.h>
 #include "mvimpstengine.h"
@@ -60,6 +61,7 @@
                                                                 const TDesC& aContactId,
                                                                 MVIMPSTEngine& aEngine )
     {
+	TRACER_AUTO;
     CVIMPSTCmdCloseConversation* self = new (ELeave ) CVIMPSTCmdCloseConversation( aCommandId ,aContactId, aEngine);
     self->ConstructL(); //use contsurctL if necessary
     return self;
@@ -79,7 +81,8 @@
 //
 void CVIMPSTCmdCloseConversation::ExecuteLD()
     {
-    CHAT_DP_FUNC_ENTER("CVIMPSTCmdCloseConversation::ExecuteLD");
+   
+    TRACER_AUTO;
     //push to the cleanupstack
     CleanupStack::PushL( this );
     
@@ -99,9 +102,9 @@
         iObserver->CommandFinishedL(*this);
         }
     
-    CHAT_DP_FUNC_ENTER("CVIMPSTCmdCloseConversation:: CommandFinished");    
+     
     CleanupStack::PopAndDestroy();  
-    CHAT_DP_FUNC_DONE("CVIMPSTCmdCloseConversation::ExecuteLD");    
+    
     }
 
 
--- a/uiservicetab/vimpstcmdprocess/src/cvimpstcmddeletecontact.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstcmdprocess/src/cvimpstcmddeletecontact.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -21,7 +21,8 @@
 
 #include "vimpstcmd.hrh"
 #include "mvimpstcmdobserver.h"
-#include "vimpstdebugprint.h" 
+
+#include "uiservicetabtracer.h"
 
 #include <e32def.h>
 #include "mvimpstengine.h"
@@ -72,6 +73,7 @@
         const TInt aCommandId, MVPbkContactLink* aContactLink,
         MVIMPSTEngine& aEngine)
     {
+	TRACER_AUTO;
     CVIMPSTCmdDeleteContact* self = new (ELeave ) CVIMPSTCmdDeleteContact( aCommandId ,aContactLink, aEngine);
     self->ConstructL(); //use contsurctL if necessary
     return self;
@@ -91,7 +93,8 @@
 //
 void CVIMPSTCmdDeleteContact::ExecuteLD()
     {
-   	CHAT_DP_FUNC_ENTER("CVIMPSTCmdDeleteContact::ExecuteLD");
+  
+    TRACER_AUTO;
     //push to the cleanupstack
     CleanupStack::PushL( this );       
     iError = KErrNone;
@@ -140,15 +143,15 @@
        			}
 			} // contact
 		} // storage
-	CHAT_DP_FUNC_ENTER("CVIMPSTCmdDeleteContact:: CommandFinished");
+	
 
     if(iObserver)
 	    {
 	    iObserver->CommandFinishedL(*this);
 	    }
-	CHAT_DP_FUNC_ENTER("CVIMPSTCmdDeleteContact:: CommandFinished");	
+
 	CleanupStack::PopAndDestroy();	
-	CHAT_DP_FUNC_DONE("CVIMPSTCmdDeleteContact::ExecuteLD");	
+	
     }
 
 
--- a/uiservicetab/vimpstcmdprocess/src/cvimpstcmdeditcontact.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstcmdprocess/src/cvimpstcmdeditcontact.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -21,7 +21,8 @@
 
 #include "vimpstcmd.hrh"
 #include "mvimpstcmdobserver.h"
-#include "vimpstdebugprint.h" 
+
+#include "uiservicetabtracer.h"
 
 #include <e32def.h>
 #include "mvimpstengine.h"
@@ -63,6 +64,7 @@
         const TInt aCommandId,MVPbkContactLink* aContactLink,
         MVIMPSTEngine& aEngine)
     {
+	TRACER_AUTO;
     CVIMPSTCmdEditContact* self = new (ELeave ) CVIMPSTCmdEditContact( aCommandId ,aContactLink, aEngine);
     self->ConstructL(); //use contsurctL if necessary
     return self;
@@ -82,7 +84,8 @@
 //
 void CVIMPSTCmdEditContact::ExecuteLD()
     {
-   	CHAT_DP_FUNC_ENTER("CVIMPSTEnableServiceCmd::ExecuteLD");
+   	
+    TRACER_AUTO;
     //push to the cleanupstack
     CleanupStack::PushL( this );   
 /*	
@@ -108,7 +111,7 @@
 	CHAT_DP_FUNC_ENTER("CVIMPSTEnableServiceCmd:: CommandFinished");
 	*/	
 	CleanupStack::PopAndDestroy();	
-	CHAT_DP_FUNC_DONE("CVIMPSTEnableServiceCmd::ExecuteLD");	
+	
     }
 
 
--- a/uiservicetab/vimpstcmdprocess/src/cvimpstcmdfactory.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstcmdprocess/src/cvimpstcmdfactory.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -24,6 +24,8 @@
 #include "cvimpstcmdlogout.h"
 #include "cvimpstcmdcancellogin.h"
 
+#include "uiservicetabtracer.h"
+
 #include "mvimpstcmdobserver.h"
 #include "mvimpstengine.h"
 #include "tvimpstconsts.h"
@@ -63,7 +65,7 @@
 //
 void CVIMPSTCmdFactory::ConstructL()
     {
-    
+    TRACER_AUTO;
     TUint32 serviceId = iEngine.ServiceId();
     
     //Make sure we initialise the Storage view for this service
@@ -108,7 +110,7 @@
 //
 CVIMPSTCmdFactory::~CVIMPSTCmdFactory()
     {
-    
+    TRACER_AUTO;
     iEngine.UnIntializeStorage();
     iEngine.UnRegisterServiceSessionObserver(this);
     
@@ -128,7 +130,7 @@
 MVIMPSTCmd* CVIMPSTCmdFactory::CreateCommandForIdL(
         TImCommandId aCommandId,TAny* aData /*NULL*/) 
     {
-    
+    TRACER_AUTO;
     MVIMPSTCmd* commd = NULL;
 	
 	//Instantiate appropriate command    
@@ -255,6 +257,7 @@
 void CVIMPSTCmdFactory::HandleServiceEventL
 	    			( TVIMPSTEnums::TVIMPSTRegistrationState aState,TInt aServiceError )
 	{
+	TRACER_AUTO;
 	// need not to store update complete state
 	iArrayProcess->SetLoginStateL( aState );
 	for( TInt index( 0 ); index < iObservers.Count(); ++index )
--- a/uiservicetab/vimpstcmdprocess/src/cvimpstcmdfetchblockedlist.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstcmdprocess/src/cvimpstcmdfetchblockedlist.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -23,7 +23,8 @@
 #include "cvimpstcmdfetchblockedlist.h"
 #include "mvimpstcmdobserver.h"
 
-#include "vimpstdebugprint.h" 
+
+#include "uiservicetabtracer.h"
 
 #include <e32def.h>
 
@@ -78,22 +79,23 @@
 //
 void CVIMPSTCmdFetchBlockedContactList::ExecuteLD()
     {
-   	CHAT_DP_FUNC_ENTER("CVIMPSTCmdFetchBlockedContactList::ExecuteLD");
+   
+    TRACER_AUTO;
     //push to the cleanupstack
     CleanupStack::PushL( this );    
     
     //call logout
    	iEngine.FetchBlockedListL();
    	
-    CHAT_DP_FUNC_ENTER("CVIMPSTCmdFetchBlockedContactList:: CommandFinished");
+    
 
     if(iObserver)
 	    {
 	    iObserver->CommandFinishedL(*this);
 	    }
-	CHAT_DP_FUNC_ENTER("CVIMPSTCmdFetchBlockedContactList:: CommandFinished");	
+	
 	CleanupStack::PopAndDestroy();	
-	CHAT_DP_FUNC_DONE("CVIMPSTCmdFetchBlockedContactList::ExecuteLD");	
+		
     }
 
 
--- a/uiservicetab/vimpstcmdprocess/src/cvimpstcmdlogin.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstcmdprocess/src/cvimpstcmdlogin.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -21,7 +21,8 @@
 
 #include "vimpstcmd.hrh"
 #include "mvimpstcmdobserver.h"
-#include "vimpstdebugprint.h" 
+
+#include "uiservicetabtracer.h"
 
 #include <e32def.h>
 #include "mvimpstengine.h"
@@ -77,22 +78,23 @@
 //
 void CVIMPSTCmdLogin::ExecuteLD()
     {
-   	CHAT_DP_FUNC_ENTER("CVIMPSTEnableServiceCmd::ExecuteLD");
+   
+    TRACER_AUTO;
     //push to the cleanupstack
     CleanupStack::PushL( this );   
 	
 	//call login
    	iEngine.Login();
    	
-    CHAT_DP_FUNC_ENTER("CVIMPSTEnableServiceCmd:: CommandFinished");
+    
 
     if(iObserver)
 	    {
 	    iObserver->CommandFinishedL(*this);
 	    }
-	CHAT_DP_FUNC_ENTER("CVIMPSTEnableServiceCmd:: CommandFinished");	
+	
 	CleanupStack::PopAndDestroy();	
-	CHAT_DP_FUNC_DONE("CVIMPSTEnableServiceCmd::ExecuteLD");	
+	
     }
 
 
--- a/uiservicetab/vimpstcmdprocess/src/cvimpstcmdlogout.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstcmdprocess/src/cvimpstcmdlogout.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -22,7 +22,8 @@
 
 #include "vimpstcmd.hrh"
 #include "mvimpstcmdobserver.h"
-#include "vimpstdebugprint.h" 
+
+#include "uiservicetabtracer.h"
 
 #include <e32def.h>
 
@@ -80,22 +81,23 @@
 //
 void CVIMPSTCmdLogout::ExecuteLD()
     {
-   	CHAT_DP_FUNC_ENTER("CVIMPSTDisableServiceCmd::ExecuteLD");
+   
+    TRACER_AUTO;
     //push to the cleanupstack
     CleanupStack::PushL( this );    
     
     //call logout
    	iEngine.LogoutL();
    	
-    CHAT_DP_FUNC_ENTER("CVIMPSTDisableServiceCmd:: CommandFinished");
+    
 
     if(iObserver)
 	    {
 	    iObserver->CommandFinishedL(*this);
 	    }
-	CHAT_DP_FUNC_ENTER("CVIMPSTDisableServiceCmd:: CommandFinished");	
+	
 	CleanupStack::PopAndDestroy();	
-	CHAT_DP_FUNC_DONE("CVIMPSTDisableServiceCmd::ExecuteLD");	
+	
     }
 
 
--- a/uiservicetab/vimpstcmdprocess/src/cvimpstcmdprocessselectedcontact.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstcmdprocess/src/cvimpstcmdprocessselectedcontact.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -26,7 +26,8 @@
 
 #include "vimpstcmd.hrh"
 #include "mvimpstcmdobserver.h"
-#include "vimpstdebugprint.h"
+
+#include "uiservicetabtracer.h"
 
 #include <e32def.h>
 #include <MVPbkContactLinkArray.h>
@@ -91,7 +92,8 @@
 //
 void CVIMPSTCmdProcessSelectedContact::ExecuteLD()
     {
-    CHAT_DP_FUNC_ENTER("CVIMPSTCmdProcessSelectedContact::ExecuteLD");
+    
+    TRACER_AUTO;
     //push to the cleanupstack
     CleanupStack::PushL( this );
     MVIMPSTStorageServiceView* storage = CVIMPSTStorageManagerFactory::ContactListInterfaceL( iEngine.ServiceId() ) ;
@@ -182,9 +184,9 @@
         {
         iObserver->CommandFinishedL(*this);
         }
-    CHAT_DP_FUNC_ENTER("CVIMPSTCmdProcessSelectedContact:: CommandFinished");    
+     
     CleanupStack::PopAndDestroy();  
-    CHAT_DP_FUNC_DONE("CVIMPSTCmdProcessSelectedContact::ExecuteLD");    
+   
     }
 
 
@@ -227,6 +229,7 @@
 // --------------------------------------------------------------------------
 TBool CVIMPSTCmdProcessSelectedContact::IsContactBlocked(const TDesC& aUserId)
 	{
+	TRACER_AUTO;
    	MVIMPSTEngineSubService* subService =    	   
    	   					(iEngine.SubService(TVIMPSTEnums::EPresence));
     if(subService)
--- a/uiservicetab/vimpstcmdprocess/src/cvimpstcmdsearch.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstcmdprocess/src/cvimpstcmdsearch.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -21,7 +21,8 @@
 
 #include "vimpstcmd.hrh"
 #include "mvimpstcmdobserver.h"
-#include "vimpstdebugprint.h" 
+
+#include "uiservicetabtracer.h"
 
 #include <e32def.h>
 #include "mvimpstengine.h"
@@ -81,7 +82,8 @@
 //
 void CVIMPSTCmdSearch::ExecuteLD()
     {
-    CHAT_DP_FUNC_ENTER("CVIMPSTCmdSearch::ExecuteLD");
+   
+    TRACER_AUTO;
     //push to the cleanupstack
     CleanupStack::PushL( this );   
 	
@@ -96,15 +98,15 @@
 	   	iError = searchMgr.SearchContactsL( iKeyDataArray );   	
 		}	  	
    	
-    CHAT_DP_FUNC_ENTER("CVIMPSTCmdSearch:: CommandFinished");
+   
 
     if(iObserver)
 	    {
 	    iObserver->CommandFinishedL(*this);
 	    }
-	CHAT_DP_FUNC_ENTER("CVIMPSTCmdSearch:: CommandFinished");	
+	
 	CleanupStack::PopAndDestroy();	
-	CHAT_DP_FUNC_DONE("CVIMPSTCmdSearch::ExecuteLD");	
+	
     }
 
 
--- a/uiservicetab/vimpstcmdprocess/src/cvimpstcmdunblockcontact.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstcmdprocess/src/cvimpstcmdunblockcontact.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -20,7 +20,8 @@
 
 #include "vimpstcmd.hrh"
 #include "mvimpstcmdobserver.h"
-#include "vimpstdebugprint.h" 
+
+#include "uiservicetabtracer.h"
 
 #include <e32def.h>
 #include "mvimpstengine.h"
@@ -79,7 +80,8 @@
 //
 void CVIMPSTCmdUnBlockContact::ExecuteLD()
     {
-    CHAT_DP_FUNC_ENTER("CVIMPSTCmdUnBlockContact::ExecuteLD");
+   
+    TRACER_AUTO;
     //push to the cleanupstack
     CleanupStack::PushL( this );       
     if(iContactId.Length())
@@ -94,24 +96,21 @@
             HBufC* userId = HBufC::NewLC(KPropertyMaxLength); //  2 onto cleanup stack
             TPtr userIdPtr = userId->Des();
             userIdPtr = iContactId;
-          
-            CHAT_DP( D_CHAT_LIT(" -> userId: %s" ), &userIdPtr);
+            TRACE("userId: %s", &userIdPtr);            
             iError = presence.RemoveFromBlockListL(*userId);
-            CHAT_DP( D_CHAT_LIT(" -> iError: %d" ), iError);
+            TRACE("iError: %d", iError);           
             CleanupStack::PopAndDestroy(userId);//2
           
             }
         }
-
-    CHAT_DP_FUNC_ENTER("CVIMPSTCmdUnBlockContact:: CommandFinished");
+   
 
     if(iObserver)
         {
         iObserver->CommandFinishedL(*this);
-        }
-    CHAT_DP_FUNC_ENTER("CVIMPSTCmdUnBlockContact:: CommandFinished"); 
+        }   
     CleanupStack::PopAndDestroy();  
-    CHAT_DP_FUNC_DONE("CVIMPSTCmdUnBlockContact::ExecuteLD"); 
+  
     }
 
 
--- a/uiservicetab/vimpstcmdprocess/src/cvimpstprocessArray.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstcmdprocess/src/cvimpstprocessArray.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -18,7 +18,8 @@
 
 // INCLUDE FILES
 #include <coemain.h>
-#include    "vimpstdebugprint.h" 
+
+#include "uiservicetabtracer.h"
 
 #include "cvimpstprocessarray.h"
 
@@ -44,7 +45,7 @@
 #include <VPbkEng.rsg>
 #include "mvimpstengineimsubservice.h"
 #include "mvimpstenginepresencesubservice.h"
-#include "vimpstdebugtrace.h"
+
 #include <apgtask.h> 
 #include "imcvuiparams.h"
 
@@ -66,7 +67,8 @@
 //
 CVIMPSTProcessArray::~CVIMPSTProcessArray()
     {
-    TRACE( T_LIT("CVIMPSTProcessArray::~CVIMPSTProcessArray Start") );
+   
+    TRACER_AUTO;
     if(iContactInterface)
         {
         iContactInterface->RemoveObserver( this );	
@@ -105,7 +107,7 @@
         presence.UnRegisterPresenceEventObserver(this);
         } 
 
-    TRACE( T_LIT("CVIMPSTProcessArray::~CVIMPSTProcessArray End") );
+    
     }
 
 // --------------------------------------------------------------------------
@@ -115,12 +117,11 @@
 CVIMPSTProcessArray* CVIMPSTProcessArray::NewL(
         MVIMPSTEngine& aEngine)
     {
-    TRACE( T_LIT("CVIMPSTProcessArray::NewL Start") );
+    TRACER_AUTO;
     CVIMPSTProcessArray* self = new(ELeave) CVIMPSTProcessArray(aEngine);
     CleanupStack::PushL(self);
     self->ConstructL();
-    CleanupStack::Pop(self);
-    TRACE( T_LIT("CVIMPSTProcessArray::NewL End") );
+    CleanupStack::Pop(self);   
     return self;
     
     }
@@ -131,7 +132,8 @@
 //
 void CVIMPSTProcessArray::ConstructL()
     {
-    TRACE( T_LIT("CVIMPSTProcessArray::ConstructL Start") );
+   
+    TRACER_AUTO;
     iContactInterface = CVIMPSTStorageManagerFactory::ContactListInterfaceL(iServiceId);
     if(iContactInterface)
         {        
@@ -172,7 +174,7 @@
         iPresenceSupported = ETrue;
         }
 	ResetArray();
-	TRACE( T_LIT("CVIMPSTProcessArray::ConstructL end") );
+	
     }
 // --------------------------------------------------------------------------
 // CVIMPSTProcessArray::HandleStorageChangeL
@@ -183,27 +185,27 @@
 				        						MVIMPSTStorageContact* aContact,
 				        						TInt aContactIndex )
     {
-    TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL Function Start") );
+   
+    TRACER_AUTO;
     // 0th index OwnItem + unknow contacts + add request
     aContactIndex = aContactIndex + 1 + iUnKnownContactArray.Count() + iAddRequestArray.Count();
     
     switch( aEventType )
         {
         case TVIMPSTEnums::EStorageContactReadComplete:
-            {
-            TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageContactReadComplete Start") );
+            {           
+            TRACE("EStorageContactReadComplete");
             if(iProcessObservers)
                 {
                 /* passing 0 so that the focus is on owndata item */
                 iProcessObservers->HandleAdditionL(TVIMPSTEnums::EOwnStatusItem, 0 ); // focus own item
-                }
-            TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageContactReadComplete End") );
+                }           
             break;
             }
         case TVIMPSTEnums::EStorageContactFetchComplete:
-            {
-            TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageContactFetchComplete Start") );
-            TRACE( T_LIT("HandleStorageChangeL EStorageContactFetchComplete iItemArray Count: %d"), iItemArray.Count() );
+            {            
+            TRACE("EStorageContactFetchComplete");
+            TRACE( " iItemArray Count: %d", iItemArray.Count() );
 
             if(iProcessObservers)
                 {
@@ -214,20 +216,20 @@
             ResetArray();
             iFetchCompleted = ETrue;
             GetAndCreateOpenChatListL();
-            TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageContactFetchComplete End") );
+            TRACE( "EStorageContactFetchComplete End" );
             break; 	
             }
         case TVIMPSTEnums::EStorageContactReading:
         case TVIMPSTEnums::EStorageContactFetching:
         case TVIMPSTEnums::EStorageContactSynchronizing:
             {
-            TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageContactFetching/EStorageContactFetching Start") );
+            TRACE( "EStorageContactFetching/EStorageContactFetching" );
             /*
              *	This event occurs whenever we have contacts added to contactlist. This happens in the following scenarios
              *	1. At the time of login, when we fetch contacts, contact-by-contact is added to the storage. so we get this event.
              * 	2. When we add a contact manually (either from phonebook, or manu adding etc.. ) we get this callback.
              */
-            TRACE( T_LIT("contactindex = %d"),aContactIndex );
+            TRACE( "contactindex = %d",aContactIndex );
             CVIMPSTProcessContactItem* contactItem = CVIMPSTProcessContactItem::NewL (*this, const_cast<TDesC&>(aContact->Name() ),
                     const_cast<TDesC&>(aContact->UserId() ),
                     aContact->ContactLink(),
@@ -241,15 +243,15 @@
              * appending the items to the array for display, once we get the entire list, its sorted anyway while insertion, and when presence occurs
              * the contacts are re-sorted. 
              */
-            TRACE( T_LIT("itemarraycount = %d"),iItemArray.Count() );
+            TRACE( "itemarraycount = %d",iItemArray.Count() );
             if (aContactIndex >= iItemArray.Count() )
-                {
-                TRACE( T_LIT("append contact item %d"), contactItem);
+                {                
+                TRACE( "append contact item %d", contactItem);
                 iItemArray.Append(contactItem);
                 }
             else
-                {
-                TRACE( T_LIT("Insert at index = %d"), aContactIndex);
+                {              
+                TRACE( "Insert at index = %d", aContactIndex);
                 iItemArray.Insert(contactItem, aContactIndex );
                 }               
             if(iProcessObservers)
@@ -261,12 +263,12 @@
                 {
                 iProcessObservers->HandleAvatarChangeL( aContact->UserId() );
                 }
-            TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageContactFetching/EStorageContactFetching End") );
+           
             break;
             }
         case TVIMPSTEnums::EStorageEventContactAddition:
-            {
-            TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageEventContactAddition Start") );
+            {            
+            TRACE("EStorageEventContactAddition");
 
             TBool removed = RemoveFromUnknonOrInvitationListL( aContact->UserId(), EFalse );
             if( removed )
@@ -279,7 +281,7 @@
              * 	2. When we add a contact manually (either from phonebook, or manu adding etc.. ) we get this callback.
                  */
             TPtrC userId = aContact->UserId();
-                TRACE( T_LIT("contactindex = %d"),aContactIndex );
+                TRACE( "contactindex = %d",aContactIndex );
                 CVIMPSTProcessContactItem* contactItem = CVIMPSTProcessContactItem::NewL ( *this, aContact->Name() ,
                                                                                             userId,
                                                                                             aContact->ContactLink(),
@@ -292,15 +294,15 @@
              * appending the items to the array for display, once we get the entire list, its sorted anyway while insertion, and when presence occurs
              * the contacts are re-sorted. 
              */
-            TRACE( T_LIT("itemarraycount = %d"),iItemArray.Count() );
+            TRACE( "itemarraycount = %d",iItemArray.Count() );
             if (aContactIndex >= iItemArray.Count() )
-                {
-                TRACE( T_LIT("append contact item = %d"), contactItem);
+                {                
+                TRACE( "append contact item = %d", contactItem);
                 iItemArray.Append(contactItem);
                 }                
             else
-                {
-                TRACE( T_LIT("Insert at index = %d"), aContactIndex);
+                {                
+                TRACE( "Insert at index = %d", aContactIndex);
                 iItemArray.Insert(contactItem, aContactIndex );
                 }                
              // check if  pending message exist
@@ -321,79 +323,75 @@
                 /* passing aContactIndex so that the focus is on owndata item */
                 iProcessObservers->HandleAdditionL(TVIMPSTEnums::EContactItem, aContactIndex );
                 }   
-            TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageEventContactAddition End") );
+           
             break;
             }
         case TVIMPSTEnums::EStorageEventContactDelete:
             {
-            TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageEventContactDelete Start") );
-            TRACE( T_LIT("contactindex = %d"),aContactIndex );
-            TRACE( T_LIT("itemarraycount = %d"),iItemArray.Count() );
+            TRACE( " EStorageEventContactDelete" );
+            TRACE( "contactindex = %d",aContactIndex );
+            TRACE( "itemarraycount = %d",iItemArray.Count() );
             if( aContactIndex < iItemArray.Count() )
                 {
-                MVIMPSTProcessArrayItem* deletedItem = iItemArray[ aContactIndex ]; 
-                TRACE( T_LIT("contact removed in item array of index = %d"),aContactIndex );
+                MVIMPSTProcessArrayItem* deletedItem = iItemArray[ aContactIndex ];               
+                TRACE( "contact removed in item array of index = %d",aContactIndex );
                 iItemArray.Remove (aContactIndex);
                 delete deletedItem;
                 iItemArray.Compress();
-                TRACE( T_LIT("contactindex = %d"),aContactIndex );
+                TRACE( "contactindex = %d",aContactIndex );
                 }
             if(iProcessObservers)
                 {
                 iProcessObservers->HandleDeletionL(TVIMPSTEnums::EContactItem, aContactIndex);
-                }
-            TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageEventContactDelete End") );
+                }            
             break;
             }
         case TVIMPSTEnums::EStorageAvatarChange:
-            {
-            TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageAvatarChange Start") );
+            {           
+            TRACE("EStorageAvatarChange");
             if(iProcessObservers  && aContact )
-                {
-                TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageAvatarChange inside if") );
-                TPtrC aUserId = aContact->UserId();
-                TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageAvatarChange aUserId = %S"), &aUserId );
+                {               
+                TRACE( "EStorageAvatarChange inside if" );
+                TPtrC aUserId = aContact->UserId();                
+                TRACE( "EStorageAvatarChange aUserId = %S", &aUserId );
                 iProcessObservers->HandleAvatarChangeL( aContact->UserId() );
-                }
-            TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageAvatarChange End") );
+                }           
             break;            
             }
         case TVIMPSTEnums::EStorageOwnPresenceChange:
             {
-            TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageAvatarChange Start") );
+            TRACE( "EStorageOwnPresenceChange" );
             if(iProcessObservers)
                 {
                 /* passing index as 0, so thta focus remains at the owndata item */
                 iProcessObservers->HandleAdditionL(TVIMPSTEnums::EOwnStatusItem, KErrNotFound );
-                }
-            TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageAvatarChange End") );
+                }           
             break;
             }
         case TVIMPSTEnums::EStorageMultiplePresenceChange:
-	        {
-	        TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageAvatarChange Start") );
+	        {	        
+	        TRACE("EStorageMultiplePresenceChange " );
 	        // mostly this will get called after just login and fetch time
 	        ResetArray();
             if(iProcessObservers )
                 {
                 iProcessObservers->HandleAdditionL(TVIMPSTEnums::EContactItem, KErrNotFound );
-                }
-            TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageAvatarChange End") );
+                }            
 	        break;	
 	        }
         case TVIMPSTEnums::EStoragePresenceChange:
-            {
-            TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStoragePresenceChange Start") );
+            {           
+            TRACE( " EStoragePresenceChange" );
             /* 
              *	After Sort we get the new index... So first we need to remove the contact from the old position, 
              *	and then re-insert it at the correct obtained position (newIndex in this case)
              */
-            TRACE( T_LIT("contactindex = %d"),aContactIndex );
-            TRACE( T_LIT("itemarraycount = %d"),iItemArray.Count() );
+            TRACE("contactindex = %d",aContactIndex );
+            TRACE( "itemarraycount = %d",iItemArray.Count() );
             if( aContactIndex < iItemArray.Count() )
                 {                
-                TInt newIndex = iContactListModel->IndexOfContact( aContact );
-                TRACE( T_LIT("new index = %d"),newIndex );
+                TInt newIndex = iContactListModel->IndexOfContact( aContact );               
+                TRACE( "new index = %d",newIndex );
                 CVIMPSTProcessContactItem* newItem = CVIMPSTProcessContactItem::NewL(*this, const_cast<TDesC&>(aContact->Name() ),
                         const_cast<TDesC&>(aContact->UserId() ),
                         aContact->ContactLink(),
@@ -419,7 +417,7 @@
                         isOldMsgPending = ETrue;
                         }
                    }
-                TRACE( T_LIT("contact removed in item array of index = %d"),aContactIndex );
+                TRACE( "contact removed in item array of index = %d",aContactIndex );
                 iItemArray.Remove(aContactIndex );
                 delete oldItem;
                 iItemArray.Compress();
@@ -439,13 +437,13 @@
                 // Add it in the new index
                 newIndex = newIndex + 1 + iUnKnownContactArray.Count()+ iAddRequestArray.Count();
                 if (newIndex >= iItemArray.Count())
-                    {
-                    TRACE( T_LIT("append contact item = %d"), newIndex);
+                    {                   
+                    TRACE( "append contact item = %d", newIndex);
                     iItemArray.Append (newItem);
                     }
                 else
-                    {
-                    TRACE( T_LIT("Insert at index = %d"), newItem);
+                    {                    
+                    TRACE( "Insert at index = %d", newItem);
                     iItemArray.Insert (newItem, newIndex);
                     }   
                 }
@@ -453,13 +451,13 @@
                 {
                 iProcessObservers->HandleAdditionL(TVIMPSTEnums::EContactItem, KErrNotFound );
                 }
-            TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStoragePresenceChange End") );
+            
             break;
             }
         case TVIMPSTEnums::EStorageEventOwnUserChanged:
             {
-            TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageEventOwnUserChanged Start") );
-            TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL start Event = %d"),aEventType );
+            TRACE( "EStorageEventOwnUserChanged " );
+            TRACE( " start Event = %d",aEventType );
             ResetArray();
             if(iProcessObservers )
                 {
@@ -470,28 +468,28 @@
                     iProcessObservers->HandleAvatarChangeL( aContact->UserId() );
                     }
                 }
-            TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageEventOwnUserChanged End") );
+            
 
             break;
             }
         case TVIMPSTEnums::EStorageAllContactRemoved:
-            {
-            TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageAllContactRemoved Start") );
-            TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageAllContactRemoved count = %d"), iItemArray.Count() );
+            {           
+            TRACE("EStorageAllContactRemoved");
+            TRACE( "EStorageAllContactRemoved count = %d", iItemArray.Count() );
             ResetArray();
             if(iProcessObservers )
                 {
                 iProcessObservers->HandleDeletionL(TVIMPSTEnums::EOwnStatusItem, 0 ); // focus own item
                 }
-            TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageAllContactRemoved End") );
+          
             break;
             }
         case TVIMPSTEnums::EStorageEventContactChange: 
 	        {
-	        TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageEventContactChange Start") );
+	        TRACE("EStorageEventContactChange");	        
 	        // display name is changed ,might be contact is re-arranged
-            TRACE( T_LIT("contactindex = %d"),aContactIndex );
-            TRACE( T_LIT("itemarraycount = %d"),iItemArray.Count() );
+            TRACE( "contactindex = %d",aContactIndex );
+            TRACE( "itemarraycount = %d",iItemArray.Count() );
             if( aContactIndex < iItemArray.Count() )
                 {
                 if ( aContact )
@@ -505,37 +503,37 @@
                     
                     MVIMPSTProcessArrayItem* oldItem = iItemArray[ aContactIndex ];
                     newItem->SetAvatarIndex(aContact->AvatarIndex()); // copy the avatar index too.
-                    TRACE( T_LIT("contact removed in item array of index = %d"),aContactIndex );
+                TRACE("contact removed in item array of index = %d",aContactIndex );
                     // set the conversation open flag from old contact, as only the display name would have changed.
                     newItem->SetConversationOpen(oldItem->IsConversationOpen());
                     newItem->SetMsgPending( oldItem->IsMsgPending() );
                     iItemArray.Remove(aContactIndex );
                     delete oldItem;
                     iItemArray.Compress();
-                    TRACE( T_LIT("Insert at index = %d"), aContactIndex);
+                TRACE( "Insert at index = %d", aContactIndex);
                     TInt newIndex = iContactListModel->IndexOfContact( aContact );
                      // Add it in the new index
                     newIndex = newIndex + 1 + iUnKnownContactArray.Count() + iAddRequestArray.Count();
                     if (newIndex >= iItemArray.Count())
                         {
-                        TRACE( T_LIT("append contact item = %d"), newIndex);
+                    TRACE("append contact item = %d", newIndex);
                         iItemArray.Append (newItem);
                         }
                     else
                         {
-                        TRACE( T_LIT("Insert at index = %d"), newItem);
+                    TRACE( "Insert at index = %d", newItem);
                         iItemArray.Insert(newItem, newIndex);
                         } 
                     // inform the cv about the display name changes
                     if(aContact && aContact->UserId().Length() && newItem->IsConversationOpen())
                         {
-                        TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageEventContactChange "));
+                    TRACE("EStorageEventContactChange ");
                         TApaTaskList taskList( CCoeEnv::Static()->WsSession() );
                         TApaTask task( taskList.FindApp( KConversationViewAppUid ) );
                     
                         if ( task.Exists() )
                             {
-                            TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageEventContactChange:task exists"));
+                        TRACE("EStorageEventContactChange - task exists");                       
                             // packing of data ,passed to conversation view
                             TPckgBuf< TIMCVUiParams > params;
                             params().iBuddyId = aContact->UserId();
@@ -552,15 +550,14 @@
             if(iProcessObservers )
                 {
                 iProcessObservers->HandleAdditionL(TVIMPSTEnums::EContactItem, aContactIndex );
-                }
-            TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageEventContactChange End") );
+                }           
 	        break;	
 	        }          
         case TVIMPSTEnums::EStorageEventUserIdPostChange:
             {
-            TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageEventUserIdPostChange Start") );
-            TRACE( T_LIT("contactindex = %d"),aContactIndex );
-            TRACE( T_LIT("itemarraycount = %d"),iItemArray.Count() );
+            TRACE( "EStorageEventUserIdPostChange" );
+            TRACE( "contactindex = %d",aContactIndex );
+            TRACE( "itemarraycount = %d",iItemArray.Count() );
             if( aContactIndex < iItemArray.Count() )
                 {
                 CVIMPSTProcessContactItem* newItem = CVIMPSTProcessContactItem::NewL(*this, const_cast<TDesC&>(aContact->Name() ),
@@ -572,27 +569,27 @@
                 
                 MVIMPSTProcessArrayItem* oldItem = iItemArray[ aContactIndex ];
                 newItem->SetAvatarIndex(aContact->AvatarIndex()); // copy the avatar index too.
-                TRACE( T_LIT("contact removed in item array of index = %d"),aContactIndex );
+                TRACE( "contact removed in item array of index = %d",aContactIndex );
                 iItemArray.Remove(aContactIndex );
                 delete oldItem;
                 iItemArray.Compress();
-                TRACE( T_LIT("Insert at index = %d"), aContactIndex);
+                TRACE( "Insert at index = %d", aContactIndex);
                 iItemArray.InsertL (newItem, aContactIndex);
                 }
             if(iProcessObservers )
                 {
                 iProcessObservers->HandleAdditionL(TVIMPSTEnums::EContactItem, aContactIndex );
                 }
-            TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageEventUserIdPostChange End") );
+            TRACE( "EStorageEventUserIdPostChange" );
             break;
             }
         default:
             {
-            TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL Event default") );
+            TRACE("default");          
             break;
             }
         }
-    TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL Function End") );
+    
     }
 
 // --------------------------------------------------------------------------
@@ -783,6 +780,7 @@
 
 void CVIMPSTProcessArray::FillItemL()
     {
+    TRACER_AUTO;
     TInt count = 0;
     if(iContactListModel)
         {
@@ -848,6 +846,7 @@
 // fill the owndata at the begining of array.....
 TBool CVIMPSTProcessArray::FillOwnDataL()
     {
+    TRACER_AUTO;
     TBool ownDataAdded = EFalse;
     TPtr dataPtr = iData->Des();    
     // Check whether the user has logged in before, if has
@@ -1016,6 +1015,7 @@
 
 void CVIMPSTProcessArray::SetLoginStateL(TVIMPSTEnums::TVIMPSTRegistrationState aLoginState)
     {
+    TRACER_AUTO;
     iLoginState = aLoginState;
     if(aLoginState != TVIMPSTEnums::ESVCERegistered )
         {
@@ -1026,6 +1026,14 @@
         iUnKnownContactArray.Reset();
         iAddRequestArray.ResetAndDestroy();// delete all items
         iAddRequestArray.Reset();
+        // reset the status of all the contacts.
+        // no need to check the item type here. by the time its here all the other 
+        // type except contact item are removed.
+        TInt count = iItemArray.Count();
+        for(TInt i = 0; i < count ; i++)
+            {
+             iItemArray[i]->DoFormatStringL();
+            }
         }
     FillOwnDataL(); // this will change the own item based on connection status
     }
@@ -1044,6 +1052,7 @@
 
 TVIMPSTEnums::TOnlineStatus CVIMPSTProcessArray::GetOnlineStatusL(TInt aIndex)
     {
+    TRACER_AUTO;
     TVIMPSTEnums::TItem itemtype = GetType( aIndex );
     TVIMPSTEnums::TOnlineStatus status = TVIMPSTEnums::EUnknown;
     switch(itemtype)
@@ -1076,6 +1085,7 @@
 // 
 const TDesC&  CVIMPSTProcessArray::StatusTextL(TInt aIndex ) 
     {
+    TRACER_AUTO;
     TVIMPSTEnums::TItem itemtype = GetType( aIndex );
     switch(itemtype)
         {
@@ -1105,6 +1115,7 @@
 //
 TBool CVIMPSTProcessArray::RemoveFromUnknonOrInvitationListL( const TDesC& aAddedUserId ,TBool aBlocked )
     {
+    TRACER_AUTO;
     TBool found = RemoveFromUnknonListL( aAddedUserId );
     if( !found )
         {
@@ -1131,7 +1142,8 @@
 //
 TBool CVIMPSTProcessArray::RemoveFromUnknonListL( const TDesC& aAddedUserId )
     {
-    TRACE( T_LIT("CVIMPSTProcessArray::RemoveFromUnknonListL start ") );
+   
+    TRACER_AUTO;
     TPtrC addedUserId = VIMPSTUtils::DisplayId( aAddedUserId );
     TBool found = EFalse;
     TInt count = iUnKnownContactArray.Count();
@@ -1152,7 +1164,7 @@
                 }
             break;
             }
-        TRACE( T_LIT("CVIMPSTProcessArray::RemoveFromUnknonListL  for ends") );
+       
         }
     if( found )
         {
@@ -1169,7 +1181,7 @@
             iProcessObservers->HandleDeletionL(TVIMPSTEnums::EUnknonContactItem, KErrNotFound );
             }
         }
-    TRACE( T_LIT("CVIMPSTProcessArray::RemoveFromUnknonListL end ") );
+  
     return found;
     }
 //-----------------------------------------------------------
@@ -1178,6 +1190,7 @@
 //
 TBool CVIMPSTProcessArray::RemoveFromInvitationListL( const TDesC& aAddedUserId )
     {
+    TRACER_AUTO;
     TPtrC addedUserId = VIMPSTUtils::DisplayId( aAddedUserId );
     TBool found = EFalse;
     TInt index = KErrNotFound;
@@ -1247,6 +1260,7 @@
 // -----------------------------------------------------------------------------
 void CVIMPSTProcessArray::GetAndCreateOpenChatListL() 
     {
+    TRACER_AUTO;
     //Get IM SubService     
     MVIMPSTEngineSubService* subService =         
                 (iEngine.SubService(TVIMPSTEnums::EIM));
@@ -1315,6 +1329,7 @@
 void CVIMPSTProcessArray::HandleChatMessageEventL( TVIMPSTEnums::TIMEventType aEventType ,
                                                     const TDesC& aSender )
     {
+    TRACER_AUTO;
     if( !iFetchCompleted )
         {
         // contact matching will not be correct until fetching completed
@@ -1411,6 +1426,7 @@
 void  CVIMPSTProcessArray::HandleAddRequestEventL(TVIMPSTEnums::TOperationType aType, const TDesC& aRequesterId,
                                                     const TDesC& aRequestorDisplayName )
     {
+    TRACER_AUTO;
   	//add new add request item at top of list(i.e at index 1, as 0 is own id).
     //when request is entertained remove item from list.
     switch( aType )
@@ -1473,6 +1489,7 @@
 // 
 void CVIMPSTProcessArray::DoHandleUnKnownContactMessageL( const TDesC& aSenderId ,TBool aIsMsgPending )
     {
+    TRACER_AUTO;
     TBool contactExist = EFalse ;
     TInt count = iUnKnownContactArray.Count();
     CVIMPSTProcessUnknownContactItem* unknownItem = NULL;
--- a/uiservicetab/vimpstcmdprocess/src/cvimstcmdfriendrequest.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstcmdprocess/src/cvimstcmdfriendrequest.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -21,7 +21,8 @@
 
 #include "vimpstcmd.hrh"
 #include "mvimpstcmdobserver.h"
-#include "vimpstdebugprint.h" 
+
+#include "uiservicetabtracer.h"
 
 #include <e32def.h>
 #include "mvimpstengine.h"
@@ -79,7 +80,8 @@
 //
 void CVIMPSTCmdFriendRequest::ExecuteLD()
     {
-    CHAT_DP_FUNC_ENTER("CVIMPSTCmdFriendRequest::ExecuteLD");
+   
+    TRACER_AUTO;
     //push to the cleanupstack
     CleanupStack::PushL( this );     
     
@@ -94,15 +96,15 @@
         presence.SendPresenceGrantPresentityL(iContactId, ( iCommandId == EFriendAccpeted  ));
         }
     
-    CHAT_DP_FUNC_ENTER("CVIMPSTCmdFriendRequest:: CommandFinished");
+    
 
     if(iObserver)
         {
         iObserver->CommandFinishedL(*this);
         }
-    CHAT_DP_FUNC_ENTER("CVIMPSTCmdFriendRequest:: CommandFinished");    
+      
     CleanupStack::PopAndDestroy();  
-    CHAT_DP_FUNC_DONE("CVIMPSTCmdFriendRequest::ExecuteLD");    
+    
     }
 
 
--- a/uiservicetab/vimpstdetailsviewplugin/src/cvimpstdetailscontacthandler.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstdetailsviewplugin/src/cvimpstdetailscontacthandler.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -50,7 +50,9 @@
 // system include
 #include <e32property.h>
 #include <s32mem.h>
-#include "vimpstdebugtrace.h"
+
+
+#include "uiservicetabtracer.h"
 #include "vimpstutils.h"
 
 // ======== LOCAL FUNCTIONS ========
@@ -68,6 +70,7 @@
 																 TUint aserviceId
 																 )
 	{
+	TRACER_AUTO;
 	CVIMPSTDetailsContactHandler* self =
 	    new(ELeave) CVIMPSTDetailsContactHandler( aObserver, aserviceId );
 	CleanupStack::PushL(self);
@@ -82,7 +85,8 @@
 //
 CVIMPSTDetailsContactHandler::~CVIMPSTDetailsContactHandler()
 	{
-	TRACED( T_LIT("CVIMPSTDetailsContactHandler:: ~CVIMPSTDetailsContactHandler() start") );
+
+	TRACER_AUTO;
 	Cancel();
 	if (iWait.IsStarted())
 	    {
@@ -94,19 +98,21 @@
 	delete iStoreContact;
 	if (iStoreList)
 		{
-		TRACED( T_LIT("CVIMPSTDetailsContactHandler:: ~CVIMPSTDetailsContactHandler() calling store close") );
+	
+	    TRACE("calling store close");
 		iStoreList->CloseAll(*this);
 		iStoreList = NULL;
 		}
-	TRACED( T_LIT("CVIMPSTDetailsContactHandler:: ~CVIMPSTDetailsContactHandler() iStoreList deleted") );
+	TRACE("iStoreList deleted");
 	delete iServiceStoreUri;
-	TRACED( T_LIT("CVIMPSTDetailsContactHandler:: ~CVIMPSTDetailsContactHandler() iServiceStoreUri deleted") );
+	TRACE("iServiceStoreUri deleted");
 	delete iContactManager;
-	TRACED( T_LIT("CVIMPSTDetailsContactHandler:: ~CVIMPSTDetailsContactHandler() iContactManager deleted") );
+	TRACE("iContactManager deleted");
 	delete iServiceName;
-	TRACED( T_LIT("CVIMPSTDetailsContactHandler:: ~CVIMPSTDetailsContactHandler() iServiceName deleted") );
+	TRACE("iServiceName deleted");
 	delete iIdConverter;
-	TRACED( T_LIT("CVIMPSTDetailsContactHandler:: ~CVIMPSTDetailsContactHandler() end") );
+
+	
 	}
 
 // ---------------------------------------------------------------------------
@@ -129,7 +135,8 @@
 //
 void CVIMPSTDetailsContactHandler::ConstructL( MCCAParameter& aParameter ,const TDesC& aServiceStoreUri,const TDesC& aServiceName )
 	{
-	TRACED( T_LIT("CVIMPSTDetailsContactHandler::ConstructL start") );
+
+	TRACER_AUTO;
 	CVPbkContactStoreUriArray* uriArray = CVPbkContactStoreUriArray::NewLC();
 	TUid launchUid = TUid::Null() ;	
 	iServiceStoreUri = aServiceStoreUri.AllocL();
@@ -155,7 +162,7 @@
             {
             TPtr serviceStoreNamePtr = iServiceStoreUri->Des(); 
             uriArray->AppendL( TVPbkContactStoreUriPtr( serviceStoreNamePtr ) );
-            TRACED( T_LIT("ServiceStoreUriL() - storename3: %S"), &serviceStoreNamePtr );
+	    TRACE("ServiceStoreUriL() - storename3: %S", &serviceStoreNamePtr);
             }
 		}
 
@@ -171,7 +178,7 @@
 	const TInt versionNumber = readStream.ReadUint8L();
 
 	TInt uriCount = readStream.ReadUint16L();
-	TRACED( T_LIT("ServiceStoreUriL() - uriCount = %d"),uriCount );
+	TRACE("ServiceStoreUriL() - uriCount = %d", uriCount);
 	// Read URIs
 	for ( TInt i = 0; i < uriCount; ++i )
 	    {
@@ -182,7 +189,7 @@
 	    if( uriPtr.Length() > 0 )
 	        {
 	        uriArray->AppendL( TVPbkContactStoreUriPtr( uriPtr ) );
-	        TRACED( T_LIT("ServiceStoreUriL() - storename4: %S"), &uriPtr );
+	        TRACE("ServiceStoreUriL() - storename4: %S", &uriPtr);
 	        }
 	    CleanupStack::PopAndDestroy( uriBuffer );
 	    }
@@ -206,7 +213,7 @@
         MVPbkContactStore* contactStore =  iStoreList->Find(TVPbkContactStoreUriPtr(contactdb));
         iIdConverter = CVPbkContactIdConverter::NewL(*contactStore);
         }
-    TRACED( T_LIT("CVIMPSTDetailsContactHandler::ConstructL end") );
+  
 	}
 
 
@@ -216,6 +223,7 @@
 //
 HBufC* CVIMPSTDetailsContactHandler::GetDisplayNameLC()
     {
+	TRACER_AUTO;
     HBufC* firstName = KNullDesC().AllocL();
     HBufC* lastName = KNullDesC().AllocL();
     HBufC* retValue = NULL;   
@@ -285,11 +293,12 @@
 void CVIMPSTDetailsContactHandler::SetLinks(
     		MVPbkContactLinkArray* aLinks, TBool aReadXspId )
 	{
-    TRACED( T_LIT("CVIMPSTDetailsContactHandler::SetLinks start") );
+   
+	TRACER_AUTO;
     delete iLinks;
 	iLinks = NULL; 
 	iLinks = aLinks;
-	TRACED( T_LIT("CVIMPSTDetailsContactHandler::SetLinks iLinks deleted ") );
+	TRACE("iLinks deleted");
 	iCurrentLink = NULL;
 	
 	iReadXspId = aReadXspId;	
@@ -297,11 +306,11 @@
     	{
         delete iRetrieveOperation;
         iRetrieveOperation = NULL;
-        TRACED( T_LIT("CVIMPSTDetailsContactHandler::SetLinks iRetrieveOperation deleted ") );
+        TRACE("iRetrieveOperation deleted");
     	}
-	TRACED( T_LIT("CVIMPSTDetailsContactHandler::SetLinks calling issue request") );
+	TRACE("calling issue request");
 	IssueRequest();
-	TRACED( T_LIT("CVIMPSTDetailsContactHandler::SetLinks end") );
+
 	}
 
 // ---------------------------------------------------------------------------
@@ -349,19 +358,19 @@
 //
 void CVIMPSTDetailsContactHandler::CancelOngoingRequest()
 	{
-	TRACED( T_LIT("CVIMPSTDetailsContactHandler:: CancelOngoingRequest() start ") );
+	TRACER_AUTO;
 	delete iRetrieveOperation;
 	iRetrieveOperation = NULL;
-	TRACED( T_LIT("CVIMPSTDetailsContactHandler:: CancelOngoingRequest() iRetrieveOperation deleted ") );
+	TRACE("iRetrieveOperation deleted");
 	delete iXSPUserId;
 	iXSPUserId = NULL;
-	TRACED( T_LIT("CVIMPSTDetailsContactHandler:: CancelOngoingRequest() iXSPUserId deleted ") );
+	TRACE("iXSPUserId deleted");
 	delete iStoreContact;
 	iStoreContact = NULL;
-	TRACED( T_LIT("CVIMPSTDetailsContactHandler:: CancelOngoingRequest() iStoreContact deleted ") );
+	TRACE("iStoreContact deleted");
 	delete iLinks;
 	iLinks = NULL;
-	TRACED( T_LIT("CVIMPSTDetailsContactHandler:: CancelOngoingRequest() end ") );
+
 	}
 // ---------------------------------------------------------------------------
 // CVIMPSTDetailsContactHandler::RunL
@@ -369,27 +378,28 @@
 //
 void CVIMPSTDetailsContactHandler::RunL()
     {
-    TRACED( T_LIT("CVIMPSTDetailsContactHandler:: RunL() start ") );
+   
+	TRACER_AUTO;
     TInt index = 0;
     if (iLinks && iCurrentLink )
         {
-        TRACED( T_LIT("CVIMPSTDetailsContactHandler:: RunL() next link ") );
+		TRACE("next link");
         index = iLinks->Find(*iCurrentLink) + 1;
         }
     if ( iLinks && index < iLinks->Count() )
         {
-        TRACED( T_LIT("CVIMPSTDetailsContactHandler:: RunL() calling retrive ") );
+		  TRACE("calling retrive"); 
         // will get called until the index become equal to count
         iCurrentLink = &iLinks->At(index);            
         TRAPD( err, iRetrieveOperation = iContactManager->RetrieveContactL(*iCurrentLink, *this) );       
-        TRACED( T_LIT("CVIMPSTDetailsContactHandler:: RunL() retrive called  err = %d"),err );
+        TRACE("retrive called  err = %d", err);
         }
     else
         {
-        TRACED( T_LIT("CVIMPSTDetailsContactHandler:: RunL() job finished ") );
+		TRACE("job finished");
         iCurrentLink = NULL;
         }
-    TRACED( T_LIT("CVIMPSTDetailsContactHandler:: RunL() end ") );
+  
     }
 
 // ---------------------------------------------------------------------------
@@ -418,7 +428,7 @@
     MVPbkContactOperationBase& /*aOperation*/,
     MVPbkStoreContact* aContact)
     {
-    TRACED( T_LIT("CVIMPSTDetailsContactHandler:: VPbkSingleContactOperationComplete start ") );
+	TRACER_AUTO; 
     TBool isIssueReguest = ETrue;
     
     delete iRetrieveOperation;
@@ -446,7 +456,7 @@
                     TPtrC scheme = MVPbkContactFieldUriData::Cast(fieldData).Scheme();
                     if(iServiceName->Compare(scheme) == 0)
                         {
-                        TRACED( T_LIT("CVIMPSTDetailsContactHandler:: EVPbkFieldStorageTypeUri called ") );
+						TRACE("EVPbkFieldStorageTypeUri called");
                         const MVPbkContactFieldUriData& uri = MVPbkContactFieldUriData::Cast(fieldData);
                         HBufC* user = NULL;
                         delete iXSPUserId;
@@ -465,7 +475,7 @@
                                 }
                             CleanupStack::PopAndDestroy();// user
                             }
-                        TRACED( T_LIT("CVIMPSTDetailsContactHandler:: EVPbkFieldStorageTypeUri end  ") );
+                        TRACE("EVPbkFieldStorageTypeUri end");
                         );
                         break;
                         }
@@ -474,7 +484,8 @@
             }
         if( iXSPUserId && iContactManager  )
             {
-            TRACED( T_LIT("CVIMPSTDetailsContactHandler:: search is called ") );
+       
+              TRACE("search is called");
             // call back api is not leaving function
             TRAP_IGNORE( iRetrieveOperation = iContactManager->FindL(*iXSPUserId, iContactManager->FieldTypes(),*this) );	
             isIssueReguest = EFalse;
@@ -487,7 +498,8 @@
         }	
     else if( iStoreContact  )
         {
-        TRACED( T_LIT("CVIMPSTDetailsContactHandler:: VPbkSingleContactOperationComplete iStoreContact Valid ") );
+     
+         TRACE("iStoreContact Valid");
         TBool validLink = ETrue;
         if( iStoreType == EStoreLocal && iCurrentLink )
             {
@@ -497,12 +509,14 @@
             }
         if( validLink )
             {
-            TRACED( T_LIT("CVIMPSTDetailsContactHandler::HandleContactReadyL ") );
+      
+			TRACE("HandleContactReadyL ");
             TRAP_IGNORE( iObserver.HandleContactReadyL( *iStoreContact ) ); 
             }
         else
             {
-            TRACED( T_LIT("CVIMPSTDetailsContactHandler:: VPbkSingleContactOperationComplete No data") );
+        
+			TRACE("No data ");
             TRAP_IGNORE( iObserver.HandleContactUnavailableL() ); 
             }
         }
@@ -510,7 +524,7 @@
         {
         IssueRequest();
         }
-    TRACED( T_LIT("CVIMPSTDetailsContactHandler:: VPbkSingleContactOperationComplete end ") );
+  
     }
 
 // ---------------------------------------------------------------------------
@@ -521,7 +535,8 @@
     MVPbkContactOperationBase& /*aOperation*/,
     TInt /*aError*/)
 	{
-	TRACED( T_LIT("CVIMPSTDetailsContactHandler:: VPbkSingleContactOperationFailed satrt ") );
+
+	TRACER_AUTO;
 	delete iRetrieveOperation;
 	iRetrieveOperation = NULL;
 	
@@ -532,14 +547,16 @@
 		
 		if ( index >= iLinks->Count() )
 			{
-			TRACED( T_LIT("CVIMPSTDetailsContactHandler:: VPbkSingleContactOperationFailed calling HandleContactUnavailableL start") );
+	
+	    TRACE("calling HandleContactUnavailableL start ");
 			TRAP_IGNORE( iObserver.HandleContactUnavailableL() );
-			TRACED( T_LIT("CVIMPSTDetailsContactHandler:: VPbkSingleContactOperationFailed calling HandleContactUnavailableL end ") );
+	
+		TRACE("calling HandleContactUnavailableL end");
 			return;
 			}
 	  }
 	IssueRequest();
-	TRACED( T_LIT("CVIMPSTDetailsContactHandler:: VPbkSingleContactOperationFailed end ") );
+
 	}
 
 // ---------------------------------------------------------------------------
@@ -548,7 +565,8 @@
 //
 void CVIMPSTDetailsContactHandler::FindCompleteL( MVPbkContactLinkArray* aResults )
 	{
-	TRACED( T_LIT("CVIMPSTDetailsContactHandler:: FindCompleteL satrt ") );
+
+	TRACER_AUTO;
 	CVPbkContactLinkArray* linkArray = NULL;	
 	delete iRetrieveOperation;
 	iRetrieveOperation = NULL;	
@@ -562,20 +580,21 @@
 			const MVPbkContactStoreProperties& storeProperty = store.StoreProperties();
 			if( storeProperty.Uri().UriDes().Compare( *iServiceStoreUri  ) == 0 )
 				{
-				TRACED( T_LIT("CVIMPSTDetailsContactHandler:: FindCompleteL one result found ") );
+			
+				TRACE("one result found ");
 			    linkArray = CVPbkContactLinkArray::NewLC();
 			    MVPbkContactLink* clone = link.CloneLC();
 			    // take ownership clone
 			    linkArray->AppendL(clone);
-			    CleanupStack::Pop(2); // clone, linkArray
-			    TRACED( T_LIT("CVIMPSTDetailsContactHandler:: FindCompleteL come out of loop ") );
+			    CleanupStack::Pop(2); // clone, linkArray			
+			    TRACE("come out of loop ");
 			    break;
 				}
 			}		
 		}	
 	delete aResults;
 	aResults = NULL;
-	TRACED( T_LIT("CVIMPSTDetailsContactHandler:: FindCompleteL aResults deleted ") );
+	TRACE("aResults deleted ");
 	if( linkArray )
 		{
 		// take ownership linkArray
@@ -585,7 +604,7 @@
 		{
 		iObserver.HandleContactUnavailableL();
 		}
-	TRACED( T_LIT("CVIMPSTDetailsContactHandler:: FindCompleteL end ") );
+
 	}
 // ---------------------------------------------------------------------------
 // CVIMPSTDetailsContactHandler::
@@ -593,6 +612,7 @@
 //
 void CVIMPSTDetailsContactHandler::FindFailed( TInt /*aError*/ )
 	{
+	TRACER_AUTO;
 	TRAP_IGNORE( iObserver.HandleContactUnavailableL() ); // takes ownership of contacts.	
 	}
 
@@ -616,12 +636,13 @@
 //
 void CVIMPSTDetailsContactHandler::OpenComplete()
     {
-    TRACED( T_LIT("CVIMPSTDetailsContactHandler::OpenComplete start") );
+  
+	TRACER_AUTO;
     if (iWait.IsStarted())
         {
         iWait.AsyncStop();
         }
-    TRACED( T_LIT("CVIMPSTDetailsContactHandler::OpenComplete end") );
+  
     }
 
 // --------------------------------------------------------------------------
@@ -630,7 +651,8 @@
 //
 void CVIMPSTDetailsContactHandler::StoreReady(MVPbkContactStore& /*aContactStore*/ )
 	{
-	TRACED( T_LIT("CVIMPSTDetailsContactHandler::StoreReady") );
+
+	TRACER_AUTO;
 	}
 
 // --------------------------------------------------------------------------
@@ -641,12 +663,13 @@
 	MVPbkContactStore& /*aContactStore*/,
 	TInt /*aReason*/)
 	{
-	TRACED( T_LIT("CVIMPSTDetailsContactHandler::StoreUnavailable start") );
+
+	TRACER_AUTO;
 	if (iWait.IsStarted())
 		{
 		iWait.AsyncStop();
 		}
-	TRACED( T_LIT("CVIMPSTDetailsContactHandler::StoreUnavailable end") );
+
 	}
 
 // -------------------------------------------------------------------------
@@ -667,7 +690,8 @@
 
 TBool CVIMPSTDetailsContactHandler::CheckWhetherValidLocalLinkL(
         const MVPbkContactLink& aCurrentLink )
-    {   
+    { 
+	TRACER_AUTO;
     TBool validLocalLink = EFalse;
     User::LeaveIfError( iFs.Connect() );
     // Open existing or create new database.
@@ -692,6 +716,7 @@
 //
 TBool CVIMPSTDetailsContactHandler::DbExists()
     {
+	TRACER_AUTO;
     TBuf<512> dbName;    
     RFile temp;
     TBuf< KMaxPath > storagePath;
@@ -727,7 +752,8 @@
 // -----------------------------------------------------------
 //
 void CVIMPSTDetailsContactHandler::OpenDbL()
-    {    
+    {  
+	TRACER_AUTO;
     TBuf< KMaxPath > storagePath;
     TBuf<512> dbName;    
     dbName.Append( iServiceName->Des() );
@@ -760,7 +786,8 @@
 // ----------------------------------------------------------
 //
 TBool CVIMPSTDetailsContactHandler::SeekRowL( TDbColNo aColNo, TInt32& aIdentifier )
-    {    
+    {  
+	TRACER_AUTO;
     TBool ret = EFalse;
     iTable.BeginningL();
     while ( iTable.NextL() )
@@ -780,7 +807,8 @@
 // ----------------------------------------------------------
 //
 void CVIMPSTDetailsContactHandler::OpenTableL()
-    {    
+    {  
+	TRACER_AUTO;
     TInt err( iTable.Open( iDb, KContactTable ) );
     if ( err != KErrNone )
         {
--- a/uiservicetab/vimpstdetailsviewplugin/src/cvimpstdetailsheadercontrol.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstdetailsviewplugin/src/cvimpstdetailsheadercontrol.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -39,6 +39,7 @@
 #include <VPbkEng.rsg>
 #include <MVPbkStoreContact.h>
 
+#include "uiservicetabtracer.h"
 // constants declaration
 const TInt KLabelLineCount = 3;
 
@@ -77,6 +78,7 @@
 //
 void CVIMPSTDetailsHeaderControl::ConstructL()
 	{ 
+	TRACER_AUTO;
 	// Create the header image
 	iImage = new (ELeave) CEikImage();
 	iImage->SetPictureOwnedExternally(ETrue); //EHLeftVCenter
@@ -87,8 +89,7 @@
         CEikLabel* label = new(ELeave) CEikLabel;
         CleanupStack::PushL(label);
         label->SetTextL(KNullDesC());
-        label->SetAlignment(EHLeftVCenter);// EHCenterVCenter, EHLeftVCenter
-        label->CropText();
+        label->SetAlignment(EHLeftVCenter);// EHCenterVCenter, EHLeftVCenter        
         iLabels.AppendL(label);
         CleanupStack::Pop(label);
         }
@@ -204,6 +205,8 @@
     AknLayoutUtils::LayoutLabel(iLabels[1], labelsRect.Rect(), AknLayoutScalable_Apps::cl_header_name_pane_t2(2));
     
     AknLayoutUtils::LayoutLabel(iLabels[2], labelsRect.Rect(), AknLayoutScalable_Apps::cl_header_name_pane_t3(2));
+    
+    TRAP_IGNORE(LabelsSizeChangedL());
     }
 
 // ---------------------------------------------------------------------------
@@ -221,6 +224,7 @@
          for (TInt i=0; i < iLabels.Count(); i++)
             {
             iLabels[i]->SetTextL( iPresenceHandler.GetHeaderLabelDataL(i) );
+            iLabels[i]->CropText();
             iLabels[i]->OverrideColorL( EColorLabelText, color );
             iLabels[i]->DrawDeferred();
             }
@@ -333,6 +337,7 @@
 //
 void CVIMPSTDetailsHeaderControl::CreateHeaderPresentationL(MVPbkStoreContact& aContact )
 	{
+	TRACER_AUTO;
 	if( iHeaderField )
 		{
 		delete iHeaderField;
--- a/uiservicetab/vimpstdetailsviewplugin/src/cvimpstdetailspresencehandler.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstdetailsviewplugin/src/cvimpstdetailspresencehandler.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -29,6 +29,7 @@
 #include <ximpcontext.h>
 #include <StringLoader.h>
 #include <vimpstdetailsviewpluginrsc.rsg>
+#include "uiservicetabtracer.h"
 
 // ---------------------------------------------------------------------------
 // NewL, two-phase construction
@@ -64,6 +65,7 @@
 //
 void CVIMPSTDetailsPresenceHandler::ConstructL(const TDesC& aServiceName )
 	{
+	TRACER_AUTO;
  	iServiceName = aServiceName.AllocL();
  	
  		
@@ -99,6 +101,7 @@
 //  
 void CVIMPSTDetailsPresenceHandler::SubscribePresenceL(const TDesC& aUserId )
 	{
+	TRACER_AUTO;
 	if( iUserId )
 		{
 		delete iUserId;
@@ -161,6 +164,7 @@
 void CVIMPSTDetailsPresenceHandler::HandlePresenceNotificationL(TInt /*aErrorCode*/,
         MPresenceBuddyInfo2* aPresenceBuddyInfo)
     {
+	TRACER_AUTO;
     if ( aPresenceBuddyInfo )
         {
         CleanupDeletePushL( aPresenceBuddyInfo );  
@@ -249,6 +253,7 @@
 //  
 void CVIMPSTDetailsPresenceHandler::ProcessStatusMesssageL(const TDesC& aStatusMessage  )
 	{
+	TRACER_AUTO;
 	if( iStatusMessage )
 		{
 		delete iStatusMessage ;
@@ -282,6 +287,7 @@
 //
 const TDesC& CVIMPSTDetailsPresenceHandler::GetHeaderLabelDataL( TInt aIndex )
 	{
+	TRACER_AUTO;
 	if( aIndex == 0 && iServiceName ) // first label data
 		{
 		return *iServiceName;
@@ -299,6 +305,7 @@
 //
 const TDesC& CVIMPSTDetailsPresenceHandler::GetStatusMessageL()
 	{
+	TRACER_AUTO;
 	if( iStatusMessage && iStatusMessage->Length() )
 		{
 		return *iStatusMessage;	
@@ -321,6 +328,7 @@
 //
 const TDesC& CVIMPSTDetailsPresenceHandler::GetStatusTextL()
 	{
+	TRACER_AUTO;
 	TInt resourceId =  R_SERVDETAIL_STATUSTEXT_OFFLINE;
   
 	switch( iStatus )
@@ -406,6 +414,7 @@
 //
 void CVIMPSTDetailsPresenceHandler::GetKeyFieldsAndValuesL(MPresenceBuddyInfo2& aPresenceBuddyInfo)
     {
+	TRACER_AUTO;
     // At any point of time fro remote and blocked contact only one of the keys
     // KPendingRequestExtensionValue/KBlockedExtensionValue will be assigned, and not both the keys.
     TPtrC8 value = aPresenceBuddyInfo.GetAnyField( KExtensionKey() ) ;
--- a/uiservicetab/vimpstdetailsviewplugin/src/cvimpstdetailsviewbrandhandler.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstdetailsviewplugin/src/cvimpstdetailsviewbrandhandler.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -37,7 +37,9 @@
 #include 	<spproperty.h>
 
 #include    <cch.h>
-#include "vimpstdebugtrace.h"
+
+
+#include "uiservicetabtracer.h"
 
 _LIT8(KAppIdForBrand,"xsp");
 _LIT8(KDefaultBrandIdForBrand,"xsp");
@@ -92,7 +94,7 @@
 //  Symbian OS default constructor can leave.
 void CVIMPSTDetailsViewBrandHandler::ConstructL()
 	{
-	
+	TRACER_AUTO;
 	iBrandId = HBufC8::NewL( KVIMPSTUISPSMaxPropertyLength );
     TPtr8 brandIdPtr( iBrandId->Des() );    
     
@@ -365,6 +367,7 @@
 //
 void CVIMPSTDetailsViewBrandHandler::PropertyReadBrandL( TUint32 aServiceId ,TInt &aBrand, TServicePropertyName aPropertyName ) 
     {
+	TRACER_AUTO;
     CSPProperty* property = CSPProperty::NewLC();
     iSettings->FindPropertyL( aServiceId,
                                 aPropertyName,
@@ -415,6 +418,7 @@
 //
 void CVIMPSTDetailsViewBrandHandler::GetServiceNameL( TDes& aServiceName )
     {
+	TRACER_AUTO;
     CSPEntry* entry = CSPEntry::NewLC();
     TRAPD( err, iSettings->FindEntryL( iServiceId, *entry ) );
     if ( !err )
@@ -430,6 +434,7 @@
 //
 const TDesC& CVIMPSTDetailsViewBrandHandler::ServiceStoreUriL()
     {
+	TRACER_AUTO;
     if( !iServiceStoreUri )
         {       
         iServiceStoreUri = HBufC::NewL( KVIMPST_MAX_LENGTH );       
@@ -451,6 +456,7 @@
 //
 TBool CVIMPSTDetailsViewBrandHandler::ServiceSupportedL( )
     {
+	TRACER_AUTO;
     TBool ret = EFalse;
     CCch* cchClient = CCch::NewLC();
     if (cchClient)
--- a/uiservicetab/vimpstdetailsviewplugin/src/cvimpstdetailsviewfactory.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstdetailsviewplugin/src/cvimpstdetailsviewfactory.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -24,7 +24,8 @@
 
 #include "cvimpstdetailsviewpluginfactory.h"
 #include "cvimpstdetailsviewplugin.h"
-#include "vimpstdebugtrace.h"
+
+#include "uiservicetabtracer.h"
 // meco service uid
 #define KMECOIMPLEMENTATIONUID 0x20012423
 // ---------------------------------------------------------------------------
@@ -55,7 +56,8 @@
 //
 void CVIMPSTDetailsViewPluginFactory::ConstructL()
     {
-    TRACED( T_LIT("CVIMPSTDetailsViewPluginFactory::ConstructL() start") );
+	TRACER_AUTO;
+
     RProperty::Define(KMeCoPropertyUid, KMeCoXSPDetailsServiceIdKey, RProperty::EInt,
                              ECapabilityReadUserData ,ECapabilityWriteUserData); 
     
@@ -64,7 +66,7 @@
         {
         User::Leave(KErrArgument);
         }
-    TRACED( T_LIT("CVIMPSTDetailsViewPluginFactory::ConstructL() end") );
+
     }
 // ---------------------------------------------------------------------------
 // CVIMPSTDetailsViewPluginFactory::~CVIMPSTDetailsViewPluginFactory
@@ -83,17 +85,18 @@
 //
 TInt CVIMPSTDetailsViewPluginFactory::TabViewCount()
     {
+	TRACER_AUTO;
     // read the service id from RProperty
     RProperty::Get(KMeCoPropertyUid, KMeCoXSPDetailsServiceIdKey, iServiceId ); 
     TInt returnVal = 0;
     if( iServiceId <= 0 )
-        {
-        TRACED( T_LIT("CVIMPSTDetailsViewPluginFactory::TabViewCount() iservice <=0") );
+        {     
+        TRACE("iservice <=0");
         return iServiceIds.Count();
         }
     else
-        {
-        TRACED( T_LIT("CVIMPSTDetailsViewPluginFactory::TabViewCount() iservice > 0") );
+        {     
+        TRACE("iservice > 0"); 
         iServiceIds.Reset();
         iServiceIds.Append( iServiceId );
         returnVal = 1;
@@ -107,20 +110,21 @@
 //
 CCCAppViewPluginBase* CVIMPSTDetailsViewPluginFactory::CreateTabViewL( TInt aIndex )
     {
-    TRACED( T_LIT("CVIMPSTDetailsViewPluginFactory::CreateTabViewL() start") );
-    TRACED( T_LIT("CVIMPSTDetailsViewPluginFactory::CreateTabViewL() aIndex = %d"),aIndex );
+	TRACER_AUTO;
+  
+	TRACE("aIndex = %d", aIndex);
     CCCAppViewPluginBase* viewPluginBase = NULL;    
     if( aIndex < iServiceIds.Count() && aIndex >= 0 )
         {
-        TRACED( T_LIT("CVIMPSTDetailsViewPluginFactory::CreateTabViewL() creating view aIndex = %d"),aIndex );
+		TRACE("creating view aIndex = %d", aIndex);
         viewPluginBase = CVIMPSTDetailsViewPlugin::NewL( iServiceIds[aIndex]);
-        TRACED( T_LIT("CVIMPSTDetailsViewPluginFactory::CreateTabViewL() view created") );
+        TRACE("view created"); 
         }
     else
         {
         User::Leave(KErrArgument);
         }   
-    TRACED( T_LIT("CVIMPSTDetailsViewPluginFactory::CreateTabViewL() end ") );
+  
     return viewPluginBase;
     }
  
@@ -130,6 +134,7 @@
 // 
 TInt CVIMPSTDetailsViewPluginFactory::ReadServiceIdL()
     {
+	TRACER_AUTO;
     CSPSettings* settings = CSPSettings::NewLC();
     iServiceIds.Reset();
     ///////////////////////Get Service Id////////////////    
--- a/uiservicetab/vimpstdetailsviewplugin/src/cvimpstdetailsviewplugin.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstdetailsviewplugin/src/cvimpstdetailsviewplugin.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -51,7 +51,8 @@
 
 // Virtual Phonebook
 #include <CVPbkContactLinkArray.h>
-#include "vimpstdebugtrace.h"
+
+#include "uiservicetabtracer.h"
 // meco service uid
 #define KMECOIMPLEMENTATIONUID 0x20012423
 _LIT(KVIMPSTDetailsViewDllResFileName, "\\resource\\vimpstdetailsviewpluginrsc.rsc");
@@ -75,15 +76,15 @@
 //
 CVIMPSTDetailsViewPlugin::~CVIMPSTDetailsViewPlugin()
 	{
-	TRACED( T_LIT("CVIMPSTDetailsViewPlugin::~CVIMPSTDetailsViewPlugin start") );
+	TRACER_AUTO;
 	delete iMenuHandler;
-	TRACED( T_LIT("CVIMPSTDetailsViewPlugin::~CVIMPSTDetailsViewPlugin iMenuHandler deleted") );
+	TRACE("iMenuHandler deleted");
 	delete iBrandHandler;
-	TRACED( T_LIT("CVIMPSTDetailsViewPlugin::~CVIMPSTDetailsViewPlugin iBrandHandler deleted") );
-	delete iPresenceHandler;	
-	TRACED( T_LIT("CVIMPSTDetailsViewPlugin::~CVIMPSTDetailsViewPlugin iPresenceHandler deleted") );
+	TRACE("iBrandHandler deleted");
+	delete iPresenceHandler;
+	TRACE("iPresenceHandler deleted");
 	delete iContactHandler;
-	TRACED( T_LIT("CVIMPSTDetailsViewPlugin::~CVIMPSTDetailsViewPlugin end") );
+
 	}
 
 // ---------------------------------------------------------------------------
@@ -111,7 +112,7 @@
 			MCCAppPluginParameter& aPluginParameter)
 	{
 	// check parameter version
-	TRACED( T_LIT("CVIMPSTDetailsViewPlugin::PreparePluginViewL start") );
+	TRACER_AUTO;
 	if (aPluginParameter.Version() != 1)
 		{
 		User::Leave(KErrNotSupported);
@@ -137,9 +138,10 @@
 														  iBrandHandler->ServiceStoreUriL(),														  
 														  serviceNamePtr,
 														  iServiceId);
-	TRACED( T_LIT("CVIMPSTDetailsViewPlugin::PreparePluginViewL iContactHandler created") );
+
+	TRACE("iContactHandler created");
 	CleanupStack::PopAndDestroy(); // serviceName
-	TRACED( T_LIT("CVIMPSTDetailsViewPlugin::PreparePluginViewL end") );
+
 	}
 // ---------------------------------------------------------------------------
 // CVIMPSTDetailsViewPlugin::ImplementationUid
@@ -182,6 +184,7 @@
 		TCCAppIconType aIconType, CAknIcon& aIcon)
 
     {
+	TRACER_AUTO;
     if (ECCAppTabIcon == aIconType)
         {
         CFbsBitmap* bmp = NULL;
@@ -260,12 +263,12 @@
 void CVIMPSTDetailsViewPlugin::PrepareViewResourcesL()
 	{
 	// Ignore codescanner warning generated here : " Leaving function called before BaseConstructL "
-	TRACED( T_LIT("CVIMPSTDetailsViewPlugin::PrepareViewResourcesL start") );
+    TRACER_AUTO;
 	TFileName fileName(KVIMPSTDetailsViewDllResFileName);
     BaflUtils::NearestLanguageFile(iCoeEnv->FsSession(), fileName);
    	iResourceLoader.OpenL(fileName);
     BaseConstructL(R_VIMPSTDETAILSVIEW_MAINVIEW);
-    TRACED( T_LIT("CVIMPSTDetailsViewPlugin::PrepareViewResourcesL end") );
+ 
     }
 
 // ---------------------------------------------------------------------------
@@ -277,12 +280,12 @@
 	TUid aCustomMessageId,
 	const TDesC8& aCustomMessage)
 	{
-	TRACED( T_LIT("CVIMPSTDetailsViewPlugin::DoActivateL start") );
+	TRACER_AUTO;
 	CCCAppViewPluginAknView::DoActivateL(aPrevViewId, aCustomMessageId,
 	aCustomMessage);
-	TRACED( T_LIT("CVIMPSTDetailsViewPlugin::DoActivateL calling GetContactData") );
+	TRACE("calling GetContactData");
 	GetContactDataL();
-	TRACED( T_LIT("CVIMPSTDetailsViewPlugin::DoActivateL end") );
+
 	}
 
 // ---------------------------------------------------------------------------
@@ -291,23 +294,22 @@
 //
 void CVIMPSTDetailsViewPlugin::DoDeactivate()
 	{
-	TRACED( T_LIT("CVIMPSTDetailsViewPlugin::DoDeactivate satrt") );
+	TRACER_AUTO;
 	if( iContactHandler )
 		{
 		iContactHandler->CancelOngoingRequest();	
 		}
-
-	TRACED( T_LIT("CVIMPSTDetailsViewPlugin::DoDeactivate ongoing request canceled") );
+	TRACE("ongoing request canceled");
 	if (iContainer)
 		{
 		iFocusedListIndex = static_cast<CVIMPSTDetailsViewContainer*>
 							(iContainer)->ListBoxModel().FocusedFieldIndex();
 		}
-	TRACED( T_LIT("CVIMPSTDetailsViewPlugin::DoDeactivate calling base class Deactivate") );
+	TRACE("calling base class Deactivate");
 	CCCAppViewPluginAknView::DoDeactivate();
 	// not woned by this class
 	iContainer = NULL;
-    TRACED( T_LIT("CVIMPSTDetailsViewPlugin::DoDeactivate end") );
+
 	}
 
 // --------------------------------------------------------------------------
@@ -316,7 +318,8 @@
 //
 void CVIMPSTDetailsViewPlugin::GetContactDataL()
 	{
-	TRACED( T_LIT("CVIMPSTDetailsViewPlugin::GetContactDataL start") );
+
+	TRACER_AUTO;
 	if (iLaunchParameter && iContactHandler )
 		{
 		// todo: pass launchparameter to listbox model?
@@ -328,13 +331,13 @@
 	
 		CVPbkContactLinkArray* links = CVPbkContactLinkArray::NewLC( bufDes, iContactHandler->ContactStoresL() );
 		CleanupStack::Pop(links);
-		TRACED( T_LIT("CVIMPSTDetailsViewPlugin::GetContactDataL links created") );
+		TRACE("links created");
 		CleanupStack::PopAndDestroy(buf);
-		TRACED( T_LIT("CVIMPSTDetailsViewPlugin::GetContactDataL buffer destroyed") );    
+		TRACE("buffer destroyed");
 		TUid launchUid = iLaunchParameter->LaunchedViewUid();
 		if(  launchUid.iUid != (KVIMPSTDetailsViewPluginImplmentationUid+iServiceId) && iContactHandler->StoreType() == EStoreServer )
 			{
-			TRACED( T_LIT("CVIMPSTDetailsViewPlugin::GetContactDataL service store set link called from pbk") );
+				TRACE("service store set link called from pbk");
 			// launch from other than service tab
 			// ETrue, read xsp id from pbk store and search in service store and show 
 			// incase of xsp store , need to find the details from xsp store
@@ -342,7 +345,7 @@
 			}
 		else
 			{
-			TRACED( T_LIT("CVIMPSTDetailsViewPlugin::GetContactDataL set linkcalled from service tab/CV") );
+			TRACE("set linkcalled from service tab/CV");
 			iContactHandler->SetLinks( links , EFalse );
 			 //make sure this is set to null after view is changed
 			// cannot be set it to null in dodeactivate call. as ilaunchparameter is not
@@ -350,7 +353,7 @@
 			iLaunchParameter->SetLaunchedViewUid(TUid::Null()); 
 			}
 		}
-	TRACED( T_LIT("CVIMPSTDetailsViewPlugin::GetContactDataL end") );
+
 	}
 // ---------------------------------------------------------------------------
 // CVIMPSTDetailsViewPlugin::SetTitleL
@@ -358,6 +361,7 @@
 //
 void CVIMPSTDetailsViewPlugin::SetTitleL()
 	{
+	TRACER_AUTO;
 	HBufC* title = NULL;
 	
 	if( iContainer && iContactHandler )
@@ -399,6 +403,7 @@
 //
 void CVIMPSTDetailsViewPlugin::HandleContactReadyL( MVPbkStoreContact& aContact )
 	{
+	TRACER_AUTO;
 	if( iContainer )
 		{
 		// read the service name for servic eid - iServiceId
--- a/uiservicetab/vimpstdetailsviewplugin/src/cvimpstfieldproperty.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstdetailsviewplugin/src/cvimpstfieldproperty.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -30,6 +30,7 @@
 #include <MVPbkContactFieldDateTimeData.h>
 // System includes
 #include <barsread.h>
+#include "uiservicetabtracer.h"
 
 _LIT(KColon,":");
 // --------------------------------------------------------------------------
@@ -150,6 +151,7 @@
 //
 const TDesC& CVIMPSTFieldProperty::FieldDataL() 
     {
+	TRACER_AUTO;
     if( iField && !iFieldData )
         {
         const MVPbkContactFieldData& fieldData = iField->FieldData();
--- a/uiservicetab/vimpstdetailsviewplugin/src/cvimpstfieldpropertyarray.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstdetailsviewplugin/src/cvimpstfieldpropertyarray.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -28,6 +28,7 @@
 #include <MVPbkContactFieldUriData.h>
 // System includes
 #include <barsread.h>
+#include "uiservicetabtracer.h"
 _LIT(KColon,":");
 
 // ---------------------------------------------------------------------------
@@ -128,6 +129,7 @@
          TBool aPresenceSupported,
          TDesC& aServiceName, TStoreType aStoreType)
      {
+	 TRACER_AUTO;
      // aSupportedFieldTypeList is a list of the supported field type of the used store
      const TInt count = aReader.ReadInt16();
 
--- a/uiservicetab/vimpstengine/src/cvimpstblockedlistmanager.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstengine/src/cvimpstblockedlistmanager.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -16,7 +16,7 @@
 */
 // INCLUDE FILES
 #include "cvimpstblockedlistmanager.h"
-#include "vimpstdebugtrace.h"
+#include "uiservicetabtracer.h"
 
 
 // ================= MEMBER FUNCTIONS =======================
@@ -26,11 +26,10 @@
 // ---------------------------------------------------------
 CVIMPSTBlockedListManager* CVIMPSTBlockedListManager::NewL()
     {
-    TRACE( T_LIT("CVIMPSTBlockedListManager::NewL start"));
+	TRACER_AUTO;
     CVIMPSTBlockedListManager* self = 
     			CVIMPSTBlockedListManager::NewLC();
-    CleanupStack::Pop( self );
-   	TRACE( T_LIT("CVIMPSTBlockedListManager::NewL end"));
+    CleanupStack::Pop( self ); 
     return self;
     }
 
@@ -40,11 +39,10 @@
 // ---------------------------------------------------------
 CVIMPSTBlockedListManager* CVIMPSTBlockedListManager::NewLC()
 	{
-	TRACE( T_LIT("CVIMPSTBlockedListManager::NewLC start"));
+	TRACER_AUTO;
 	CVIMPSTBlockedListManager* self = new (ELeave) CVIMPSTBlockedListManager;
 	CleanupStack::PushL( self );
 	self->ConstructL();
-	TRACE( T_LIT("CVIMPSTBlockedListManager::NewLC end"));
 	return self;
 	}
     
@@ -53,8 +51,8 @@
 // ---------------------------------------------------------
 void CVIMPSTBlockedListManager::ConstructL()
 	{
-	TRACE( T_LIT("CVIMPSTBlockedListManager::ConstructL start"));
-    TRACE( T_LIT("CVIMPSTBlockedListManager::ConstructL end"));    	
+	TRACER_AUTO;
+	
     }
 	
 // ---------------------------------------------------------
@@ -88,6 +86,7 @@
 // ---------------------------------------------------------
 void CVIMPSTBlockedListManager::RemoveFromBlockListL(const TDesC& aContact)
 	{
+	TRACER_AUTO;
 	for(TInt i=0; i<iBlockedList.Count(); ++i)
 		{
 		if(0 == aContact.CompareC(iBlockedList[i]->Des()))
--- a/uiservicetab/vimpstengine/src/cvimpstengine.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstengine/src/cvimpstengine.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -49,7 +49,8 @@
 
 #include "mvimpststoragecontactlist.h"
 #include <cvimpstsettingsstore.h>
-#include "vimpstdebugtrace.h"
+
+#include "uiservicetabtracer.h"
 
 // Constants
 _LIT( KListNameAllBuddy ,"buddylist" );
@@ -63,15 +64,14 @@
 								TUint32 aServiceId,
 								CVIMPSTEngineServiceTableFetcher& aTableFetcher )
     {
-    TRACE( T_LIT("CVIMPSTEngine::NewL start") );
-    TRACE( T_LIT("NewL() ServiceId: %d"), aServiceId );
+	TRACER_AUTO; 
+	TRACE("ServiceId: %d", aServiceId);
     
     
     CVIMPSTEngine* self = CVIMPSTEngine::NewLC(	aServiceId,
     											aTableFetcher );
     CleanupStack::Pop( self );
-	
-    TRACE( T_LIT("CVIMPSTEngine::NewL end") );
+ 
     return self;
     }
 
@@ -84,17 +84,16 @@
 CVIMPSTEngine* CVIMPSTEngine::NewLC(
 								TUint32 aServiceId,
 								CVIMPSTEngineServiceTableFetcher& aTableFetcher )
-	{
-    TRACE( T_LIT("CVIMPSTEngine::NewLC start") );
-    TRACE( T_LIT("NewLC() ServiceId: %d"), aServiceId );
+	{  
+	TRACER_AUTO;
+    TRACE( "ServiceId: %d", aServiceId );
 	
     CVIMPSTEngine* self = new (ELeave) CVIMPSTEngine(
     												aServiceId, 
     												aTableFetcher );
     CleanupStack::PushL( self );
-    self->ConstructL( aServiceId );
-    
-    TRACE( T_LIT("CVIMPSTEngine::NewLC end") );
+    self->ConstructL( aServiceId );    
+  
     return self;
 	}
 
@@ -105,7 +104,7 @@
 
 CVIMPSTEngine::~CVIMPSTEngine()
 	{
-	TRACE( T_LIT("CVIMPSTEngine::~CVIMPSTEngine start") );
+	TRACER_AUTO;
 	
 	iObserverArray.Reset();
     iObserverArray.Close();
@@ -122,7 +121,7 @@
 	delete iCchHandler;
     iCchHandler = NULL;       
 
-    TRACE( T_LIT("CVIMPSTEngine::~CVIMPSTEngine end") );
+ 
  	}
 
 
@@ -133,8 +132,8 @@
 
 void CVIMPSTEngine::ConstructL( TUint32 aServiceId )
 	{
-	TRACE( T_LIT("CVIMPSTEngine::ConstructL  start") );
-    TRACE( T_LIT("ConstructL() - ServiceId: %d"), aServiceId );
+	TRACER_AUTO;
+    TRACE( "ServiceId: %d", aServiceId );
 
 	iServiceName = HBufC::NewL( KVIMPSTUISPSMaxPropertyLength );
 	
@@ -160,13 +159,13 @@
 	if ( KErrNotFound != ximpAdapterUid && requireXimp )
 	    {
         TRAPD( err, (iSessionCntxtObserver = CVIMPSTEngineSessionCntxtObserver::NewL(aServiceId)));
-        TRACE( T_LIT("ConstructL() -1st Creating session context observer: %d"), err );	
+        TRACE( "1st Creating session context observer: %d", err );	
         if (KErrNotFound == err)
             {
-						TRACE( T_LIT("Ximp impl not found. Calling Logout") );            	
+						TRACE( "Ximp impl not found. Calling Logout" );            	
             iUnInstall = ETrue;
             LogoutL();
-            TRACE( T_LIT("Logout Called on account of uninstall") );
+            TRACE( "Logout Called on account of uninstall" );
             return;
             }
 	    }
@@ -228,7 +227,6 @@
     iState = ParseGetServiceState();
     //if cch is already logged in, and the callback's servicestatuschanged() stopped
     RetriveContextIfCChEnabledL();
-    TRACE( T_LIT("CVIMPSTEngine::ConstructL  end") );
     }
 
 
@@ -251,7 +249,7 @@
 // ---------------------------------------------------------
 void CVIMPSTEngine::RetriveContextIfCChEnabledL()
 	{
-    TRACE( T_LIT("CVIMPSTEngine::RetriveContextIfCChEnabledL  start") );
+	TRACER_AUTO; 
     if ( (iSessionCntxtObserver) && 
          (TVIMPSTEnums::ESVCEUpdatingContacts == iState || TVIMPSTEnums::ESVCERegistered == iState ) 
    		 && ( TVIMPSTEnums::EVIMPSTBindNotDone == iSessionCntxtObserver->ContextBindStatus()  ) )
@@ -266,7 +264,7 @@
             }
         SetExtentionFeaturesSupportedL();
 		}
-	TRACE( T_LIT("CVIMPSTEngine::RetriveContextIfCChEnabledL end"));
+
 	}
 
 // ---------------------------------------------------------
@@ -275,18 +273,17 @@
 // ---------------------------------------------------------
 TInt CVIMPSTEngine::Login()
 	{
-    TRACE( T_LIT("CVIMPSTEngine::ConstructL  start") );
-    TRACE( T_LIT("Login() - ServiceId: %d"), iServiceId );
+	TRACER_AUTO; 
+    TRACE( "ServiceId: %d", iServiceId );
 	
 	TInt error = KErrNotFound;
 	if(iCchHandler)
 		{
-		TRACE( T_LIT("Login() - EnableService Called"));
+	TRACE( "EnableService Called");
 		error =  iCchHandler->EnableService(); 		
 		}
 	
-	TRACE( T_LIT("Login - error: %d"), error );
-	TRACE( T_LIT("CVIMPSTEngine::Login"));
+	TRACE( "error: %d", error );
 		
 	return error;
 	}
@@ -298,8 +295,8 @@
 // ---------------------------------------------------------
 void CVIMPSTEngine::LogoutL()
 	{
-	TRACE( T_LIT("CVIMPSTEngine::Logout"));
-	TRACE( T_LIT("Logout() - ServiceId: %d"), iServiceId );
+	TRACER_AUTO;
+	TRACE( "ServiceId: %d", iServiceId );
 	
 	if(iCchHandler)
 		{
@@ -321,13 +318,13 @@
       //to unbind to XIMP context. 
       if( iSessionCntxtObserver )
           {
-          TRACE( T_LIT("Logout() - ServerUnBindL Called"));
+          TRACE( "ServerUnBindL Called");
           iSessionCntxtObserver->ServerUnBindL(ETrue);    
           }		
-		TRACE( T_LIT("Logout() - DisableService Called"));
+		TRACE(" DisableService Called");
 		iCchHandler->DisableService();  
 		}	
-	TRACE( T_LIT("CVIMPSTEngine::Logout"));
+	
 	}
 
 
@@ -337,7 +334,8 @@
 // ---------------------------------------------------------
 TUint32 CVIMPSTEngine::ServiceId() const
 	{
-	TRACE( T_LIT("ServiceId() - ServiceId: %d"), iServiceId );
+	TRACER_AUTO;
+	TRACE( "ServiceId: %d", iServiceId );
 	return iServiceId;	
 	}
 
@@ -348,8 +346,9 @@
 // ---------------------------------------------------------
 const TDesC& CVIMPSTEngine::ServiceName() const
 	{
+	TRACER_AUTO;
 	TPtr serviceNamePtr = iServiceName->Des();
-	TRACE( T_LIT("ServiceName() - ServiceName: '%S'"), &serviceNamePtr );
+	TRACE( "ServiceName: '%S'", &serviceNamePtr );
 	return *iServiceName;	
 	}
 
@@ -359,7 +358,8 @@
 // ---------------------------------------------------------
 TVIMPSTEnums::TVIMPSTRegistrationState CVIMPSTEngine::ServiceState() const
 	{
-	TRACE( T_LIT("ServiceState() - ServiceState: %d"), iState  );
+	TRACER_AUTO;
+	TRACE( "ServiceState: %d", iState  );
 	return iState;
 	}
 
@@ -372,13 +372,12 @@
 				TInt &aBrandVersion, TDes8& aBrandId) const
 
 	{
-	TRACE( T_LIT("CVIMPSTEngine::GetBrandInfoL start"));
-	TRACE( T_LIT("GetBrandInfoL() - ServiceId: %d"), iServiceId );
+	TRACER_AUTO;	
+	TRACE("ServiceId: %d", iServiceId );
 	
 	iTableFetcher.GetBrandIdL(iServiceId, aBrandId);
 	aBrandLanguage = iTableFetcher.PropertyBrandLanguageL(iServiceId);
-	aBrandVersion = iTableFetcher.PropertyBrandVersionL(iServiceId);
-	TRACE( T_LIT("CVIMPSTEngine::GetBrandInfoL end"));
+	aBrandVersion = iTableFetcher.PropertyBrandVersionL(iServiceId);	
 	return KErrNone;
 	}
 	
@@ -389,10 +388,9 @@
 // ---------------------------------------------------------
 TBool CVIMPSTEngine::IsSubServiceSupportedL(TVIMPSTEnums::SubServiceType aType) const 
 	{
-	
-	TRACE( T_LIT("CVIMPSTEngine::IsSubServiceSupportedL start"));
-	TRACE( T_LIT ("IsSubServiceSupportedL() - ServiceId: %d"), iServiceId);
-	TRACE( T_LIT ("IsSubServiceSupportedL() - SubServiceType: %d"), aType);
+	TRACER_AUTO;	
+	TRACE("ServiceId: %d", iServiceId);
+	TRACE("SubServiceType: %d", aType);
 	
 	TBool support = EFalse;
 	
@@ -402,8 +400,7 @@
 		support = ETrue;
 		}
 	
-	TRACE( T_LIT("IsSubServiceSupportedL() - support: %d"), support );	
-	TRACE( T_LIT("CVIMPSTEngine::IsSubServiceSupportedL end"));
+	TRACE( "support: %d", support );		
 	return support;
 	
 	}
@@ -416,9 +413,10 @@
 TBool CVIMPSTEngine::IsSubServiceEnabled(TVIMPSTEnums::SubServiceType aType) const 
 	{
 	
-	TRACE( T_LIT("CVIMPSTEngine::IsSubServiceEnabled start"));
-    TRACE( T_LIT("IsSubServiceEnabled() - ServiceId: %d"), iServiceId );
-    TRACE( T_LIT("IsSubServiceEnabled() - SubServiceType: %d"), aType );
+
+	TRACER_AUTO;
+    TRACE( "ServiceId: %d", iServiceId );
+    TRACE( "SubServiceType: %d", aType );
 
 	MVIMPSTEngineSubService* subService = SubService(aType);
 	TBool enabled = EFalse;
@@ -430,8 +428,7 @@
 			enabled = ETrue;
 			}
 		}	
-	TRACE( T_LIT("IsSubServiceEnabled() - enabled: %d"), enabled );
-	TRACE( T_LIT("CVIMPSTEngine::IsSubServiceEnabled end") );
+	TRACE( "enabled: %d", enabled );
 	return enabled;	
 	}
 			
@@ -441,10 +438,10 @@
 // ---------------------------------------------------------	
 void CVIMPSTEngine::ContactStoreIdL (TDes& aContactStoreId ) const
 	{
-	TRACE( T_LIT("CVIMPSTEngine::ContactStoreIdL start"));
-	TRACE( T_LIT("ContactStoreIdL() - ServiceId: %d"), iServiceId );	
+	TRACER_AUTO;
+	TRACE("ServiceId: %d", iServiceId );	
 	iTableFetcher.GetContactStoreIdL(iServiceId, aContactStoreId);	
-	TRACE( T_LIT("CVIMPSTEngine::ContactStoreIdL end"));
+
 	}
 
 // ---------------------------------------------------------------------------
@@ -454,14 +451,14 @@
 void CVIMPSTEngine::RegisterServiceSessionObserverL
 							(MVIMPSTEngineServiceStateEventObserver* aObserver)
 	{
-	__ASSERT_ALWAYS(aObserver,User::Leave(KErrArgument));
-	TRACE( T_LIT("CVIMPSTEngine::RegisterServiceSessionObserverL start"));
+	TRACER_AUTO;
+	__ASSERT_ALWAYS(aObserver,User::Leave(KErrArgument));	
 	TInt index = iObserverArray.Find(aObserver);
 	        if( index == KErrNotFound )
 	            {
 	            iObserverArray.Append( aObserver );   
 	            } 
-	TRACE( T_LIT("CVIMPSTEngine::RegisterServiceSessionObserverL end"));
+
 	}
 	
 // ---------------------------------------------------------------------------
@@ -471,7 +468,8 @@
 void CVIMPSTEngine::UnRegisterServiceSessionObserver
 							(MVIMPSTEngineServiceStateEventObserver* aObserver)
 	{
-	TRACE( T_LIT("CVIMPSTEngine::UnRegisterServiceSessionObserverL start"));
+
+	TRACER_AUTO;
     if(aObserver)
         {
         TInt index = iObserverArray.Find(aObserver);
@@ -481,7 +479,7 @@
             iObserverArray.Compress();
             }
         }
-	TRACE( T_LIT("CVIMPSTEngine::UnRegisterServiceSessionObserverL end"));
+
 	}
 // ---------------------------------------------------------
 // CVIMPSTEngine::IntializeStorage
@@ -489,8 +487,8 @@
 // ---------------------------------------------------------	
 void CVIMPSTEngine::IntializeStorageL()
 	{
-    TRACE( T_LIT("CVIMPSTEngine::IntializeStorageL"));
-    TRACE( T_LIT("IntializeStorageL() - ServiceId: %d"), iServiceId );	
+	TRACER_AUTO;
+    TRACE( "ServiceId: %d", iServiceId );	
  	iContactInterface = CVIMPSTStorageManagerFactory::ContactListInterfaceL(iServiceId);
  	if(iContactInterface)
 		{
@@ -515,7 +513,7 @@
 		CleanupStack::PopAndDestroy(&lastUserName); //lastUserName  
 		CleanupStack::PopAndDestroy(); //store     
 		}
- 	TRACE( T_LIT("CVIMPSTEngine::IntializeStorageL") );
+ 
 	}
 // ---------------------------------------------------------
 // CVIMPSTEngine::UnIntializeStorage
@@ -523,13 +521,13 @@
 // ---------------------------------------------------------	
 void CVIMPSTEngine::UnIntializeStorage()
 	{
-	TRACE( T_LIT("CVIMPSTEngine::UnIntializeStorage start"));
-	TRACE( T_LIT("UnIntializeStorage() - ServiceId: %d"), iServiceId );
+	TRACER_AUTO;
+	TRACE( "ServiceId: %d", iServiceId );
 	if(iContactInterface)
 		{
 		iContactInterface->RemoveObserver( this );
 		} 
-	TRACE( T_LIT("CVIMPSTEngine::UnIntializeStorage end"));
+
 	}
 	
 //-----------------------------------------------------------------------------
@@ -538,7 +536,8 @@
 //----------------------------------------------------------------------------- 
 void CVIMPSTEngine::SetOwnUserIdIfChangedL(const TDesC& aUserId)
 	{
-	TRACE( T_LIT("CVIMPSTEngine::SetOwnUserIdL"));
+
+	TRACER_AUTO;
 	MVIMPSTSettingsStore* store = CVIMPSTSettingsStore::NewLC();
 	RBuf lastUserName;
 	lastUserName.CreateL( KPropertyMaxLength );
@@ -552,7 +551,7 @@
 		} 
 	CleanupStack::PopAndDestroy(&lastUserName); //lastUserName         
 	CleanupStack::PopAndDestroy(); //store 
-	TRACE( T_LIT("CVIMPSTEngine::SetOwnUserIdL"));
+
 	}
 
 //-----------------------------------------------------------------------------
@@ -561,8 +560,9 @@
 //----------------------------------------------------------------------------- 
 HBufC* CVIMPSTEngine::GetOwnUserIdFromCChOrStorageL() const
 	{
-	TRACE( T_LIT("CVIMPSTEngine::GetOwnUserIdFromCChL"));
-	TRACE( T_LIT("GetOwnUserIdFromCChL() - ServiceId: %d"), iServiceId );
+
+	TRACER_AUTO;
+	TRACE( "ServiceId: %d", iServiceId );
 	HBufC* buffer = NULL;
 	if(iCchHandler)
 		{
@@ -584,10 +584,9 @@
 //----------------------------------------------------------------------------- 
 MVIMPSTEngineSubService* CVIMPSTEngine::SubService(TVIMPSTEnums::SubServiceType aType) const 
 	{
-	TRACE( T_LIT("CVIMPSTEngine::SubService start"));
-	TRACE( T_LIT("SubService() - ServiceId: %d"), iServiceId );
-	TRACE( T_LIT("SubService() - SubServiceType: %d"), aType );
-	
+	TRACER_AUTO;
+	TRACE("ServiceId: %d", iServiceId );
+	TRACE( "SubServiceType: %d", aType );
 	TInt subServiceCount = iSubService.Count();
 	MVIMPSTEngineSubService* subService = NULL;	
 	
@@ -597,13 +596,14 @@
         
         if (aType == iSubService[index]->Type())
 	        {
-	        subService = iSubService[index];
-	        TRACE( T_LIT("SubService() - SubService Found") );	
+	        subService = iSubService[index];	  
+	        TRACE("SubService Found");
 	        break;
 	        }       			
 		}	
 	
-	TRACE( T_LIT("CVIMPSTEngine::SubService end"));
+
+    
 	return subService;	
 	}
 	
@@ -614,10 +614,9 @@
 //----------------------------------------------------------------------------- 
 MVIMPSTEngineExtentionFeatures* CVIMPSTEngine::ExtentionFeatures(TVIMPSTEnums::ExtentionType aType) const 
 	{
-	TRACE( T_LIT("CVIMPSTEngine::ExtentionFeatures start"));
-	TRACE( T_LIT("ExtentionFeatures() - ServiceId: %d"), iServiceId );
-	TRACE( T_LIT("ExtentionFeatures() - ExtentionType: %d"), aType );
-	
+	TRACER_AUTO;
+	TRACE("ServiceId: %d", iServiceId);
+	TRACE("ExtentionType: %d", aType);
 	TInt fetaureCount = iExtentionFeatures.Count();
 	MVIMPSTEngineExtentionFeatures* feature = NULL;	
 	
@@ -627,13 +626,13 @@
         
         if (aType == iExtentionFeatures[index]->Type())
 	        {
-	        feature = iExtentionFeatures[index];
-	        TRACE( T_LIT("SubService() - ExtentionFeatures Found") );	
+	        feature = iExtentionFeatures[index];	   
+	        TRACE("ExtentionFeatures Found");	
 	        break;
 	        }       			
 		}	
 	
-	TRACE( T_LIT("CVIMPSTEngine::ExtentionFeatures"));
+
 	return feature;	
 	}
 
@@ -645,19 +644,18 @@
 //----------------------------------------------------------------------------- 
 void CVIMPSTEngine::AddExtentionFeaturesL(MVIMPSTEngineExtentionFeatures* aFeature) 
 	{
-	__ASSERT_ALWAYS(aFeature,User::Leave(KErrArgument));
-	
-	TRACE( T_LIT("CVIMPSTEngine::AddExtentionFeaturesL"));
-	TRACE( T_LIT("AddExtentionFeaturesL() - ServiceId: %d"), iServiceId );
-	
+	__ASSERT_ALWAYS(aFeature,User::Leave(KErrArgument));	
+
+	TRACER_AUTO;
+	TRACE( "ServiceId: %d", iServiceId );
 	if (aFeature)
 		{		
-		TRACE( T_LIT("AddExtentionFeaturesL() - ExtentionType: %d"), aFeature->Type() );
-		iExtentionFeatures.Append(aFeature);	
-		TRACE( T_LIT("AddExtentionFeaturesL() - Append Done") );
+	    TRACE( "ExtentionType: %d", aFeature->Type() );
+		iExtentionFeatures.Append(aFeature);		
+		TRACE( "Append Done" );
 		}	
 	
-	TRACE( T_LIT("CVIMPSTEngine::AddExtentionFeaturesL"));
+
 	
 	}
 	
@@ -668,10 +666,9 @@
 //----------------------------------------------------------------------------- 
 void CVIMPSTEngine::RemoveExtentionFeatures(TVIMPSTEnums::ExtentionType aType) 
 	{
-	
-	TRACE( T_LIT("CVIMPSTEngine::RemoveExtentionFeatures"));
-	TRACE( T_LIT("RemoveExtentionFeatures() - ServiceId: %d"), iServiceId );
-	
+	TRACER_AUTO;	
+
+	TRACE( "ServiceId: %d", iServiceId );
 	TInt fetaureCount = iExtentionFeatures.Count();
 	
 	// iterate the service array
@@ -680,15 +677,15 @@
         
         if (aType == iExtentionFeatures[index]->Type())
 	        {
-	        TRACE( T_LIT("RemoveExtentionFeatures() Found - ExtentionType: %d"), aType );
+	        TRACE( "ExtentionType: %d", aType );
 	        iExtentionFeatures.Remove(index);
 	        iExtentionFeatures.Compress();
-	        TRACE( T_LIT("RemoveExtentionFeatures() - Remove Done") );
+	        TRACE( "Remove Done" );
 	        break;
 	        }       			
 		}	
 	
-	TRACE( T_LIT("CVIMPSTEngine::RemoveExtentionFeatures end"));
+
 		
 	}	
 	
@@ -700,8 +697,8 @@
 //-----------------------------------------------------------------------------
 void  CVIMPSTEngine::HandleServceConnectionEventL()
 	{
-	TRACE( T_LIT("CVIMPSTEngine::HandleServceConnectionEventL"));
-	TRACE( T_LIT("HandleServceConnectionEventL() - ServiceId: %d"), iServiceId );	
+	TRACER_AUTO;
+	TRACE( "ServiceId: %d", iServiceId );	
 
 	TVIMPSTEnums::TVIMPSTRegistrationState previousState = iState;
 	iState = ParseGetServiceState();	
@@ -716,7 +713,7 @@
 			presSubService->ResetBlockedListManagerL();
 			}
 		}
-	TRACE( T_LIT("HandleServceConnectionEventL() - PreviousState: %d, CurrentState:%d"), previousState, iState );
+	TRACE( "PreviousState: %d, CurrentState:%d", previousState, iState );
 	//Only send observer notifications if there is any change in the Service State
 	//Otherwise not required
 	if (previousState != iState)
@@ -731,11 +728,11 @@
     if (  presSubService && TVIMPSTEnums::ESVCERegistered == previousState &&
           TVIMPSTEnums::ESVCENetworkConnecting == iState )
           {
-          TRACE( T_LIT( "HandleServceConnectionEventL()-UnsubscribeLists" ) );
+          TRACE( "UnsubscribeLists"  );
           
           TRAPD( err, presSubService->UnsubscribeListsL() );
 	  
-          TRACE( T_LIT( "HandleServceConnectionEventL()-UnsubscribeLists -err: %d" ), err );
+          TRACE( "UnsubscribeLists -err: %d" , err );
 	  
           if ( iSessionCntxtObserver )
               {
@@ -745,7 +742,7 @@
 		TInt count = iObserverArray.Count();
 		for (TInt index=0; index<count; index++)		
 			{
-			TRACE( T_LIT("HandleServceConnectionEventL()calling HandleServiceEventL") );
+			TRACE( "calling HandleServiceEventL" );
 			iObserverArray[index]->HandleServiceEventL(iState, KErrNone);
 			}		
 		TInt ximpAdapterUid = iTableFetcher.XimpAdapterUidL(iServiceId);
@@ -809,7 +806,7 @@
 				} //end of else if
 			}// end of isessioncontextobserver and ximpadapteruid.
 			}// end of if(previousstate != iState)	
-	TRACE( T_LIT("CVIMPSTEngine::HandleServceConnectionEventL end") );
+
 	}
 	
 //-----------------------------------------------------------------------------
@@ -818,7 +815,7 @@
 //-----------------------------------------------------------------------------
 TVIMPSTEnums::TVIMPSTRegistrationState CVIMPSTEngine::ParseGetServiceState()
 	{
-	
+	TRACER_AUTO;
 	TInt subServiceCount = iSubService.Count();
 	TInt serviceState = 0;
 		
@@ -877,7 +874,8 @@
 //-----------------------------------------------------------------------------
 void  CVIMPSTEngine::HandleContactFetchedL()
     {
-    TRACE( T_LIT("CVIMPSTEngine::HandleContactFetchedL"));
+  
+	TRACER_AUTO;
     
     if (TVIMPSTEnums::ESVCERegistered == iState ||
 	    	TVIMPSTEnums::ESVCEUpdatingContacts == iState ) 
@@ -913,7 +911,7 @@
 			    }
 			}                
 		}                
-    TRACE( T_LIT("CVIMPSTEngine::HandleContactFetchedL end"));
+  
     }
     
 // --------------------------------------------------------------------------
@@ -925,22 +923,24 @@
 			        						MVIMPSTStorageContact* aContact,
 			        						TInt /*aContactIndex*/ )
     {
-    TRACE( T_LIT("CVIMPSTEngine::HandleStorageChangeL begin"));
-    TRACE( T_LIT("CVIMPSTEngine::HandleStorageChangeL iState = %d"), iState);
+  
+	TRACER_AUTO;  
+	TRACE(" iState = %d", iState);
     if (TVIMPSTEnums::ESVCERegistered == iState ||	TVIMPSTEnums::ESVCEUpdatingContacts == iState ) 
-		{
-		TRACE( T_LIT("CVIMPSTEngine::HandleStorageChangeL Inside IF"));
-		TRACE( T_LIT("CVIMPSTEngine::HandleStorageChangeL aEventType : %d"), aEventType);
+		{	
+        TRACE( "Inside IF");	
+        TRACE( "aEventType : %d", aEventType);
 		switch( aEventType )
 		    {
 		    case TVIMPSTEnums::EStorageContactReadComplete:
 		    case TVIMPSTEnums::EStorageContactFetchComplete:
 		        {
-		        TRACE( T_LIT("CVIMPSTEngine::HandleStorageChangeL aEventType EStorageContactFetchComplete"));
+		        TRACE( "aEventType EStorageContactFetchComplete");
 		        MVIMPSTEngineSubService* subService =  SubService(TVIMPSTEnums::EPresence); 
 		        if( subService )   
 		            {
-		            TRACE( T_LIT("HandleStorageChangeL::EStorageContactFetchComplete Inside IF subService"));
+		       
+		           TRACE( "Inside IF subService");
 		            MVIMPSTEnginePresenceSubService& presenceSubService = MVIMPSTEnginePresenceSubService::Cast(*subService);
 		            
 		            MVIMPSTStorageServiceView* storage =  CVIMPSTStorageManagerFactory::ContactListInterfaceL(iServiceId);
@@ -952,13 +952,15 @@
                             {
                             presenceSubService.SubscribePresenceOfSingleContactL( ownUserId );
                             }
-		                TRACE( T_LIT("CVIMPSTEngine::HandleStorageChangeL inside  if storage"));
+		          
+		                TRACE( "inside  if storage");
 		                MVIMPSTStorageContactList* list = storage->FindContactList(KIMContactListId) ;      
 		                if ( list )                     
 		                    {
-		                    TRACE( T_LIT("CVIMPSTEngine::HandleStorageChangeL inside  if list"));
-		                    TInt count = list->Count();
-		                    TRACE( T_LIT("CVIMPSTEngine::HandleStorageChangeL inside  count = %d"), count);
+		               
+		                     TRACE( "inside  if list");
+		                    TInt count = list->Count();		                 
+		                    TRACE( "inside  count = %d", count);
 		                    for(TInt i = 0;i < count; i++)
 		                        {
 		                        MVIMPSTStorageContact* contact = &(list->operator[](i));
@@ -966,8 +968,8 @@
 		                            {
                                     if( contact->UserId().Length() )
                                         {
-                                        TPtrC userId = contact->UserId();
-                                        TRACE( T_LIT("CVIMPSTEngine::HandleStorageChangeL inside userId = %S"), &userId);
+                                        TPtrC userId = contact->UserId();                                   
+                                        TRACE("inside userId = %S", &userId);
                                         presenceSubService.SubscribePresenceOfSingleContactL( contact->UserId() );    
                                         }
 		                            } // end of if(contact)
@@ -985,8 +987,8 @@
 		    case TVIMPSTEnums::EStorageContactSynchronizing:
 		    case TVIMPSTEnums::EStorageContactReading:
 		    case TVIMPSTEnums::EStorageContactFetchExistInStore:
-		        {
-		        TRACE( T_LIT("CVIMPSTEngine::HandleStorageChangeL aEventType : %d"), aEventType);
+		        {		    
+		        TRACE( "aEventType : %d", aEventType);
 		        MVIMPSTEngineSubService* subService =  SubService(TVIMPSTEnums::EPresence); 
 		        if( subService && aContact && 
 		                aContact->UserId().Length() && 
@@ -1001,7 +1003,8 @@
 		    case TVIMPSTEnums::EStorageEventUserIdPreChange:
 		    case TVIMPSTEnums::EStorageEventDeleteFromPbk:
 		        {
-		        TRACE( T_LIT("CVIMPSTEngine::HandleStorageChangeL EStorageEventUserIdPreChange/EStorageEventDeleteFromPbk"));
+		     
+		        TRACE("EStorageEventUserIdPreChange/EStorageEventDeleteFromPbk");
 		        if( aContact && aContact->UserId().Length() ) 
 		            {
 		            TPtrC userId = aContact->UserId();
@@ -1030,7 +1033,8 @@
 		        }
 		    case TVIMPSTEnums::EStorageEventUserIdPostChange:
 		        {
-		        TRACE( T_LIT("CVIMPSTEngine::HandleStorageChangeL EStorageEventUserIdPostChange"));
+		     
+		        TRACE("EStorageEventUserIdPostChange");
 		        if( aContact && aContact->UserId().Length() ) 
 		            {
 		            TPtrC userId = aContact->UserId();
@@ -1057,7 +1061,6 @@
 		        }
 		    }
 		}
-    TRACE( T_LIT("CVIMPSTEngine::HandleStorageChangeL end"));
     }
     
 //-----------------------------------------------------------------------------
@@ -1066,7 +1069,7 @@
 //-----------------------------------------------------------------------------    
 void CVIMPSTEngine::CreateExtentionFeaturesL()
     {
-    TRACE( T_LIT("CVIMPSTEngine::CreateExtentionFeaturesL start"));
+	TRACER_AUTO;
     if (!iSessionCntxtObserver)
         {
         return;	
@@ -1113,7 +1116,7 @@
         //unbinded
         iSessionCntxtObserver->RegisterObserver(searchitem);
         }
-    TRACE( T_LIT("CVIMPSTEngine::CreateExtentionFeaturesL end"));
+    
     }
 
 //-----------------------------------------------------------------------------
@@ -1122,7 +1125,7 @@
 //-----------------------------------------------------------------------------    
 void CVIMPSTEngine::SetExtentionFeaturesSupportedL()
     {
-    TRACE( T_LIT("CVIMPSTEngine::SetExtentionFeaturesSupportedL start"));
+	TRACER_AUTO;
     if (!iSessionCntxtObserver)
 		{
 		return;	
@@ -1177,7 +1180,6 @@
             avatarFeature.SetAvatarSupported(ETrue);                
             }
         }
-    TRACE( T_LIT("CVIMPSTEngine::SetExtentionFeaturesSupportedL end"));
     }
 
 
@@ -1187,6 +1189,7 @@
 //-----------------------------------------------------------------------------    
 void CVIMPSTEngine::ReSetExtentionFeaturesSupportedL()
     {
+	TRACER_AUTO;
     //first find whether we have the extention already created
     //in the extention manager list
     MVIMPSTEngineExtentionFeatures* feature = ExtentionFeatures(
@@ -1229,10 +1232,10 @@
 // ---------------------------------------------------------
 void CVIMPSTEngine::DefaultDomainNameL( TDes& aDefaultDomainName ) const
 	{
-	TRACE( T_LIT("CVIMPSTEngine::DefaultDomainName start"));
-	TRACE( T_LIT("DefaultDomainNameL() - ServiceId: %d"), iServiceId );	
+	TRACER_AUTO;	
+	TRACE( "ServiceId: %d", iServiceId );
 	iTableFetcher.GetDefaultDomainNameL(iServiceId, aDefaultDomainName);	
-	TRACE( T_LIT("CVIMPSTEngine::DefaultDomainNameL end"));
+
 	}
 	
 
@@ -1242,11 +1245,9 @@
 // ---------------------------------------------------------
 TBool CVIMPSTEngine::IsSubServiceSupportedInternal(TVIMPSTEnums::SubServiceType aType) const 
 	{
-	
-	TRACE( T_LIT("CVIMPSTEngine::IsSubServiceSupportedL"));
-	TRACE( T_LIT("IsSubServiceSupportedL() - ServiceId: %d"), iServiceId );	
-	TRACE( T_LIT("IsSubServiceSupportedL() - SubServiceType: %d"), aType );
-	
+	TRACER_AUTO;
+	TRACE( "ServiceId: %d", iServiceId );
+	TRACE( "SubServiceType: %d", aType );
 	TInt err = KErrNotFound;
 	TBool support = EFalse;
 	TCCHSubserviceState aCCHState(ECCHUninitialized);	
@@ -1280,8 +1281,8 @@
 		support = ETrue;		
 		}
 		
-	TRACE( T_LIT("IsSubServiceSupportedL() - support: %d"), support );	
-	TRACE( T_LIT("CVIMPSTEngine::IsSubServiceSupportedL end"));
+
+	TRACE("support: %d", support );
 	return support;
 	}
 	
@@ -1292,19 +1293,19 @@
 // ---------------------------------------------------------
 TInt CVIMPSTEngine::ChangeConnectionL()
 	{
-	TRACE( T_LIT("CVIMPSTEngine::ChangeConnectionL"));
-	TRACE( T_LIT("ChangeConnectionL() - ServiceId: %d"), iServiceId );	
-	
+	TRACER_AUTO;
+	TRACE( "ServiceId: %d", iServiceId );
 	TInt error = KErrNotFound;
 	if(iCchHandler)
 		{
-		TRACE( T_LIT("ChangeConnectionL() Called") );
+	
+	   TRACE( "ChangeConnectionL() Called" );
 		error =  iCchHandler->ChangeConnectionL(); 		
 		}
 	
-	TRACE( T_LIT("ChangeConnectionL - error: %d"), error );	
-	TRACE( T_LIT("CVIMPSTEngine::ChangeConnectionL end") );
-		
+
+	TRACE("error: %d", error );
+
 	return error;
 	}		
 
@@ -1315,6 +1316,7 @@
 
 TBool CVIMPSTEngine::IsBlockSupportedL()
     {
+	TRACER_AUTO;
     TBool isBlockSupported = EFalse;
     //We would have got the supported features 
     if(iSessionCntxtObserver && (TVIMPSTEnums::ESVCERegistered == ParseGetServiceState()))
@@ -1334,7 +1336,8 @@
 // ---------------------------------------------------------
 TBool CVIMPSTEngine::IsPasswordAvailableL()
     {
-    TRACE( T_LIT("CVIMPSTEngine::IsPasswordAvailable start - End"));
+	TRACER_AUTO;
+ 
     return(iCchHandler->IsPasswordAvailable(ECchPasswordSet));    
     }
     
@@ -1343,6 +1346,7 @@
 // ---------------------------------------------------------
 void CVIMPSTEngine::DeleteDataBaseL() 
 	{
+	TRACER_AUTO;
 	MVIMPSTStorageServiceView* storage = 
 	CVIMPSTStorageManagerFactory::ContactListInterfaceL(iServiceId);
 	if( storage )
@@ -1358,6 +1362,7 @@
 //
 MVIMPSTEnginePresenceSubService* CVIMPSTEngine::GetPreseceSubService()
 	{
+	TRACER_AUTO;
 	MVIMPSTEngineSubService* subService = SubService(TVIMPSTEnums::EPresence);
 	if (subService)
 		{
@@ -1399,6 +1404,7 @@
 //
 void CVIMPSTEngine::HandleChangeConnectionEventL()
     {
+	TRACER_AUTO;
     MVIMPSTEngineSubService* subService = SubService(TVIMPSTEnums::EPresence);
     if (subService)
         {
--- a/uiservicetab/vimpstengine/src/cvimpstenginecchhandler.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstengine/src/cvimpstenginecchhandler.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -26,7 +26,7 @@
 #include "tvimpstconsts.h"
 
 #include "f32file.h"
-#include "vimpstdebugtrace.h"
+#include "uiservicetabtracer.h"
 
 // CONSTANTS
 
@@ -47,58 +47,81 @@
 // 
 void CVIMPSTEngineCchHandler::ConstructL(  )
     {
-    TRACE( T_LIT("CVIMPSTEngineCchHandler::ConstructL"));
+	TRACER_AUTO;
     
      // Create service selection here
 	 iCchClient = CCch::NewL();
-	
+	 TRACE("CCch::NewL");
 	 iSettingsStore = CVIMPSTSettingsStore::NewL();
+	 TRACE("CVIMPSTSettingsStore::NewL");
 	
 	if (iCchClient)
 		{		
-		CCchService* service = iCchClient->GetService( iServiceId );	
+		CCchService* service = iCchClient->GetService( iServiceId );
+		TRACE("CCch::GetService");
 		
 		if( service )
 			{
-			service->SetObserver( *this );		
+			service->SetObserver( *this );
+			TRACE("CCchService::SetObserver");
 			}
 		}
 		
 	//Configure CCHUI notes
 	MCchUi& cchUiApi = iCchClient->CchUiApi();
+	TRACE("CCch::CchUiApi");
 	
 	// Set observer to listen cchui events for change connection.
     cchUiApi.AddObserverL( *this );  // parameter is MCchUiObserver
+    TRACE("MCchUi::CchUiApi");
 
 	// Configure CCHUI API to show all notes/dialogs except connecting note.
 	// Also configure that only VoIP and IM subservices are allowed (notes are
 	// shown only for those).
 	RArray<MCchUiObserver::TCchUiDialogType> allowedNotes;
+	TRACE("MCchUiObserver::TCchUiDialogType");
 	RArray<TCCHSubserviceType> allowedSubServices;
+	TRACE("TCCHSubserviceType");
 	CleanupClosePushL( allowedNotes );
+	TRACE("allowedNotes");
 	CleanupClosePushL( allowedSubServices );
+	TRACE("allowedSubServices");
 
 	allowedNotes.AppendL( MCchUiObserver::ECchUiDialogTypeUsernamePasswordFailed );
+	TRACE("ECchUiDialogTypeUsernamePasswordFailed");
 	allowedNotes.AppendL( MCchUiObserver::ECchUiDialogTypeAuthenticationFailed );
+	TRACE("ECchUiDialogTypeAuthenticationFailed");
 	allowedNotes.AppendL( MCchUiObserver::ECchUiDialogTypeNoConnectionDefined );
+	TRACE("ECchUiDialogTypeNoConnectionDefined");
 	allowedNotes.AppendL( MCchUiObserver::ECchUiDialogTypeNoConnectionAvailable );
+	TRACE("ECchUiDialogTypeNoConnectionAvailable");
 	allowedNotes.AppendL( MCchUiObserver::ECchUiDialogTypeConfirmChangeConnection );
+	TRACE("ECchUiDialogTypeConfirmChangeConnection");
 	allowedNotes.AppendL( MCchUiObserver::ECchUiDialogTypeChangeConnection );
+	TRACE("ECchUiDialogTypeChangeConnection");
 	allowedNotes.AppendL( MCchUiObserver::ECchUiDialogTypeDefectiveSettings );
-	allowedNotes.AppendL( MCchUiObserver::ECchUiDialogTypeErrorInConnection );  
+	TRACE("ECchUiDialogTypeDefectiveSettings");
+	allowedNotes.AppendL( MCchUiObserver::ECchUiDialogTypeErrorInConnection );
+	TRACE("ECchUiDialogTypeErrorInConnection");
 
 	allowedSubServices.AppendL( ECCHUnknown );
+	TRACE("ECCHUnknown");
 	allowedSubServices.AppendL( ECCHVoIPSub );
+	TRACE("ECCHVoIPSub");
 	allowedSubServices.AppendL( ECCHIMSub );
+	TRACE("ECCHIMSub");
 	allowedSubServices.AppendL( ECCHPresenceSub );
+	TRACE("ECCHPresenceSub");
 
 	cchUiApi.ConfigureVisualizationL( 
 				allowedNotes, allowedSubServices );
+	TRACE("ConfigureVisualizationL");
 
 	CleanupStack::PopAndDestroy( &allowedSubServices );
+	TRACE("allowedSubServices::pop");
 	CleanupStack::PopAndDestroy( &allowedNotes );
+	TRACE("allowedNotes::pop");
 	
-	TRACE( T_LIT("CVIMPSTEngineCchHandler::ConstructL"));
     }
 
 // ---------------------------------------------------------------------------
@@ -108,12 +131,11 @@
 CVIMPSTEngineCchHandler* CVIMPSTEngineCchHandler::NewL(TUint aServiceId,
         MVIMPSTEngineCchUiEventObserver& aCchUiEventObserver )
         {
-    TRACE( T_LIT("CVIMPSTEngineCchHandler::NewL start"));    
-    TRACE( T_LIT("ServiceId: %d"), aServiceId );
+	TRACER_AUTO;
+	TRACE("ServiceId: %d", aServiceId );
     								 
     CVIMPSTEngineCchHandler* self = NewLC(aServiceId, aCchUiEventObserver );
     CleanupStack::Pop(self);
-    TRACE( T_LIT("CVIMPSTEngineCchHandler::NewL end"));
     return self;
     }
 
@@ -123,15 +145,13 @@
 // 
 CVIMPSTEngineCchHandler* CVIMPSTEngineCchHandler::NewLC(TUint aServiceId ,MVIMPSTEngineCchUiEventObserver& aCchUiEventObserver)
     {
+	TRACER_AUTO;
     CVIMPSTEngineCchHandler* self =
         new (ELeave) CVIMPSTEngineCchHandler(aServiceId, aCchUiEventObserver);
     
-    TRACE( T_LIT("CVIMPSTEngineCchHandler::NewLC start"));
-    TRACE( T_LIT("ServiceId: %d"), aServiceId );
-    
+    TRACE("ServiceId: %d", aServiceId );
     CleanupStack::PushL(self);
     self->ConstructL( );
-    TRACE( T_LIT("CVIMPSTEngineCchHandler::NewLC end"));
     return self;
     }
 
@@ -141,9 +161,8 @@
 // 
 CVIMPSTEngineCchHandler::~CVIMPSTEngineCchHandler()
     {
-    TRACE( T_LIT("CVIMPSTEngineCchHandler::~CVIMPSTEngineCchHandler start") );
-    
-    TRACE( T_LIT("ServiceId: %d"), iServiceId );
+	TRACER_AUTO;
+	TRACE( "ServiceId: %d", iServiceId );
     if(iCchClient)
     	{
     	CCchService* service = iCchClient->GetService( iServiceId );
@@ -156,7 +175,6 @@
     delete iSettingsStore;
     iObserverStructure.Reset();
     iObserverStructure.Close();
-    TRACE( T_LIT("CVIMPSTEngineCchHandler::~CVIMPSTEngineCchHandler end"));
     }
 
 // ---------------------------------------------------------------------------
@@ -166,16 +184,14 @@
 //TODO: not used any where.. need to be removed.
 void CVIMPSTEngineCchHandler::ShutdownCch()
     {
-    TRACE( T_LIT("CVIMPSTEngineCchHandler::ShutdownCch start"));
-	TRACE( T_LIT("ServiceId: %d"), iServiceId );
-	
+	TRACER_AUTO;
+	TRACE("ServiceId: %d", iServiceId );
     if ( iCchClient )
         {        
         delete iCchClient;
         iCchClient = NULL;
         }
     
-    TRACE( T_LIT("CVIMPSTEngineCchHandler::ShutdownCch end"));        
     }    
 
 
@@ -188,11 +204,9 @@
 									TCCHSubserviceState& aCCHState
 									)
     {
-    TRACE( T_LIT("CVIMPSTEngineCchHandler::GetServiceState"));   
+	TRACER_AUTO;
     
-    TRACE( T_LIT("GetServiceState ServiceId: %d, SubServiceType:%d"),
-            aServiceId, aSubServiceType );
-        
+	TRACE( "ServiceId: %d, SubServiceType:%d", aServiceId, aSubServiceType );    
    	TInt err = KErrNotFound;
    	if ( iCchClient )
 	   	{
@@ -210,9 +224,7 @@
 				}
 			}		
 	   	}
-    TRACE( T_LIT("GetServiceState - aCCHState: (%d)"), aCCHState );
-    
-    TRACE( T_LIT("CVIMPSTEngineCchHandler::GetServiceState"));    
+   	TRACE( "aCCHState: (%d)", aCCHState );
 
     return err;   	
     }
@@ -224,9 +236,8 @@
 // 
 TInt CVIMPSTEngineCchHandler::EnableService()
     {
-    TRACE( T_LIT("CVIMPSTEngineCchHandler::EnableService start"));    
-    TRACE( T_LIT("ServiceId: %d"), iServiceId );
-    
+	TRACER_AUTO;
+	TRACE( "ServiceId: %d", iServiceId );
     TInt error = KErrNotFound;
     if ( iCchClient )
 	    {
@@ -235,14 +246,13 @@
 		CCchService* service = iCchClient->GetService( iServiceId );
 		if( service )
 			{
-			TRACE( T_LIT("EnableService - CCHClient->Enable") );			
+		TRACE( "CCHClient->Enable" );
 			error = service->Enable( ECCHUnknown );		
 			}
 	    }
 	
-    TRACE( T_LIT("EnableService - stat: (%d)"), error );
+    TRACE( " stat: (%d)", error );
     
-    TRACE( T_LIT("CVIMPSTEngineCchHandler::EnableService"));    
 
 	return error;
     
@@ -254,10 +264,8 @@
 // 
 TInt CVIMPSTEngineCchHandler::DisableService()
     {
-    TRACE( T_LIT( 
-       "CVIMPSTEngineCchHandler::DisableService start"));		
-	TRACE( T_LIT("ServiceId: %d"), iServiceId );
-	
+	TRACER_AUTO;
+	TRACE( "ServiceId: %d", iServiceId );
 	TInt error = KErrNotFound;
 	
 	if(iCchClient)
@@ -265,14 +273,13 @@
 		CCchService* service = iCchClient->GetService( iServiceId );
 	    if( service )
 			{
-			TRACE( T_LIT("DisableService - CCHClient->Disable") );	
+	    TRACE( "CCHClient->Disable" );	
 			error = service->Disable( ECCHUnknown );
 			}		
 		}
 	
-	TRACE( T_LIT("DisableService - stat: (%d)"), error );
+	TRACE( "stat: (%d)", error );
 			
-    TRACE( T_LIT("CVIMPSTEngineCchHandler::DisableService end"));
     
     return error;
     
@@ -288,8 +295,8 @@
 				const TCCHSubserviceType aType,
 				const TCchServiceStatus& aServiceStatus )
     {
+	TRACER_AUTO;
 
-    TRACE( T_LIT("CVIMPSTEngineCchHandler::ServiceStatusChanged start"));
     // Disable the service only if the login to one of the subservices fails
     // 1.ECCHVoIPSub
     // 2.ECCHPresenceSub
@@ -319,7 +326,6 @@
             }
         }
 
-    TRACE( T_LIT("CVIMPSTEngineCchHandler::ServiceStatusChanged end"));        
     }
 	    
 // ---------------------------------------------------------------------------
@@ -329,7 +335,7 @@
 void CVIMPSTEngineCchHandler::RegisterCchObserverL(MVIMPSTEngineCchHandlerObserver* aObserver,
                                                    TCCHSubserviceType aSubServiceType )
     {
-    TRACE( T_LIT("CVIMPSTEngineCchHandler::RegisterCchObserverL start" ));   
+	TRACER_AUTO;
     if(aObserver)
     	{
     	 TObserverStructure obsstruct;
@@ -338,7 +344,6 @@
 	     iObserverStructure.Append(obsstruct);
     	}
    
-    TRACE( T_LIT("CVIMPSTEngineCchHandler::RegisterCchObserverL end"));        
     }    
 // ---------------------------------------------------------------------------
 // CVIMPSTEngineCchHandler::UnRegisterCchObserver
@@ -346,7 +351,7 @@
 // 
 void CVIMPSTEngineCchHandler::UnRegisterCchObserver(TCCHSubserviceType aSubServiceType )
     {
-    TRACE( T_LIT("CVIMPSTEngineCchHandler::UnRegisterCchObserver start" ));
+	TRACER_AUTO;
     TInt count  = iObserverStructure.Count();
     for(TInt i = 0; i < count; i++)
     	{
@@ -358,7 +363,6 @@
     		break;
     		}
     	}
-    TRACE( T_LIT("CVIMPSTEngineCchHandler::UnRegisterCchObserver end"));        
     }    
 
 // ---------------------------------------------------------------------------
@@ -368,10 +372,9 @@
 HBufC* CVIMPSTEngineCchHandler::GetConParametersL(			
 		    TCchConnectionParameter aConnParam )
     {
-    TRACE( T_LIT("CVIMPSTEngineCchHandler::GetConParametersL start"));
-    TRACE( T_LIT("ServiceId: %d"), iServiceId );
-    TRACE( T_LIT("GetConParametersL - TCchConnectionParameter aConnParam: (%d)"), aConnParam );
-    
+	TRACER_AUTO;
+	TRACE( "ServiceId: %d", iServiceId );
+	TRACE( "TCchConnectionParameter aConnParam: (%d)", aConnParam );
     HBufC* temp = NULL;
     TInt error = KErrNotFound;
     if(iCchClient)  
@@ -383,7 +386,7 @@
 	       CleanupClosePushL( buffer );
 		   buffer.CreateL(KVIMPSTUISPSMaxPropertyLength);
 		   
-		   TRACE( T_LIT("GetConParametersL - CCHClient->GetConnectionParameter") );
+		   TRACE( "CCHClient->GetConnectionParameter" );
 		   error = service->GetConnectionParameter(ECCHUnknown,aConnParam,buffer);
 		   User::LeaveIfError( error);
 
@@ -392,19 +395,18 @@
 		   TInt prefixLocation = buffer.Locate( ':' );
 		   if ( KErrNotFound != prefixLocation  && ECchUsername == aConnParam )
 		       {
-		       TRACE( T_LIT("[CVIMPSTStorageContact::GetServiceFieldsL]  ->  Prefix found -> remove"));
+		   TRACE( "Prefix found -> remove");
 		       temp = buffer.Mid(prefixLocation+1 ).AllocL(); // ownership transferred  
 		       }
 		   else
 		       {
-		       TRACE( T_LIT("[CVIMPSTStorageContact::GetServiceFieldsL]  ->  No Prefix found"));
+		   TRACE("No Prefix found");
 		       temp = buffer.AllocL(); // ownership transferred  
 		       }
-		   TRACE( T_LIT("GetConParametersL - Return Value: Error: %d "), error );
+		   TRACE( "Return Value: Error: %d ", error );
 		   CleanupStack::PopAndDestroy( &buffer );
 		   }
 	    }
-    TRACE( T_LIT("CVIMPSTEngineCchHandler::GetConParametersL"));  
     return temp;
     }
 
@@ -417,24 +419,21 @@
     TCchConnectionParameter aConnParam,
     const TDesC& aConnParamValue )
     {
-    TRACE( T_LIT("CVIMPSTEngineCchHandler::SetConnectionParameter start"));
-    TRACE( T_LIT("ServiceId: %d"), iServiceId );
-    TRACE( T_LIT("SetConnectionParameter - TCchConnectionParameter aConnParam: (%d)"), aConnParam );
-    
+	TRACER_AUTO;
+    TRACE( "ServiceId: %d", iServiceId );
+    TRACE( "TCchConnectionParameter aConnParam: (%d)", aConnParam );
     TInt error = KErrNotFound;
     if(iCchClient)
         {
         CCchService* service = iCchClient->GetService( iServiceId );
-        TRACE( T_LIT("SetConnectionParameter - CCHClient->SetConnectionParameter") );
-
+        TRACE( "CCHClient->SetConnectionParameter");
         if (service)
 	        {
 	        error =  service->SetConnectionParameter( 
 	                  ECCHUnknown, aConnParam, aConnParamValue );
 	        }
         }    
-    TRACE( T_LIT("SetConnectionParameter - error: %d"), error );
-    TRACE( T_LIT("CVIMPSTEngineCchHandler::SetConnectionParameter end"));   
+    TRACE( "error: %d", error );
     return error;
     }
     
@@ -447,8 +446,8 @@
 //
 TInt CVIMPSTEngineCchHandler::ChangeConnectionL()
     {
-    TRACE( T_LIT("CVIMPSTEngineCchHandler::ChangeConnection start") );
-    TRACE( T_LIT("ServiceId: %d"), iServiceId );
+	TRACER_AUTO;
+	TRACE( "ServiceId: %d", iServiceId );
    
     TInt err = KErrNone;
     if (iCchClient)
@@ -457,7 +456,6 @@
 		TRAP(err, cchUiApi.ShowDialogL(iServiceId, 
 						MCchUiObserver::ECchUiDialogTypeChangeConnection););
 	    }
-	TRACE( T_LIT("CVIMPSTEngineCchHandler::ChangeConnection end ")); 
     
     return err;    
     } 
@@ -480,19 +478,18 @@
 //
 TBool CVIMPSTEngineCchHandler::IsPasswordAvailable(TCchConnectionParameter aConnParam )
     {
-    TRACE( T_LIT("CVIMPSTEngineCchHandler::IsPasswordAvailableL start"));
-    TRACE( T_LIT("IsPasswordAvailableL - TCchConnectionParameter aConnParam: (%d)"), aConnParam );
+	TRACER_AUTO;
+	TRACE( "TCchConnectionParameter aConnParam: (%d)", aConnParam );
     TInt passwordSet = EFalse;
     if(iCchClient)  
         {
         CCchService* service = iCchClient->GetService( iServiceId );    
         if( service )
             {              
-            TRACE( T_LIT("GetConParametersL - CCHClient->GetConnectionParameter") );
+        TRACE( "CCHClient->GetConnectionParameter");
             service->GetConnectionParameter( ECCHUnknown,aConnParam,passwordSet );
             }
         }
-    TRACE( T_LIT("CVIMPSTEngineCchHandler::IsPasswordAvailableL end"));
     return passwordSet;
     }
 
@@ -504,6 +501,7 @@
 void CVIMPSTEngineCchHandler::ConnectivityDialogsCompletedL(
         TInt aServiceId, MCchUiObserver::TCchUiOperationResult aOperationResult )
     { 
+	TRACER_AUTO;
     if((iServiceId == aServiceId)&&(aOperationResult == ECchUiClientOperationResultConnectionChanged))
         {
         iCchUiEventObserver.HandleChangeConnectionEventL();
--- a/uiservicetab/vimpstengine/src/cvimpstenginecontactmgmtextention.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstengine/src/cvimpstenginecontactmgmtextention.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -34,7 +34,8 @@
 
 #include "vimpstallerrors.h"
 #include "tvimpstconsts.h"
-#include "vimpstdebugtrace.h"
+
+#include "uiservicetabtracer.h"
 
 // Constants
 _LIT( KListNameAllBuddy ,"buddylist" );
@@ -50,14 +51,13 @@
 							MPresentityGroups& aPresGroup,
 							CVIMPSTEngineRequestMapper& aRequestMapper)
     {
-    TRACE( T_LIT("CVIMPSTEngineContactMgmtExtention::NewL start"));
+	TRACER_AUTO;
     CVIMPSTEngineContactMgmtExtention* self = 
     			CVIMPSTEngineContactMgmtExtention::NewLC( aPresenceCtx,
     											aPresGroup,
     											aRequestMapper
     										    );
     CleanupStack::Pop( self );
-   	TRACE( T_LIT("CVIMPSTEngineContactMgmtExtention::NewL end"));
     return self;
     }
 
@@ -70,12 +70,11 @@
 							MPresentityGroups& aPresGroup,
 							CVIMPSTEngineRequestMapper& aRequestMapper)
 	{
-	TRACE( T_LIT("CVIMPSTEngineContactMgmtExtention::NewLC start"));
+	TRACER_AUTO;
 	CVIMPSTEngineContactMgmtExtention* self = new (ELeave) 
 					CVIMPSTEngineContactMgmtExtention(aPresenceCtx, aPresGroup,aRequestMapper);
 	CleanupStack::PushL( self );
 	
-	TRACE( T_LIT("CVIMPSTEngineContactMgmtExtention::NewLC end") );
 	return self;
 	}
     
@@ -101,8 +100,7 @@
 // ---------------------------------------------------------
 CVIMPSTEngineContactMgmtExtention::~CVIMPSTEngineContactMgmtExtention()
     {
-	TRACE( T_LIT("CVIMPSTEngineContactMgmtExtention::~CVIMPSTEngineContactMgmtExtention start"));
-	TRACE( T_LIT("CVIMPSTEngineContactMgmtExtention::~CVIMPSTEngineContactMgmtExtention end"));
+	TRACER_AUTO;
     }
 
 
@@ -132,9 +130,8 @@
 TInt CVIMPSTEngineContactMgmtExtention::DeleteServerContactL( const TDesC& aContactListId,
 										   		   const TDesC& aUserId )
 	{
-	TRACE( T_LIT("CVIMPSTEngineContactMgmtExtention::DeleteServerContactL start"));
-	TRACE( T_LIT("CVIMPSTEngineContactMgmtExtention::DeleteServerContactL aContactListId = %s"),&aContactListId );
-	
+	TRACER_AUTO;
+	TRACE( "DeleteServerContactL aContactListId = %s",&aContactListId );
 	// err is initialized to KErrNone, b'coz if adaptation or presence is not supported then,
 	// the request should not be sent to the server, this is a hack as the voip
 	// writes the adaptation uid into settings even if presence is not supported.
@@ -176,7 +173,6 @@
 	    
 	    err = iReqResult;
 		}
-	TRACE( T_LIT("CVIMPSTEngineContactMgmtExtention::DeleteServerContactL end"));
 	return err;
 	}
 	
@@ -190,7 +186,7 @@
         									   TBool aWaitToComplete /*= ETrue*/ )
 	{
 	
-	TRACE( T_LIT("CVIMPSTEngineContactMgmtExtention::AddServerContactL start"));
+	TRACER_AUTO;
 	
 	// err is initialized to KErrNone, b'coz if adaptation or presence is not supported then,
 	// the request should not be sent to the server, this is a hack as the voip
@@ -241,7 +237,6 @@
 		CleanupStack::PopAndDestroy(); //userId
 		CleanupStack::PopAndDestroy(); // listId
 		
-		TRACE( T_LIT("CVIMPSTEngineContactMgmtExtention::AddServerContactL end"));
 		err = iReqResult;
 		}
 
@@ -254,14 +249,13 @@
 // ---------------------------------------------------------	 	
 MXIMPIdentity* CVIMPSTEngineContactMgmtExtention::CreateIdentityLC(const TDesC& aListId) 
 	{
-	TRACE( T_LIT("CVIMPSTEngineContactMgmtExtention::CreateIdentityLC start"));
+	TRACER_AUTO;
 	
 	MXIMPObjectFactory& objFactory = iPresenceCtx.ObjectFactory();
 	MXIMPIdentity* newIdentity = objFactory.NewIdentityLC();
 	//no need to check for null as NewIdentityLC does not return null,
 	// if failed ot allocate memory it will leave with KErrNoMemory
 	newIdentity->SetIdentityL( aListId) ;
-	TRACE( T_LIT("CVIMPSTEngineContactMgmtExtention::CreateIdentityLC end"));
 	return newIdentity;
 	}	         	
 
@@ -274,13 +268,13 @@
                                              TXimpOperation aXimpOperation /*= EVIMPSTXimpOperationNoOperation*/ )
     {    
     
-    TRACE( T_LIT("CVIMPSTEngineContactMgmtExtention::HandleSessionContextEventL start"));
+	TRACER_AUTO;
     
     switch( aEvent.GetInterfaceId() )
         {
         case MXIMPRequestCompleteEvent::KInterfaceId:
         	{
-            TRACE( T_LIT("InsideCallbackswitch::MXIMPRequestCompleteEvent"));
+        	TRACE( "InsideCallbackswitch::MXIMPRequestCompleteEvent");
             if ( (EVIMPSTXimpOperationAddContact == aXimpOperation) 
              		|| (EVIMPSTXimpOperationDeleteContact == aXimpOperation) )
 	            {            
@@ -308,7 +302,6 @@
             break;
             }
         }
-   	TRACE( T_LIT("CVIMPSTEngineContactMgmtExtention::HandleSessionContextEventL end"));	
     }    
 
 //----------------------------------------------------------------------------
--- a/uiservicetab/vimpstengine/src/cvimpstenginecvlistener.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstengine/src/cvimpstenginecvlistener.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -22,7 +22,7 @@
 #include "mvimpststorageserviceview.h"
 #include "mvimpststoragecontact.h"
 #include "cvimpstengineservicetablefetcher.h"
-#include "vimpstdebugtrace.h"
+#include "uiservicetabtracer.h"
 
 //system includes
 #include <e32base.h>
@@ -49,14 +49,14 @@
 //
 void CVIMPSTEngineCVListener::ConstructL()
     {
-    TRACE( T_LIT("CVIMPSTEngineCVListener::ConstructL() start"));
+	TRACER_AUTO;
+    
     // subscribing for the property published by conversation view.
     // attach the properties.
     User::LeaveIfError( iProperty.Attach(KConvViewUID,KXspIdServiceIDKey  ) );
     //start listening property published by CV (to get Contact link and Display name.).
     iProperty.Subscribe( iStatus );
     SetActive();
-    TRACE( T_LIT("CVIMPSTEngineCVListener::ConstructL() end"));
     }
 
 // --------------------------------------------------------------------------
@@ -88,7 +88,7 @@
 //
 void CVIMPSTEngineCVListener::RunL()
     {
-    TRACE( T_LIT("CVIMPSTEngineCVListener::RunL() start"));
+	TRACER_AUTO;
     // resubscribe before processing new value to prevent missing updates
     //TBuf <KMaxSerIdXspIdLen> serId_usrId;
     HBufC16* serId_usrId = HBufC16::NewLC(KMaxSerIdXspIdLen);
@@ -157,7 +157,7 @@
                 userDetailsPtr.Append(KDelimiter());
                 userDetailsPtr.Append( *contactLink );
                 
-                TRACE( T_LIT("CVIMPSTEngineCVListener::RunL publishing = %S"),&(*userDetails));        
+                TRACE( " publishing = %S",&(*userDetails)); 
                 
                 iProperty.Set(KConvViewUID,KContactLinkDisplayNameKey,*userDetails);
                 CleanupStack::PopAndDestroy(3);//userDetails,contactLink,dispName
@@ -166,7 +166,7 @@
             // contact not found
             else
                 {
-                TRACE( T_LIT("CVIMPSTEngineCVListener::RunL publishing null display name"));        
+            TRACE( "publishing null display name"); 
                 iProperty.Set(KConvViewUID,KContactLinkDisplayNameKey,KNullDesC());
                 }
             }
@@ -179,7 +179,6 @@
     		}  
     iProperty.Subscribe( iStatus );
     SetActive();
-    TRACE( T_LIT("CVIMPSTEngineCVListener::RunL() end"));
     }
 
 // ---------------------------------------------------------
@@ -188,7 +187,7 @@
 //
 void CVIMPSTEngineCVListener::DoCancel()
     {    
-    TRACE( T_LIT("CVIMPSTEngineCVListener::DoCancel() start"));
+	TRACER_AUTO;
     iProperty.Cancel();
     }
   		     
@@ -198,7 +197,7 @@
 //
 TInt CVIMPSTEngineCVListener::RunError( TInt aError )
     {
-    TRACE( T_LIT("CVIMPSTEngineCVListener::RunError() start"));
+    TRACER_AUTO;
     if ( KErrCancel != aError )
         {
         iProperty.Subscribe( iStatus );
--- a/uiservicetab/vimpstengine/src/cvimpstenginefactory.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstengine/src/cvimpstenginefactory.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -30,7 +30,7 @@
 #include <spnotifychange.h>
 #include <spsettings.h>
 
-#include "vimpstdebugtrace.h"
+#include "uiservicetabtracer.h"
 #include "cvimpstenginecvlistener.h"
 
 // ================= MEMBER FUNCTIONS =======================
@@ -43,6 +43,7 @@
 //
 EXPORT_C MVIMPSTEngineFactory* CVIMPSTEngineFactory::InstanceL()
     {
+	TRACER_AUTO;
     CVIMPSTEngineFactory* singleton;
     singleton = static_cast<CVIMPSTEngineFactory*> (Dll::Tls());
     if( !singleton )
@@ -63,6 +64,7 @@
 //
 EXPORT_C void CVIMPSTEngineFactory::Release()
     {
+	TRACER_AUTO;
     CVIMPSTEngineFactory* singleton;
     singleton = static_cast<CVIMPSTEngineFactory*>(Dll::Tls());
     if( singleton && !singleton->DecreamentRefereneCount())
@@ -92,7 +94,7 @@
 //
 void CVIMPSTEngineFactory::ConstructL()
     {
-    
+	TRACER_AUTO;
     CVIMPSTStorageManagerFactory::InitialiseLibraryL();
     
     //only 1 instance of iServiceTableFetcher shared between services
@@ -179,7 +181,7 @@
 void CVIMPSTEngineFactory::GetServiceEnginePtr
 					(RPointerArray<MVIMPSTEngine>& serviceIdArray) const
 	{
-	
+	TRACER_AUTO;
 	TInt count = iServiceItems.Count() ;
 	
     // iterate the service array
@@ -198,6 +200,7 @@
 TInt CVIMPSTEngineFactory::FindService(
 				TUint aServiceId ) const
 	{
+	TRACER_AUTO;
 	TInt count = iServiceItems.Count() ;
 	TInt ret = KErrNotFound;
     // iterate the service array
@@ -222,8 +225,8 @@
 void CVIMPSTEngineFactory::HandleNotifyChange(
     TServiceId aServiceId )
     {
-    TRACE( T_LIT("CVIMPSTEngineFactory::HandleNotifyChange start"));        
-    TRACE( T_LIT("HandleNotifyChange() serviceid: %d"), aServiceId );	
+	TRACER_AUTO;
+	TRACE( "serviceid: %d", aServiceId );	
 	
 	TBool newService = EFalse;
 	          
@@ -234,7 +237,6 @@
 	        
     TRAP_IGNORE( iServiceTableFetcher->DoHandleNotifyChangeL( aServiceId, newService, GetEngine(aServiceId) ) );
     
-    TRACE( T_LIT("CVIMPSTEngineFactory::HandleNotifyChange end"));        
     }
 
 // ---------------------------------------------------------------------------
@@ -243,9 +245,7 @@
 //
 void CVIMPSTEngineFactory::HandleError( TInt /*aError*/ )
     {
-    TRACE( T_LIT("CVIMPSTEngineFactory::HandleError() start"));
-
-    TRACE( T_LIT("CVIMPSTEngineFactory::HandleError() end"));
+	TRACER_AUTO;
         
     }			
     
@@ -255,6 +255,7 @@
 //
 MVIMPSTEngine* CVIMPSTEngineFactory::GetEngine( TServiceId aServiceId )
     {
+	TRACER_AUTO;
     TInt count = iServiceItems.Count();
     MVIMPSTEngine* engine = NULL;
     for(int i=0 ; i<count ; i++)
--- a/uiservicetab/vimpstengine/src/cvimpstengineimsubservice.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstengine/src/cvimpstengineimsubservice.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -36,7 +36,7 @@
 #include "cimcachefactory.h"
 #include "mimcacheaccessor.h"
 
-#include "vimpstdebugtrace.h"
+#include "uiservicetabtracer.h"
 
 //system includes
 #include <e32property.h>
@@ -53,8 +53,8 @@
 								MVIMPSTEngineServiceConnectionEventObserver& aObserver
 								 )
     {
-    TRACE( T_LIT("CVIMPSTEngineIMSubService::NewL start"));
-    TRACE( T_LIT("NewL() ServiceId: %d"), aServiceId );
+	TRACER_AUTO;
+    TRACE( "ServiceId: %d", aServiceId );
     
     CVIMPSTEngineIMSubService* self = CVIMPSTEngineIMSubService::NewLC(
     												aServiceId,
@@ -63,7 +63,6 @@
     												aObserver );
     CleanupStack::Pop( self );
     
-	TRACE( T_LIT("CVIMPSTEngineIMSubService::NewL end"));
     return self;
     }
 
@@ -80,9 +79,8 @@
 								MVIMPSTEngineServiceConnectionEventObserver& aObserver
 								 )
 	{
-	
-	TRACE( T_LIT("CVIMPSTEngineIMSubService::NewLC start"));
-	TRACE( T_LIT("NewLC() ServiceId: %d"), aServiceId );
+	TRACER_AUTO;
+	TRACE( "ServiceId: %d", aServiceId );
 	
     CVIMPSTEngineIMSubService* self = new (ELeave) CVIMPSTEngineIMSubService(aServiceId, 
     												aCchHandler, aTableFetcher,
@@ -90,7 +88,6 @@
     CleanupStack::PushL( self );
     self->ConstructL();
     
-    TRACE( T_LIT("CVIMPSTEngineIMSubService::NewLC end"));
     return self;
 	}
 
@@ -101,7 +98,7 @@
 
 CVIMPSTEngineIMSubService::~CVIMPSTEngineIMSubService()
 	{
-	TRACE( T_LIT("CVIMPSTEngineIMSubService::~CVIMPSTEngineIMSubService start"));
+	TRACER_AUTO;
 	
 	iChatObserver.Reset();
     iChatObserver.Close();
@@ -110,7 +107,6 @@
 		
 	ReleaseIMCacheAccessor();	
 	
-	TRACE( T_LIT("CVIMPSTEngineIMSubService::~CVIMPSTEngineIMSubService end"));
  	}
 
 
@@ -122,7 +118,7 @@
 void CVIMPSTEngineIMSubService::ConstructL()
 	{			
 	
-	TRACE( T_LIT("CVIMPSTEngineIMSubService::ConstructL start"));
+	TRACER_AUTO;
 	TCCHSubserviceState serviceState = ECCHUninitialized;    
     TInt error = iCchHandler.GetServiceState( 
         			iServiceId, ECCHIMSub, serviceState );
@@ -131,10 +127,8 @@
 	
 	iCchHandler.RegisterCchObserverL(this,ECCHIMSub);       
 	
-    TRACE( T_LIT("ConstructL() ResolveServiceStateL returned ServiceState: %d"), 
-							iServiceState );
+    TRACE( "ResolveServiceStateL returned ServiceState: %d", iServiceState );
  
-    TRACE( T_LIT("CVIMPSTEngineIMSubService::ConstructL end"));
     
     }
 
@@ -167,7 +161,7 @@
 
 void CVIMPSTEngineIMSubService::RegisterChatObserver(MVIMPSTEngineIMSubServiceEventObserver* aObserver)
 	{
-	TRACE( T_LIT("CVIMPSTEngineIMSubService::RegisterChatObserver start"));	
+	TRACER_AUTO;
 	if (aObserver)
 		{
 		TInt index = iChatObserver.Find(aObserver);
@@ -176,7 +170,6 @@
 		            iChatObserver.Append( aObserver );   
 		            }
 		}    	
-	TRACE( T_LIT("CVIMPSTEngineIMSubService::RegisterChatObserver end"));
 	
 	}
 
@@ -187,7 +180,7 @@
 
 void CVIMPSTEngineIMSubService::UnRegisterChatObserver(MVIMPSTEngineIMSubServiceEventObserver* aObserver)
 	{
-	TRACE( T_LIT("CVIMPSTEngineIMSubService::UnRegisterChatObserver start"));
+	TRACER_AUTO;
 	
 	if (aObserver)
 		{
@@ -202,7 +195,6 @@
 		        
 	    
 		}
-	TRACE( T_LIT("CVIMPSTEngineIMSubService::UnRegisterChatObserver end"));
 			
 	}
 //-----------------------------------------------------------------------------
@@ -213,8 +205,8 @@
 
 void CVIMPSTEngineIMSubService::HandleIMCacheEventL(TIMCacheEventType aEventType, TAny* aChatMessage  )
 	{
-	TRACE( T_LIT("CVIMPSTEngineIMSubService::HandleIMCacheEventL start"));
-	TRACE( T_LIT("HandleIMCacheEventL() TIMCacheEventType: %d"), aEventType );
+	TRACER_AUTO;
+	TRACE( "TIMCacheEventType: %d", aEventType );
 							
 	switch( aEventType )
 	    {
@@ -229,16 +221,14 @@
 	        if ( chatData->iBuddyId )
 	            {
 	            TPtrC buddyId = chatData->iBuddyId->Des();
-	            TRACE( T_LIT("HandleIMCacheEventL() EIMCacheUnreadMessage for %S"), 
-	                    &buddyId );
-
+	            TRACE( "EIMCacheUnreadMessage for %S",  &buddyId );
 	            NotifyObserversL(TVIMPSTEnums::EIMUnreadMessage,buddyId);               
 	            }
 	        break;	
 	        }
 	    case EIMCacheUnreadChange :
 	        {
-	        TRACE( T_LIT("HandleIMCacheEventL() EIMCacheUnreadChange") );
+	        TRACE( "EIMCacheUnreadChange");
 	        if (!aChatMessage)
 	            {
 	            return; 
@@ -249,8 +239,7 @@
 	            return;
 	            }
 	        TPtrC buddyId = chatItem->iBuddyId->Des();
-	        TRACE( T_LIT("HandleIMCacheEventL() EIMCacheChatClosed for %S"), 
-	                &buddyId );
+	        TRACE( "EIMCacheChatClosed for %S",  &buddyId );  
 	        NotifyObserversL(TVIMPSTEnums::EIMUnreadChange, buddyId );  // ETrue for Closed conversation
 	        break;
 	        }
@@ -266,8 +255,7 @@
 	            return;
 	            }
 	        TPtrC buddyId = chatItem->iBuddyId->Des();
-	        TRACE( T_LIT("HandleIMCacheEventL() EIMCacheChatClosed for %S"), 
-	                &buddyId );
+	        TRACE("EIMCacheChatClosed for %S", &buddyId );
 	        NotifyObserversL(TVIMPSTEnums::EIMChatStarted, buddyId );  // ETrue for Closed conversation 
 	        break;  
 	        }
@@ -283,8 +271,7 @@
 	            return;
 	            }
 	        TPtrC buddyId = chatItem->iBuddyId->Des();
-	        TRACE( T_LIT("HandleIMCacheEventL() EIMCacheChatClosed for %S"), 
-	                &buddyId );
+	        TRACE( "EIMCacheChatClosed for %S", &buddyId );
 	        NotifyObserversL(TVIMPSTEnums::EIMChatClosed, buddyId );                     
 	        break;  
 	        }
@@ -304,7 +291,6 @@
 	        }
 	    }
 	
-	TRACE( T_LIT("CVIMPSTEngineIMSubService::HandleIMCacheEventL end"));
 	
 	}
 
@@ -314,18 +300,16 @@
 //-----------------------------------------------------------------------------    
 TInt CVIMPSTEngineIMSubService::GetUnreadCountL(const TDesC& aBuddyId ) 
 	{
-	TRACE( T_LIT("CVIMPSTEngineIMSubService::GetUnreadCountL start"));
-	TRACE( T_LIT("GetUnreadCountL() ServiceId: %d BuddyId: %S"), 
-							iServiceId, &aBuddyId );
+	TRACER_AUTO;
+	TRACE( " ServiceId: %d BuddyId: %S", iServiceId, &aBuddyId );
 							
 	TInt count = 0;
 	if( iIMCacheAccessor )
 		{
 		count = iIMCacheAccessor->GetUnreadMessageCountL(aBuddyId);
-		TRACE( T_LIT("GetUnreadCountL() iIMCacheAccessor returns with %d"), count );
+		TRACE( "iIMCacheAccessor returns with %d", count );
 		}
 	
-	TRACE( T_LIT("CVIMPSTEngineIMSubService::GetUnreadCountL end"));
 	return count;
 	}
 
@@ -336,8 +320,8 @@
 // 
 TVIMPSTEnums::TVIMPSTRegistrationState CVIMPSTEngineIMSubService::SubServiceState() const
 	{
-	TRACE( T_LIT("SubServiceState() ServiceId: %d ServiceState: %d"), 
-							iServiceId, iServiceState );
+	TRACER_AUTO;
+	TRACE( "ServiceId: %d ServiceState: %d",iServiceId, iServiceState );
 	return iServiceState;
 	}
 
@@ -349,20 +333,18 @@
 //-----------------------------------------------------------------------------    
 TBool CVIMPSTEngineIMSubService::IsConversationExistL(const TDesC& aBuddyId) const
 	{
-	
-	TRACE( T_LIT("CVIMPSTEngineIMSubService::IsConversationExistL start"));
-	TRACE( T_LIT("IsConversationExistL() Buddy Id : %S"), &aBuddyId );
+	TRACER_AUTO;
+	TRACE( "Buddy Id : %S", &aBuddyId );
 	
 	TInt exist = EFalse;
 	
 	if( iIMCacheAccessor )
 		{
 		exist = iIMCacheAccessor->IsConversationExistL( aBuddyId );	
-		TRACE( T_LIT("IsConversationExistL() iIMCacheAccessor returns with %d"), exist );
+		TRACE( "iIMCacheAccessor returns with %d", exist );
 		}
 	
-	TRACE( T_LIT("IsConversationExistL() Exist: %d"), exist );	
-	TRACE( T_LIT("CVIMPSTEngineIMSubService::IsConversationExistL end"));		
+	TRACE( "Exist: %d", exist );	
 	return exist; 
   	}
 
@@ -372,17 +354,16 @@
 //-----------------------------------------------------------------------------
 void CVIMPSTEngineIMSubService::CloseConversationL( const TDesC& aContactId )
     {
-    TRACE( T_LIT("CVIMPSTEngineIMSubService::CloseConversationL start"));
-    TRACE( T_LIT("CloseConversationL() Buddy Id : %S"), &aContactId  );
+	TRACER_AUTO;
+    TRACE( "Buddy Id : %S", &aContactId  );
     
     if( IsConversationExistL(aContactId) )
         {
-        TRACE( T_LIT("CloseConversationL() iIMCacheAccessor CloseConversationL to be called") );
+    TRACE( "iIMCacheAccessor CloseConversationL to be called" );
         iIMCacheAccessor->CloseConversationL( aContactId );
-       	TRACE( T_LIT("CloseConversationL() iIMCacheAccessor CloseConversationL Done") );
+    	TRACE( "iIMCacheAccessor CloseConversationL Done" );
         }
     
-    TRACE( T_LIT("CVIMPSTEngineIMSubService::CloseConversationL end"));
     }
 //-----------------------------------------------------------------------------
 // CVIMPSTEngineIMSubService::GetOpenChatListL
@@ -390,7 +371,7 @@
 //-----------------------------------------------------------------------------
 RArray<SIMCacheChatItem> CVIMPSTEngineIMSubService::GetOpenChatListL()
     {
-    TRACE( T_LIT("CloseConversationL() iIMCacheAccessor GetOpenChatListL called") );
+	TRACER_AUTO;
     RArray<SIMCacheChatItem> item;
     if(iIMCacheAccessor)
         {
@@ -407,13 +388,12 @@
 										TCCHSubserviceState aState, 
             							TInt aServiceError )
     {
-    
-    TRACE( T_LIT("CVIMPSTEngineIMSubService::ResolveServiceStateL start"));    
+	TRACER_AUTO;
         
     TVIMPSTEnums::TVIMPSTRegistrationState state = TVIMPSTEnums::ESVCENotRegistered;       
     
-    TRACE( T_LIT("ResolveServiceStateL() iServiceId: %d, ServiceState: %d"), 
-    							iServiceId, aState );    	
+    
+    TRACE( "iServiceId: %d, ServiceState: %d", iServiceId, aState );  
 
     TBool handleServiceStates = ETrue;
     if ( aServiceError && ECCHDisabled != aState )
@@ -422,7 +402,7 @@
 		//Still API from CCH is required to know whether ALR is supported or not
         if ( (KCCHErrorInvalidSettings != aServiceError) && (ECCHConnecting == aState) )        
             {   
-            TRACE( T_LIT("ResolveServiceStateL() ESVCEWaitingForNetwork") );
+        TRACE("ESVCEWaitingForNetwork" );
             handleServiceStates = EFalse;  
             state = TVIMPSTEnums::ESVCEWaitingForNetwork;	           
             }
@@ -434,7 +414,7 @@
             {
             case ECCHEnabled:
                 {
-                TRACE( T_LIT("ResolveServiceStateL() ESVCERegistered") );
+                TRACE( "ESVCERegistered" );
                 CreateIMCacheAccessorL();
                 state = TVIMPSTEnums::ESVCERegistered;
                 }
@@ -442,7 +422,7 @@
 
             case ECCHDisconnecting:      
                 {
-                TRACE( T_LIT("ResolveServiceStateL() ESVCENetworkDisConnecting") );                
+                TRACE( "ESVCENetworkDisConnecting" );          
                 state = TVIMPSTEnums::ESVCENetworkDisConnecting;
                 }
                 break;
@@ -450,7 +430,7 @@
             case ECCHUninitialized:
             case ECCHDisabled:  
                 {
-                TRACE( T_LIT("ResolveServiceStateL() ESVCENotRegistered") );
+                TRACE( "ESVCENotRegistered" );
                 ReleaseIMCacheAccessor();
                 state = TVIMPSTEnums::ESVCENotRegistered;
                 }
@@ -458,7 +438,7 @@
                 
             case ECCHConnecting:               
                 {
-                TRACE( T_LIT("ResolveServiceStateL() ESVCENetworkConnecting") );               
+                TRACE( "ESVCENetworkConnecting" );   
                 state = TVIMPSTEnums::ESVCENetworkConnecting;
                 }
                 break;
@@ -468,7 +448,6 @@
             }
         }        
         
-	TRACE( T_LIT("CVIMPSTEngineIMSubService::ResolveServiceStateL end"));
 	        
     return state;  
 	
@@ -481,8 +460,9 @@
 //
 TVIMPSTEnums::SubServiceType CVIMPSTEngineIMSubService::Type() const	
 	{
-	TRACE( T_LIT("SubServiceType() Type : %d"), iType );
-	TRACE( T_LIT("CVIMPSTEngineIMSubService: [0x%x]"), this );		    	
+	TRACER_AUTO;
+	TRACE("SubServiceType() Type : %d", iType );
+	TRACE("CVIMPSTEngineIMSubService: [0x%x]", this );
 	return iType;	
 	}
 
@@ -497,10 +477,8 @@
             TCCHSubserviceState aState, 
             TInt aServiceError )
 	{
-	
-	TRACE( T_LIT("CVIMPSTEngineIMSubService::CchEventOccuredL start"));
-	TRACE( T_LIT("CchEventOccuredL() TCCHSubserviceState : %d, ServiceErr: %d"), 
-									aState, aServiceError );
+	TRACER_AUTO;
+	TRACE( "TCCHSubserviceState : %d, ServiceErr: %d", aState, aServiceError );
 	
     if ( aServiceError && ECCHDisabled != aState )
         {
@@ -517,7 +495,6 @@
         iObserver.HandleServceConnectionEventL();
         }	
 	
-	TRACE( T_LIT("CVIMPSTEngineIMSubService::CchEventOccuredL end"));
 	
 	}
 
@@ -529,10 +506,8 @@
 void CVIMPSTEngineIMSubService::DoHandleCchErrorL( 
     TInt aServiceError )
     {
-    
-    TRACE( T_LIT("CVIMPSTEngineIMSubService::DoHandleCchErrorL start"));
-    TRACE( T_LIT("DoHandleCchErrorL() ServiceErr: %d"), 
-									aServiceError );
+	TRACER_AUTO;
+	TRACE( "ServiceErr: %d", aServiceError );
 									
     switch ( aServiceError )
         {
@@ -582,7 +557,6 @@
             break;
         }
     
-    TRACE( T_LIT("CVIMPSTEngineIMSubService::DoHandleCchErrorL end"));
     
     }
 
@@ -593,15 +567,13 @@
 //     
 void CVIMPSTEngineIMSubService::CreateIMCacheAccessorL()
 	{
-	TRACE( T_LIT("CVIMPSTEngineIMSubService::CreateIMCacheAccessorL start"));
-	
+	TRACER_AUTO;
 	if (!iIMCacheFactory)
 	    {
 	    HBufC* ownData = iCchHandler.GetConParametersL(ECchUsername);//
 	    CleanupStack::PushL(ownData);
 	    TPtr ownDataPtr = ownData->Des();
-	    TRACE( T_LIT("DoHandleCchErrorL() ServiceErr: %S"), 
-	            &ownDataPtr );
+	    TRACE( "ServiceErr: %S",&ownDataPtr );
 	    // im cache factory
 	    iIMCacheFactory = CIMCacheFactory::InstanceL(); 
 
@@ -615,7 +587,6 @@
 
 	    CleanupStack::PopAndDestroy(ownData);
 	    }
-	TRACE( T_LIT("CVIMPSTEngineIMSubService::CreateIMCacheAccessorL end"));
 	}
 
 // ---------------------------------------------------------------------------
@@ -624,7 +595,7 @@
 //	
 void CVIMPSTEngineIMSubService::ReleaseIMCacheAccessor()	
 	{
-	TRACE( T_LIT("CVIMPSTEngineIMSubService::ReleaseIMCacheAccessor start"));
+	TRACER_AUTO;
 	
 	if( iIMCacheAccessor )
 	  	{
@@ -638,7 +609,6 @@
 		iIMCacheFactory = NULL;
 		}
 	
-	TRACE( T_LIT("CVIMPSTEngineIMSubService::ReleaseIMCacheAccessor end"));
 	}
 
 
@@ -648,13 +618,12 @@
 //
 void CVIMPSTEngineIMSubService::NotifyObserversL( TVIMPSTEnums::TIMEventType aEventType ,const TDesC& aBuddyId )
     {
-    TRACE( T_LIT("CVIMPSTEngineIMSubService::NotifyObserversL start"));
+	TRACER_AUTO;
     TInt count = iChatObserver.Count();
     for (TInt index=0; index<count; index++)		
         {
         iChatObserver[index]->HandleChatMessageEventL(aEventType ,aBuddyId );
         }	
-    TRACE( T_LIT("CVIMPSTEngineIMSubService::NotifyObserversL end"));
     }
 
 //  End of File
--- a/uiservicetab/vimpstengine/src/cvimpstenginepresencesubservice.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstengine/src/cvimpstenginepresencesubservice.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -73,7 +73,7 @@
 
 //Presence Observer
 #include "mvimpstenginepresencesubserviceeventobserver.h"
-#include "vimpstdebugtrace.h"
+#include "uiservicetabtracer.h"
 #include "vimpstcustomcleanupapi.h" //For customized cleanup function
 #include "mvimpstengineserviceconnectioneventobserver.h"
 
@@ -113,8 +113,7 @@
     iAvatarSupported( EFalse ),
     iIsClearingAvatar(EFalse)
         {
-        TRACE( T_LIT("CVIMPSTEnginePrecenseSubService::CVIMPSTEnginePrecenseSubService start")); 
-        TRACE( T_LIT("CVIMPSTEnginePrecenseSubService::CVIMPSTEnginePrecenseSubService end"));
+	TRACER_AUTO;
         }
 
 // ---------------------------------------------------------------------------
@@ -123,7 +122,7 @@
 //
 void CVIMPSTEnginePresenceSubService::ConstructL()
     {
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::ConstructL start")); 
+	TRACER_AUTO;
 
     iCchHandler.RegisterCchObserverL(this,ECCHPresenceSub);
 
@@ -145,7 +144,6 @@
 	iLogoutRequest = EFalse;
 	iSubscribeToAuthList = EFalse;
 	iAutoAccept = EFalse;
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::ConstructL end")); 
 
     }
 
@@ -160,11 +158,10 @@
         CVIMPSTEngineSessionCntxtObserver& aXimpEventObserver,
         MVIMPSTEngineServiceConnectionEventObserver& aObserver )
     {
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::NewL start")); 
+	TRACER_AUTO;
     CVIMPSTEnginePresenceSubService* self = NewLC( aServiceId,aCchHandler, aTableFetcher, 
             aXimpEventObserver,aObserver );
     CleanupStack::Pop(self);
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::NewL end"));
     return self;
     }
 
@@ -179,12 +176,11 @@
         CVIMPSTEngineSessionCntxtObserver& aXimpEventObserver,
         MVIMPSTEngineServiceConnectionEventObserver& aObserver )
     {
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::NewLC start")); 
+	TRACER_AUTO;
     CVIMPSTEnginePresenceSubService* self =
     new (ELeave) CVIMPSTEnginePresenceSubService( aServiceId,aCchHandler, aTableFetcher,  aXimpEventObserver,aObserver);
     CleanupStack::PushL(self);
     self->ConstructL();
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::NewLC end")); 
     return self;
     }
 
@@ -195,7 +191,7 @@
 //
 CVIMPSTEnginePresenceSubService::~CVIMPSTEnginePresenceSubService()
     {
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::NewLC start")); 
+	TRACER_AUTO;
 	
 	iCchHandler.UnRegisterCchObserver(ECCHPresenceSub);
     
@@ -205,7 +201,6 @@
     delete iBlockedListMgr;
     iBlockedListMgr = NULL;
        
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::NewLC end")); 
     }
 
 // ---------------------------------------------------------------------------
@@ -216,7 +211,7 @@
 
 TVIMPSTEnums::TVIMPSTRegistrationState CVIMPSTEnginePresenceSubService::SubServiceState() const
 	{
-	TRACE( T_LIT("CVIMPSTEnginePresenceSubService::ServiceState start")); 
+	TRACER_AUTO;
 	return iServiceState;
 	}
 
@@ -227,8 +222,8 @@
 //
 TVIMPSTEnums::SubServiceType CVIMPSTEnginePresenceSubService::Type() const
 	{
-	TRACE( T_LIT("CVIMPSTEnginePresenceSubService::Type") ); 
-	TRACE( T_LIT("CVIMPSTEnginePresenceSubService: [0x%x]"), this );		    	
+	TRACER_AUTO;
+	TRACE( "CVIMPSTEnginePresenceSubService: [0x%x]", this );
 	return TVIMPSTEnums::EPresence;
 	}
 
@@ -240,13 +235,12 @@
 
 TBool CVIMPSTEnginePresenceSubService::Enabled()
     {
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::Enabled start")); 
+	TRACER_AUTO;
     TBool ret = EFalse;
     if( TVIMPSTEnums::ESVCERegistered == iServiceState)
         {
         ret = ETrue;
         }
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::Enabled end")); 
     return ret;    
     }
 
@@ -256,7 +250,7 @@
 //
 void CVIMPSTEnginePresenceSubService::RetrieveSubscribedListL()
     {
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::RetrieveSubscribedListL start")); 
+	TRACER_AUTO;
 
     //Create group id
     TBuf<KUriMaxLength> buffer( KListNameAllBuddy );
@@ -273,7 +267,6 @@
     requestMapper->CreateRequestL(operationId,EFalse,EVIMPSTXimpOperationGetSubscribedList);
     CleanupStack::PopAndDestroy(); // groupList
     // list retrieving ok. Waiting for list.;
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::RetrieveSubscribedListL end")); 
     }
 
 // ---------------------------------------------------------------------------
@@ -282,7 +275,7 @@
 //
 void CVIMPSTEnginePresenceSubService::SubscribePresenceOfSingleContactL( const TDesC& aUriOfTheContact)
     {
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::SubscribePrecenseOfSingleContactL start"));
+	TRACER_AUTO;
      __ASSERT_ALWAYS( aUriOfTheContact.Length(), User::Leave( KErrArgument ) );		
      //if anything is there with colon eg sip:user@presence1. strip the part before :
     TInt len = aUriOfTheContact.Find(_L(":"));
@@ -296,10 +289,9 @@
     namePtr.Append(KColon);
     namePtr.Append(buddyId);
     
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::SubscribeToPresenceCacheL: %S"), &namePtr );
+    TRACE("SubscribeToPresenceCacheL: %S", &namePtr );
     iPresenceCacheReader->SubscribePresenceBuddyChangeL(*name);
     CleanupStack::PopAndDestroy(name); //  name    
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::SubscribePrecenseOfSingleContactL end"));  
     }
 
 // ---------------------------------------------------------------------------
@@ -310,7 +302,7 @@
 void CVIMPSTEnginePresenceSubService::UnSubscribePresenceOfSingleContactL(
         const TDesC& aUriOfTheContact )
     {
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::UnsubscribePrecenseOfSingleContactL start"));   
+	TRACER_AUTO;
     HBufC* name = HBufC::NewLC( KPropertyMaxLength );
     TPtr namePtr( name->Des() );
     namePtr.Zero();
@@ -319,10 +311,9 @@
     namePtr.Append(KColon);
     namePtr.Append(aUriOfTheContact);
     
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::UnSubscribeToPresenceCacheL: %S"), &namePtr);
+    TRACE( "UnSubscribeToPresenceCacheL: %S", &namePtr);
     iPresenceCacheReader->UnSubscribePresenceBuddyChangeL(*name);
     CleanupStack::PopAndDestroy(name); //  name                  
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::UnsubscribePrecenseOfSingleContactL end")) ;   
     }
 
 // ---------------------------------------------------------------------------
@@ -335,7 +326,7 @@
         const MXIMPContext& /*aContext*/,
         const MXIMPBase& aEvent )
     {
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::DoHandlePresentityGroupContentEventL start"));
+	TRACER_AUTO;
 	  	      
     const MPresentityGroupContentEvent& event =
     	*TXIMPGetInterface< const MPresentityGroupContentEvent >::From( 
@@ -346,14 +337,13 @@
 	TInt supportedFeatures = iXimpEventObserver.GetSupportedFeatures();
   	if(EVIMPSTFeatureFetch & supportedFeatures)
 		{   
-	    TRACE( T_LIT(" -> storing into respective service store" ));
+  	TRACE(" -> storing into respective service store" );
 	    StoreToVirtualStoreL( event );
 		}
 	//this is to ensure the presence for the local sotre contacts is not lost.
-	TRACE( T_LIT(" -> new member count: %d" ), event.NewMembersCount() );    
-    TRACE( T_LIT(" -> current member count: %d" ), event.CurrentMembersCount() );    
-    TRACE( T_LIT(" -> disappeared member count: %d" ), event.DisappearedMembersCount() );    
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::DoHandlePresentityGroupContentEventL end"));
+  	TRACE( "new member count: %d" , event.NewMembersCount() ); 
+    TRACE( " current member count: %d" , event.CurrentMembersCount() );  
+    TRACE( "disappeared member count: %d" , event.DisappearedMembersCount() );   
     }
 
 // ---------------------------------------------------------------------------
@@ -366,7 +356,7 @@
         const MXIMPContext& /*aContext*/,
         const MXIMPBase& aEvent )
     {
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::DoHandlePresenceGrantRequestListEventL start"));
+	TRACER_AUTO;
     TVIMPSTEnums::TVIMPSTPresenceRequestStatus autoAccept = iSettingsTableFetcher.PresenceRequestStatusL(iServiceId);
     if(autoAccept == TVIMPSTEnums::ESVCEPresenceRequestStatusAutoAccept)
         {
@@ -381,16 +371,16 @@
      							*TXIMPGetInterface<const MPresenceGrantRequestListEvent >::From( 
 								aEvent, MXIMPBase::EPanicIfUnknown );
 
-    TRACE( T_LIT(" -> new watcher count: %d" ), event.NewRequestsCount() );    
-    TRACE( T_LIT(" -> current watcher count: %d" ), event.CurrentRequestsCount() );    
+     TRACE("new watcher count: %d" , event.NewRequestsCount() );   
+     TRACE("current watcher count: %d" , event.CurrentRequestsCount() ); 
     HBufC* identbuf(NULL);
     HBufC* displayName(NULL);
     TInt newcount     = event.NewRequestsCount();
     TInt currentcount = event.CurrentRequestsCount();
     if(newcount)
         {
-        TRACE( T_LIT("CVIMPSTEnginePresenceSubService::DoHandlePresenceGrantRequestListEventL newcount =%d" ), newcount );    
-        TRACE( T_LIT("CVIMPSTEnginePresenceSubService::DoHandlePresenceGrantRequestListEventL iServiceState =%d" ), iServiceState );    
+    TRACE( " newcount =%d" , newcount );    
+    TRACE( "iServiceState =%d" , iServiceState );    
 
         for(TInt i=0; i<newcount; i++)
             {
@@ -398,10 +388,10 @@
             identbuf = reqInfo.RequestorId().Identity().AllocLC();
             displayName = reqInfo.RequestorDisplayName().AllocLC();
             TPtr identbufPtr = identbuf->Des();
-            TRACE( T_LIT(" -> identity: %S" ), &identbufPtr );   
+            TRACE( "identity: %S" , &identbufPtr );   
             if(identbuf->Length())
                 {
-                TRACE( T_LIT(" -> pass to command process" ));   
+            TRACE( " pass to command process" );   
                 if( iAutoAccept &&
                         TVIMPSTEnums::ESVCERegistered == iServiceState)
                     {
@@ -409,10 +399,10 @@
                     }
                  else if( iSubServiceObserver )
                     {
-                    TRACE( T_LIT(" -> informed observer." )); 
+                 TRACE( " informed observer." ); 
                     iSubServiceObserver->HandleAddRequestEventL( TVIMPSTEnums::EAddItem , *identbuf, *displayName);
                     }                    
-                TRACE( T_LIT(" -> pass to command process" )); 
+                TRACE( " pass to command process" );
                 }
             CleanupStack::PopAndDestroy( displayName );
             CleanupStack::PopAndDestroy( identbuf );
@@ -424,25 +414,24 @@
         identbuf = reqInfo.RequestorId().Identity().AllocLC();
         displayName  = reqInfo.RequestorDisplayName().AllocLC();
         TPtr identbufPtr = identbuf->Des();
-        TRACE( T_LIT(" -> identity: %S" ), &identbufPtr );   
+        TRACE( "identity: %S" , &identbufPtr );  
         if(identbuf->Length())
             {
-            TRACE( T_LIT(" -> pass to command process" ));   
+        TRACE( " pass to command process" );
             if( iAutoAccept)
                 {
                 TInt error = SendPresenceGrantPresentityL( identbufPtr, ETrue );                    
                 }
              else if( iSubServiceObserver )
                 {
-                TRACE( T_LIT(" -> informed observer." )); 
+             TRACE( " informed observer."); 
                 iSubServiceObserver->HandleAddRequestEventL(TVIMPSTEnums::EAddItem ,*identbuf, *displayName);
                 }      
-            TRACE( T_LIT(" -> pass to command process" )); 
+            TRACE( "pass to command process" ); 
             }
         CleanupStack::PopAndDestroy( displayName );
         CleanupStack::PopAndDestroy ( identbuf );
         }    
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::DoHandlePresenceGrantRequestListEventL end"));
 
     }
 
@@ -455,12 +444,12 @@
         TInt aServiceError )
     {
 
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::ResolveServiceStateL start"));    
+	TRACER_AUTO;
 
     TVIMPSTEnums::TVIMPSTRegistrationState state = TVIMPSTEnums::ESVCENotRegistered;       
 
-    TRACE( T_LIT("ResolveServiceStateL() iServiceId: %d, ServiceState: %d"), 
-            iServiceId, aState );       
+    
+    TRACE( " iServiceId: %d, ServiceState: %d",  iServiceId, aState ); 
 
     TBool handleServiceStates = ETrue;
     if ( aServiceError && ECCHDisabled != aState )
@@ -470,7 +459,7 @@
         //Not sure whether the below is right - have mailed to Markus for MoreInfo on this state
         if ( (KCCHErrorInvalidSettings != aServiceError) && (ECCHConnecting == aState) )        
             {   
-            TRACE( T_LIT("ResolveServiceStateL() ESVCEWaitingForNetwork") );
+            TRACE( " ESVCEWaitingForNetwork");
             handleServiceStates = EFalse;  
             //state = TVIMPSTEnums::ESVCEWaitingForNetwork;
             state = TVIMPSTEnums::ESVCENotRegistered; 
@@ -483,13 +472,13 @@
             {
             case ECCHEnabled:
                 {
-                TRACE( T_LIT("ResolveServiceStateL() ESVCERegistered") );
+                TRACE( "ESVCERegistered" );
                 state = TVIMPSTEnums::ESVCEUpdatingContacts;   
                 break;
                 }
             case ECCHDisconnecting:      
                 {
-                TRACE( T_LIT("ResolveServiceStateL() ESVCERegistered") );                
+                TRACE( " ESVCERegistered" );   
                 state = TVIMPSTEnums::ESVCENetworkDisConnecting;
                 }
                 break;
@@ -497,14 +486,14 @@
             case ECCHUninitialized:
             case ECCHDisabled:  
                 {
-                TRACE( T_LIT("ResolveServiceStateL() ESVCENotRegistered") );
+                TRACE( "ESVCENotRegistered");
                 state = TVIMPSTEnums::ESVCENotRegistered;                
                 }
                 break;
 
             case ECCHConnecting:               
                 {
-                TRACE( T_LIT("ResolveServiceStateL() ESVCENoNetworkConnecting") );                
+                TRACE( " ESVCENoNetworkConnecting");  
                 state = TVIMPSTEnums::ESVCENetworkConnecting;
                 }
                 break;
@@ -514,7 +503,6 @@
             }
         }        
 
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::ResolveServiceStateL end"));
 
     return state;  
 
@@ -531,9 +519,9 @@
         TInt aServiceError )
     {
 
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::CchEventOccuredL start"));
-    TRACE( T_LIT("CchEventOccuredL() TCCHSubserviceState : %d, ServiceErr: %d"), 
-            aState, aServiceError );
+	TRACER_AUTO;
+	
+    TRACE("TCCHSubserviceState : %d, ServiceErr: %d", aState, aServiceError );
 
     if ( aServiceError && ECCHDisabled != aState )
         {
@@ -566,7 +554,6 @@
 		    iObserver.HandleServceConnectionEventL();			}
         }   
 
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::CchEventOccuredL end"));
 
     }
 
@@ -579,21 +566,21 @@
         TInt aServiceError )
     {
 
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::DoHandleCchErrorL start"));
-    TRACE( T_LIT("DoHandleCchErrorL() ServiceErr: %d"), 
-            aServiceError );
+	TRACER_AUTO;
+	   TRACE( "ServiceErr: %d",  aServiceError );
 
     if ( aServiceError )
         {
         //unsubscribe can only be done, when bind is already done
         if(TVIMPSTEnums::EVIMPSTBindDone ==iXimpEventObserver.ContextBindStatus())
             {
-            TRACE( T_LIT("CVIMPSTEnginePresenceSubService::DoHandleCchErrorL unscribe and unbind"));
+            TRACE( "unscribe and unbind");
             TRAP_IGNORE( UnsubscribeListsL() ); 
             iXimpEventObserver.ServerUnBindL( ETrue );
             }
         }
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::DoHandleCchErrorL end"));
+
+
     }
 
 // ---------------------------------------------------------
@@ -606,7 +593,7 @@
 						         						  const TDesC8& aMimetype /*= KNullDesC8*/,
 						         						  TBool aIsAvatar /*= EFalse*/ )
     {
-	TRACE( T_LIT("CVIMPSTEnginePresenceSubService::PublishOwnPresenceL start"));
+	TRACER_AUTO;
     // Take handles to object factory and publish interface
     MPresencePublishing& publisher = iXimpEventObserver.XimpPresencePublishingL();
 
@@ -616,25 +603,25 @@
     MPresenceInfoFieldCollection& attributeFields = personPresence->Fields();
 	
  	MPresenceInfoField* infoField = NULL;
-	TRACE( T_LIT("PublishOwnPresenceL aIsAvatar: %d"),  aIsAvatar );
+ 	TRACE( "aIsAvatar: %d",  aIsAvatar );
 	// avatar field set || clear
 	if ( aIsAvatar )
         {
-        TRACE( T_LIT(" PublishOwnPresenceL adding avatar field"));
+	TRACE( " PublishOwnPresenceL adding avatar field");
         
      	infoField = iXimpEventObserver.PresenceObjectFactoryL().NewInfoFieldLC();
         MPresenceInfoFieldValueBinary* avatarField = iXimpEventObserver.PresenceObjectFactoryL().NewBinaryInfoFieldLC(); 
-        TRACE( T_LIT(" PublishOwnPresenceL processing image data"));
+        TRACE( " PublishOwnPresenceL processing image data");
         CVIMPSTEngineImageHandler* imageHandler = CVIMPSTEngineImageHandler::NewL();
         CleanupStack::PushL(imageHandler);
         // get the avatar content from the image processor
         // returns image content if the  processing succesful 
         
         HBufC8* avatarContent = imageHandler->ProcessImageFromFileL( aFilename , aMimetype);
-        TRACE( T_LIT(" PublishOwnPresenceL processing image data completed "));
+        TRACE( " PublishOwnPresenceL processing image data completed ");
         if ( avatarContent )
 			{
-			TRACE( T_LIT("PublishOwnPresenceL valid image data found "));
+        TRACE( "PublishOwnPresenceL valid image data found ");
 			CleanupStack::PushL(avatarContent);
 			// set a new avatar
 			avatarField->SetBinaryValueL(*avatarContent);
@@ -643,7 +630,7 @@
 			}
 		else
 			{
-			TRACE( T_LIT("PublishOwnPresenceL NULL image data found "));
+		TRACE("PublishOwnPresenceL NULL image data found ");
 			//  clear the avatar 
 			avatarField->SetBinaryValueL(KNullDesC8);
 			iIsClearingAvatar = ETrue;  //set iIsClearingAvatar to ETrue
@@ -658,7 +645,7 @@
 		attributeFields.AddOrReplaceFieldL(infoField ); // infofield ownership transfered
         CleanupStack::Pop(); // infoField
 		infoField = NULL;
-		TRACE( T_LIT(" PublishOwnPresenceL adding avatar field completed "));
+		TRACE( "adding avatar field completed ");
         }
 
     // availabilty field
@@ -700,7 +687,7 @@
     mapper->CreateRequestL(reqId, ETrue,EVIMPSTXimpOperationPublisOwnPresence);// waite here
     TInt error = iXimpEventObserver.GetCompletedReqResult(); // get the result error
     CleanupStack::PopAndDestroy(1); // myPresence
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::PublishOwnPresenceL end "));
+    
     return error;
     }
 
@@ -710,6 +697,7 @@
 // ---------------------------------------------------------    
 NPresenceInfo::TAvailabilityValues CVIMPSTEnginePresenceSubService::ConvertPresenceStatus(TVIMPSTEnums::TOnlineStatus aStatus)
     {
+	TRACER_AUTO;
     NPresenceInfo::TAvailabilityValues availablity;
     switch(aStatus)
         {
@@ -765,16 +753,14 @@
     //TODO::Figure out how to get the service name.
     // passed the service id to see the member count
     TInt error( KErrArgument );
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::FetchPresenceFormCache() start") );
+    TRACER_AUTO;
 	if( iServiceName )
 		{
 		TPtr serviceNamePtr = iServiceName->Des();
-		TRACE( T_LIT("CVIMPSTEnginePresenceSubService::FetchPresenceFormCache() - %S"), 
-		        &serviceNamePtr );
+		TRACE( "CVIMPSTEnginePresenceSubService::FetchPresenceFormCache() - %S", &serviceNamePtr );
 		// passed the service to register for notification
 		error = iPresenceCacheReader->AllBuddiesPresenceInService(*iServiceName, this );		
 		}
-	TRACE( T_LIT("CVIMPSTEnginePresenceSubService::FetchPresenceFormCache() end") ); 
 	return error;
     }
 
@@ -785,25 +771,25 @@
 void CVIMPSTEnginePresenceSubService::HandlePresenceReadL(TInt /*aErrorCode*/,
         RPointerArray<MPresenceBuddyInfo2>& aPresenceBuddyInfoList)
     {
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::HandlePresenceReadL start"));
+	TRACER_AUTO;
     // we have the ownership of  aPresenceBuddyInfoList : Push it to customize cleanupstack
     // aPresenceBuddyInfoList is collection of owned object and each object need to be deleted
     CustomCleanupResetAndDestroyPushL(aPresenceBuddyInfoList);
     MVIMPSTStorageServiceView* storage = 
     				CVIMPSTStorageManagerFactory::ContactListInterfaceL(iServiceId);
     TInt buddyCount = aPresenceBuddyInfoList.Count();
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::HandlePresenceReadL - count: %d" ), buddyCount );
+    TRACE( "count: %d" , buddyCount );
     for ( TInt i =0 ; i < buddyCount ; ++i)
 		{
-		TRACE( T_LIT("CVIMPSTEnginePresenceSubService::HandlePresenceReadL - buddy index: %d" ), i );
+    TRACE( " buddy index: %d" , i );
 		MPresenceBuddyInfo2* buddyinfo = aPresenceBuddyInfoList[i];
 		// read the buddyID : returns in XSP format
 		TPtrC buddyXSPId = buddyinfo->BuddyId();
-		TRACE( T_LIT("CVIMPSTEnginePresenceSubService::HandlePresenceReadL - Status Message: %s" ), &buddyXSPId );
+		TRACE( "Status Message: %s" , &buddyXSPId );
 		TPtrC buddyId = buddyXSPId.Right( buddyXSPId.Length() - iServiceName->Length() - KColon().Length());
 		// read the availability /presence state enum value 
 		MPresenceBuddyInfo2::TAvailabilityValues availabilityEnum = buddyinfo->Availability();
-		TRACE( T_LIT("CVIMPSTEnginePresenceSubService::HandlePresenceReadL - Availability ENUM value: %d" ), availabilityEnum );
+		TRACE( "Availability ENUM value: %d" , availabilityEnum );
 		TPtrC avablityText = buddyinfo->AvailabilityText();
 		// convert the presence cache enum value to service tab enum 
 		TVIMPSTEnums::TOnlineStatus status = ConvertPresenceCacheEnums( availabilityEnum , avablityText);
@@ -814,17 +800,17 @@
 			}
 		// read the  status message 
 		TPtrC statusMsg = buddyinfo->StatusMessage();
-		TRACE( T_LIT("CVIMPSTEnginePresenceSubService::HandlePresenceReadL - Status Message: %s" ), &statusMsg );
+		TRACE("Status Message: %s" , &statusMsg );
 		TPtrC8 avatarContent = buddyinfo->Avatar();
 		HBufC8* avatarScaledData = NULL;
 		if ( avatarContent.Length() )
 			{
-			TRACE( T_LIT("CVIMPSTEnginePresenceSubService::HandlePresenceReadL - avatarContent Content available" ) );
+			TRACE( "avatarContent Content available"  );
 			CVIMPSTEngineImageHandler* imageHandler = CVIMPSTEngineImageHandler::NewL();
 			CleanupStack::PushL(imageHandler);
-			TRACE( T_LIT("CVIMPSTEnginePresenceSubService::HandlePresenceReadL - imageHandler created " ) );
+			TRACE( "imageHandler created "  );
 		    avatarScaledData = imageHandler->ProcessImageFromDataL( avatarContent , KNullDesC8() );
-		    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::HandlePresenceReadL - ProcessImageFromDataL returned " ) );
+		    TRACE( "ProcessImageFromDataL returned " );
 			CleanupStack::PopAndDestroy();//imageHandler
 			}
 		if( avatarScaledData && avatarScaledData->Length() )
@@ -841,7 +827,6 @@
     aPresenceBuddyInfoList.ResetAndDestroy();
  
     CleanupStack::PopAndDestroy();  //  aPresenceBuddyInfoList
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::HandlePresenceReadL end"));
     }
 
 // ---------------------------------------------------------------------------
@@ -851,7 +836,7 @@
 void CVIMPSTEnginePresenceSubService::HandlePresenceNotificationL(TInt /*aErrorCode*/,
         MPresenceBuddyInfo2* aPresenceBuddyInfo)
     {
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::HandlePresenceNotificationL start"));    
+	TRACER_AUTO;
        
     if ( aPresenceBuddyInfo )
         {
@@ -860,7 +845,6 @@
         CleanupStack::PopAndDestroy(1); // aPresenceBuddyInfo
         
         }
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::HandlePresenceNotificationL end"));
     }
 
 
@@ -870,6 +854,7 @@
 // ---------------------------------------------------------    
 void  CVIMPSTEnginePresenceSubService::SubscribeForAuthorizationL()
     {
+	TRACER_AUTO;
     TXIMPRequestId req;
     MPresenceAuthorization& authorization = iXimpEventObserver.XimpAuthorizationL();
     req = authorization.SubscribePresenceGrantRequestListL();  
@@ -885,7 +870,7 @@
 // ---------------------------------------------------------    
 TInt CVIMPSTEnginePresenceSubService::SendPresenceGrantPresentityL( const TDesC& aContactId , TBool aResponse )
     {
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::SendPresenceGrantPresentityL stat"));  
+	TRACER_AUTO;
     __ASSERT_ALWAYS( aContactId.Length(), User::Leave( KErrArgument ) );
       
     // return the response to the server.    
@@ -924,12 +909,11 @@
         MVIMPSTStorageServiceView* storage = CVIMPSTStorageManagerFactory::ContactListInterfaceL(iServiceId) ;
         if(storage && ( !storage->IsLocalStore() || iAutoAccept  ) && aResponse )
             {   
-            TRACE( T_LIT("CVIMPSTEnginePresenceSubService::SendPresenceGrantPresentityL server store") );
+        TRACE( " server store" );
             storage->CreateNewContactL( aContactId,KNullDesC, ETrue, iAutoAccept ); // ETrue is for invitation item 
             } 
         }
     CleanupStack::PopAndDestroy(); //contactIdentity
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::SendPresenceGrantPresentityL end"));
     return error;
     }  
 // ---------------------------------------------------------
@@ -939,14 +923,14 @@
         const MXIMPBase& aEvent,
         TXimpOperation aXimpOperation /*= EVIMPSTXimpOperationNoOperation*/ )
     {
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::HandleSessionContextEventL start"));
+	TRACER_AUTO;
     TInt32 eventId = aEvent.GetInterfaceId();
 
     switch( aEvent.GetInterfaceId() )
         {
         case MXIMPRequestCompleteEvent::KInterfaceId:
             {
-            TRACE( T_LIT("InsideCallbackswitch::MXIMPRequestCompleteEvent"));
+            TRACE( "MXIMPRequestCompleteEvent");
             //temp fix TBD
             //Only use the operations that u r intertest in
             if ( aXimpOperation <= EVIMPSTXimpOperationUnsubscribe )  
@@ -960,35 +944,35 @@
                         event->CompletionResult().ResultCode(),
                         aEvent ) );
                 }
-            TRACE( T_LIT("InsideCallback::HandlePresenceContextEvent"));    
+            TRACE( "HandlePresenceContextEvent");  
 
             break;
             }
         case MXIMPContextStateEvent::KInterfaceId:
             {
-            TRACE( T_LIT("InsideCallbackswitch::MXIMPContextStateEvent"));
-            TRACE( T_LIT("InsideCallback::MXIMPContextStateEvent"));
+            TRACE( "InsideCallbackswitch::MXIMPContextStateEvent");
+            TRACE("InsideCallback::MXIMPContextStateEvent");
             break;
             }
         case MPresentityGroupContentEvent::KInterfaceId:
             {
-            TRACE( T_LIT("CVIMPSTEnginePresenceSubService::MPresentityGroupContentEvent"));
+            TRACE( "MPresentityGroupContentEvent");
             DoHandlePresentityGroupContentEventL( aContext, aEvent );
-            TRACE( T_LIT("CVIMPSTEnginePresenceSubService::MPresentityGroupContentEvent"));
+            TRACE( "MPresentityGroupContentEvent");
             break;  
             }
         case MPresenceGrantRequestListEvent::KInterfaceId:
             {
-            TRACE( T_LIT("CVIMPSTEnginePresenceSubService::MPresenceGrantRequestListEvent"));
+            TRACE( "MPresenceGrantRequestListEvent");
             DoHandlePresenceGrantRequestListEventL( aContext, aEvent );
-            TRACE( T_LIT("CVIMPSTEnginePresenceSubService::MPresenceGrantRequestListEvent"));
+            TRACE( "MPresenceGrantRequestListEvent");
             break;
             }
         case MPresenceBlockListEvent::KInterfaceId:
            {
-           TRACE( T_LIT("CVIMPSTEnginePresenceSubService::MPresenceBlockListEvent"));
+           TRACE( "MPresenceBlockListEvent");
            DoHandlePresenceBlockListEventL( aContext, aEvent );
-           TRACE( T_LIT("CVIMPSTEnginePresenceSubService::MPresenceBlockListEvent"));
+           TRACE( "MPresenceBlockListEvent");
 
            break;
            }
@@ -998,7 +982,6 @@
             break;
             }
         }
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::HandleSessionContextEventL end"));   
     }    
 
 // ---------------------------------------------------------------------------
@@ -1009,7 +992,7 @@
         TInt aCompleteCode,
         const MXIMPBase& /*aEvent*/)
     { 
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::HandleListEventCompleteL start"));
+	TRACER_AUTO;
 
     switch ( aType )
         {
@@ -1055,7 +1038,6 @@
         default:
             break;   
         }
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::HandleListEventCompleteL end"));    
     }
 
 // ---------------------------------------------------------------------------
@@ -1065,7 +1047,7 @@
 void CVIMPSTEnginePresenceSubService::HandleXimpRequestCompleteL(TXimpOperation aType,
         TInt aCompleteCode,const MXIMPBase& aEvent )
     {
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::HandleXimpRequestCompleteL start"));
+	TRACER_AUTO;
     switch ( aType )
         {
         case EVIMPSTXimpOperationBind:
@@ -1090,7 +1072,6 @@
         }
 
 
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::HandleXimpRequestCompleteL end"));
     }
 // -----------------------------------------------------------------------------
 // CVIMPSTEnginePresenceSubService::StoreToVirtualStoreL
@@ -1099,10 +1080,10 @@
 void CVIMPSTEnginePresenceSubService::StoreToVirtualStoreL(
                             const MPresentityGroupContentEvent& aListEvent )
     {
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::StoreToVirtualStoreL start"));
-    TRACE( T_LIT("CurrentMembersCount count = %d"),aListEvent.CurrentMembersCount() );
-    TRACE( T_LIT("NewMembersCount count = %d"),aListEvent.NewMembersCount() );
-    TRACE( T_LIT("UpdatedMembersCount count = %d"),aListEvent.UpdatedMembersCount() );
+	TRACER_AUTO;
+	TRACE( " count = %d",aListEvent.CurrentMembersCount() );
+    TRACE("NewMembersCount count = %d",aListEvent.NewMembersCount() );
+    TRACE( "UpdatedMembersCount count = %d",aListEvent.UpdatedMembersCount() );
     MVIMPSTStorageServiceView* storage = 
     CVIMPSTStorageManagerFactory::ContactListInterfaceL(iServiceId) ;	
     TLinearOrder< TPtrC > linearOrder (*CompareAlphabetically );
@@ -1122,7 +1103,7 @@
             serviceField.Reset();
             // number of contact in this list
            TInt currentMembrcount = aListEvent.CurrentMembersCount();
-           TRACE( T_LIT("currentMembrcount count = %d"),currentMembrcount );
+           TRACE( "currentMembrcount count = %d",currentMembrcount );
             // Handle first current items
             for(TInt j = 0; j < currentMembrcount ;j++ )
                 {
@@ -1137,7 +1118,7 @@
 
             // number of contact in this list
             TInt newMembrcount = aListEvent.NewMembersCount() ;
-            TRACE( T_LIT("newMembrcount count = %d"),newMembrcount );
+            TRACE("newMembrcount count = %d",newMembrcount );
             for(TInt i = 0; i < newMembrcount ;i++ )
                 {
                 const MPresentityGroupMemberInfo& memberInfo = 
@@ -1151,9 +1132,9 @@
                     firstNameList.Append(displayeName);
                     }
                 }
-            TRACE( T_LIT(" calling CreateNewFetchContactsL") );
-            TRACE( T_LIT(" serviceField count %d"),serviceField.Count());
-            TRACE( T_LIT(" firstNameList count %d"),firstNameList.Count());
+            TRACE( " calling CreateNewFetchContactsL" );
+            TRACE( " serviceField count %d",serviceField.Count());
+            TRACE( " firstNameList count %d",firstNameList.Count());
 
             // If count in both arrays does not match, storage side can panic
             __ASSERT_ALWAYS( firstNameList.Count() == serviceField.Count(), User::Leave( KErrCorrupt));
@@ -1191,7 +1172,7 @@
 		        const MXIMPIdentity& memberIdentity = memberInfo.GroupMemberId() ;
 		        TPtrC userId = memberIdentity.Identity();
 		        TPtrC displayeName = memberInfo.GroupMemberDisplayName();
-		        TRACE( T_LIT("CVIMPSTEnginePresenceSubService: newMember %S"), &userId );	
+		        TRACE( " newMember %S", &userId );
 		        storage->CreateNewContactL(userId,displayeName,ETrue,ETrue); 	
 		        }
 		   TInt removedMembrcount = aListEvent.DisappearedMembersCount() ;    
@@ -1201,7 +1182,7 @@
 		                                        aListEvent.DisappearedMember( i ) ;
 		        const MXIMPIdentity& memberIdentity = memberInfo.GroupMemberId() ;
 		        TPtrC userId = memberIdentity.Identity();
-				TRACE( T_LIT("CVIMPSTEnginePresenceSubService: deleteMember %S"), &userId );
+		        TRACE( "deleteMember %S", &userId );
 		    	MVIMPSTStorageContact* contactExist = storage->FindContactByUserId(userId);
 		    	if(contactExist)
 		    	    {
@@ -1211,7 +1192,6 @@
 			}
          
         }
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::StoreToVirtualStoreL end")); 
     }
 
 // ---------------------------------------------------------
@@ -1258,6 +1238,7 @@
 //  
 TVIMPSTEnums::TOnlineStatus CVIMPSTEnginePresenceSubService::ConvertPresenceCacheEnums(MPresenceBuddyInfo2::TAvailabilityValues aAvailabilityEnum,TPtrC aAvabilityText)
     {
+	TRACER_AUTO;
     // convert the presence cache enums to UI enumvalues
     // by default if the enum doesnot match then its  TVIMPSTEnums::UnKnown
     TVIMPSTEnums::TOnlineStatus status;
@@ -1318,10 +1299,9 @@
 void CVIMPSTEnginePresenceSubService::RegisterPresenceEventObserverL(
         MVIMPSTEnginePresenceSubServiceEventObserver* aObserver)
     {
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::RegisterPresenceEventObserver start"));	
+	TRACER_AUTO;
     __ASSERT_ALWAYS( aObserver, User::Leave( KErrArgument ));		
     iSubServiceObserver = aObserver;
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::RegisterPresenceEventObserver end"));
     }
 
 // ---------------------------------------------------------
@@ -1332,9 +1312,8 @@
 void CVIMPSTEnginePresenceSubService::UnRegisterPresenceEventObserver(
         MVIMPSTEnginePresenceSubServiceEventObserver* /*aObserver*/)
     {
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::UnRegisterPresenceEventObserver start"));
+	TRACER_AUTO;
     iSubServiceObserver = NULL;
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::UnRegisterPresenceEventObserver end"));
     }   
 // ---------------------------------------------------------------------------
 // CVIMPSTEnginePresenceSubService::RetrieveBlockListL
@@ -1342,7 +1321,7 @@
 //
 void CVIMPSTEnginePresenceSubService::RetrieveBlockListL()
     {
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::RetrieveBlockListL start"));
+	TRACER_AUTO;
 
     //Subscribe block list
     // do get block list"));
@@ -1351,7 +1330,6 @@
     CVIMPSTEngineRequestMapper* requestMapper =iXimpEventObserver.GetRequestMapper();
     requestMapper->CreateRequestL(operationId,EFalse,EVIMPSTXimpOperationGetBlockList);
     // list retrieving ok. Waiting for list.;
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::RetrieveBlockListL end")); 
     }
 // ---------------------------------------------------------------------------
 // CVIMPSTEnginePresenceSubService::DoHandlePresenceNotificationL
@@ -1359,17 +1337,17 @@
 //
 void CVIMPSTEnginePresenceSubService::DoHandlePresenceNotificationL(MPresenceBuddyInfo2& aPresenceBuddyInfo)
     {
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::DoHandlePresenceNotificationL start" ) );
+	TRACER_AUTO;
     MVIMPSTStorageServiceView* storage = 
     						CVIMPSTStorageManagerFactory::ContactListInterfaceL(iServiceId);
     TPtrC ownUserId = storage->OwnContactL().UserId();
     // read the buddyID : returns in XSP format
     TPtrC buddyXSPId = aPresenceBuddyInfo.BuddyId();
     TPtrC buddyId = buddyXSPId.Right( buddyXSPId.Length() - iServiceName->Length() - KColon().Length());
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::DoHandlePresenceNotificationL buddyId : %s" ), &buddyId );
+    TRACE( " buddyId : %s" , &buddyId );
     // read the availability /presence state enum value 
     MPresenceBuddyInfo2::TAvailabilityValues availabilityEnum = aPresenceBuddyInfo.Availability();
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::DoHandlePresenceNotificationL - Availability ENUM value: %d" ), availabilityEnum );
+    TRACE( "Availability ENUM value: %d" , availabilityEnum );
     TPtrC avablityText = aPresenceBuddyInfo.AvailabilityText();
     // convert the presence cache enum value to service tab enum 
     TVIMPSTEnums::TOnlineStatus status = ConvertPresenceCacheEnums( availabilityEnum, avablityText);
@@ -1380,22 +1358,22 @@
         GetKeyFieldsAndValuesL(aPresenceBuddyInfo,status);
         //TRACE( T_LIT("DoHandlePresenceNotificationL after GetKeyFieldsAndValuesL- status: %d" ), status );
         }
-    TRACE( T_LIT("DoHandlePresenceNotificationL - status: %d" ), status );
+    TRACE( " status: %d" , status );
     // Read  the  status message 
     TPtrC statusMsg = aPresenceBuddyInfo.StatusMessage();
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::DoHandlePresenceNotificationL - Status Message: %s" ), &statusMsg );
+    TRACE("Status Message: %s" , &statusMsg );
     TPtrC8 avatarContent = aPresenceBuddyInfo.Avatar();
     
     ////////////////////////////////////////////////////////////////
     HBufC8* avatarScaledData = NULL;
 	if ( avatarContent.Length() )
 		{
-		TRACE( T_LIT("CVIMPSTEnginePresenceSubService::DoHandlePresenceNotificationL - avatarContent Content available" ) );
+	TRACE( "avatarContent Content available" );
 		CVIMPSTEngineImageHandler* imageHandler = CVIMPSTEngineImageHandler::NewL();
 		CleanupStack::PushL(imageHandler);
-		TRACE( T_LIT("CVIMPSTEnginePresenceSubService::DoHandlePresenceNotificationL - imageHandler created " ) );
+		TRACE( "imageHandler created " );
 		avatarScaledData = imageHandler->ProcessImageFromDataL( avatarContent , KNullDesC8() );
-		TRACE( T_LIT("CVIMPSTEnginePresenceSubService::DoHandlePresenceNotificationL - ProcessImageFromDataL returned " ) );
+		TRACE( " ProcessImageFromDataL returned " );
 		CleanupStack::PopAndDestroy();//imageHandler
 		}
     if( avatarScaledData && avatarScaledData->Length())
@@ -1413,7 +1391,6 @@
         {
         storage->UpdatePresenceL(buddyId, status, statusMsg, KNullDesC8 );      
         }
-	TRACE( T_LIT("CVIMPSTEnginePresenceSubService::DoHandlePresenceNotificationL end" ) );
     }
 // ---------------	------------------------------------------------------------
 // CVIMPSTEnginePresenceSubService::
@@ -1424,7 +1401,7 @@
                                                         const MXIMPContext& /*aContext*/,
                                                         const MXIMPBase& aEvent )
     {
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::DoHandlePresenceBlockListEventL start"));
+	TRACER_AUTO;
     const MPresenceBlockListEvent& event  =
         *TXIMPGetInterface< const MPresenceBlockListEvent >::From( 
             aEvent,
@@ -1434,16 +1411,16 @@
     // inform ui about the state change from updatingcontacts to registered.
     if(TVIMPSTEnums::ESVCEUpdatingContacts == iServiceState )
         {
-        TRACE( T_LIT(" -> CVIMPSTEnginePresenceSubService:state is ESVCEUpdatingContacts" ));  
+    TRACE( " -> DoHandlePresentityGroupContentEventL:state is ESVCEUpdatingContacts" );
         }
         
-    TRACE( T_LIT(" -> new member count: %d" ), event.NewBlocksCount());    
+    TRACE( " new member count: %d" , event.NewBlocksCount());  
 
     TInt subscriptionCount  =  event.NewBlocksCount();
 
-    TRACE( T_LIT(" -> subscriptionCount: %d"), subscriptionCount );
+    TRACE(" subscriptionCount: %d", subscriptionCount );
 
-        TRACE( T_LIT(" -> handling buddy list" ) );    
+        TRACE( "  handling buddy list"  ); 
         HBufC* subsbuf(NULL);        
         for( TInt i =0; i < subscriptionCount; i++ )
             {
@@ -1451,9 +1428,9 @@
             const MXIMPIdentity& ident = blockedEntitys.BlockedEntityId();
             subsbuf = ident.Identity().AllocLC();
             TPtr subsbufPtr = subsbuf->Des();
-            TRACE( T_LIT(" -> identity: %S"), &subsbufPtr );    
+            TRACE( " -> identity: %S", &subsbufPtr );   
 
-            TRACE( T_LIT(" -> subscribe to cache" ) );    
+            TRACE(" -> subscribe to cache"  );    
             SubscribePresenceOfSingleContactL(*subsbuf);
             iBlockedListMgr->AddToBlockedListL(*subsbuf);
             CleanupStack::PopAndDestroy( subsbuf );
@@ -1466,7 +1443,7 @@
                 const MXIMPIdentity& ident = blockedEntitys.BlockedEntityId();
                 subsbuf = ident.Identity().AllocLC();
                 TPtr subsbufPtr = subsbuf->Des();
-                TRACE( T_LIT(" -> identity: %S"), &subsbufPtr );    
+                TRACE( " identity: %S", &subsbufPtr );
               
                 iBlockedListMgr->RemoveFromBlockListL( *subsbuf );    
                 
@@ -1478,7 +1455,6 @@
 	        iBlockedListObserver->HandleBlockedListFetchCompleteL();
 	        iBlockListFetchReqPending = EFalse;
 	        }
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::DoHandlePresenceBlockListEventL end"));
 
     }
 
@@ -1488,15 +1464,15 @@
 //
 TInt CVIMPSTEnginePresenceSubService::AddToBlockListL( const TDesC& aContactId )
     {
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::AddToBlockListL start"));
+	TRACER_AUTO;
     if(TVIMPSTEnums::ESVCERegistered != iServiceState)
        return KErrNotSupported;
     //if aContactId is zero.
     if( 0 == aContactId.Length())
        return KErrArgument;
     
-    TRACE( T_LIT(" -> aContactId: %s" ), &aContactId);
-    TRACE( T_LIT(" -> perform block operation" ) );      
+    TRACE( " aContactId: %s" , &aContactId);
+    TRACE( " perform block operation" ); 
     
     MXIMPIdentity* identity = iXimpEventObserver.XimpPresenceContextL().ObjectFactory().NewIdentityLC();
     
@@ -1516,7 +1492,6 @@
 	    }
     //when pres. cache call will come.
     CleanupStack::PopAndDestroy(); // identity    
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::AddToBlockListL end"));
     return error;
     }
 
@@ -1526,15 +1501,15 @@
 //
 TInt CVIMPSTEnginePresenceSubService::RemoveFromBlockListL( const TDesC& aUriOfTheContact )
     {
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::RemoveFromBlockListL start"));
+	TRACER_AUTO;
     if(TVIMPSTEnums::ESVCERegistered != iServiceState)
        return KErrNotSupported;
     //if aUriOfTheCOntact is zero.
     if( 0 == aUriOfTheContact.Length())
        return KErrNotFound;
     
-    TRACE( T_LIT(" -> aUriOfTheContact: %s" ), &aUriOfTheContact);
-    TRACE( T_LIT(" -> perform unblock operation" ) );      
+    TRACE(" -> aUriOfTheContact: %s" , &aUriOfTheContact);
+    TRACE( " -> perform unblock operation"  );  
     
     MXIMPIdentity* identity = iXimpEventObserver.XimpPresenceContextL().ObjectFactory().NewIdentityLC();
     identity->SetIdentityL( aUriOfTheContact ); 
@@ -1551,7 +1526,6 @@
 	    }
     CleanupStack::PopAndDestroy( 1 ); // identity    
     
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::RemoveFromBlockListL end"));
     return error;
     }
     
@@ -1583,6 +1557,7 @@
 //
 void CVIMPSTEnginePresenceSubService::FetchBlockedListFromServerL(MVIMPSTEngineBlockedListFetchEventObserver* aOb)
 	{
+	TRACER_AUTO;
 	if(EFalse == iBlockListFetchReqPending)
 		{
 		//set the observer to give call back; Fetch from server is completed.
@@ -1607,6 +1582,7 @@
 //
 void CVIMPSTEnginePresenceSubService::GetKeyFieldsAndValuesL(MPresenceBuddyInfo2& aPresenceBuddyInfo,TVIMPSTEnums::TOnlineStatus &aStatus)
     {
+	TRACER_AUTO;
     TPtrC8 value = aPresenceBuddyInfo.GetAnyField( KExtensionKey());
     // At any point of time fro remote and blocked contact only one of the keys
     // KPendingRequestExtensionValue/KBlockedExtensionValue will be assigned, and not both the keys.
@@ -1638,13 +1614,12 @@
 //
 void CVIMPSTEnginePresenceSubService::UpdatePresenceStateL()
     {
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::UpdatePresenceStateL start") );
+	TRACER_AUTO;
     //inform ui about the state change from updatingcontacts to registered.
     iServiceState = TVIMPSTEnums::ESVCERegistered;    
     iObserver.HandleServceConnectionEventL();
     
-    TRACE( T_LIT(" -> HandleContactFetchedL:state is ESVCERegistered" )); 
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::UpdatePresenceStateL end"));
+    TRACE( " -> HandleContactFetchedL:state is ESVCERegistered" ); 
     }
 
 // ---------------------------------------------------------------------------
@@ -1653,7 +1628,7 @@
 //
 void CVIMPSTEnginePresenceSubService::FetchPresenceOfSingleContactL(const TDesC& aContact)
     {
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::FetchPresenceOfSingleContactL Start"));  
+	TRACER_AUTO;
     if(aContact.Length() && iServiceName->Length())
         {
         HBufC* name = HBufC::NewLC( iServiceName->Length() + KColon().Length() + aContact.Length()  ); // 1. on to cleanup stack
@@ -1663,18 +1638,17 @@
         namePtr.Append(*iServiceName);
         namePtr.Append(KColon);
         namePtr.Append(aContact);
-        TRACE( T_LIT("CVIMPSTEnginePresenceSubService::FetchPresenceOfSingleContactL namePtr = %S"), &namePtr);  
+        TRACE( " namePtr = %S", &namePtr);  
         MPresenceBuddyInfo2* presenceBuddyInfo = iPresenceCacheReader->PresenceInfoLC(namePtr); // 2. on to cleanupstack
         if ( presenceBuddyInfo )
             {
-            TRACE( T_LIT("CVIMPSTEnginePresenceSubService::FetchPresenceOfSingleContactL presenceBuddyInfo"));            
+        TRACE("presenceBuddyInfo");            
             DoHandlePresenceNotificationL(*presenceBuddyInfo);
             CleanupStack::PopAndDestroy();  // presenceBuddyInfo
-            TRACE( T_LIT("CVIMPSTEnginePresenceSubService::FetchPresenceOfSingleContactL presenceBuddyInfo end"));  
+            TRACE("presenceBuddyInfo end");  
             }
         CleanupStack::PopAndDestroy(name);  // name
         }
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::FetchPresenceOfSingleContactL End")); 
     }
 
 // ---------------------------------------------------------------------------
@@ -1683,8 +1657,7 @@
 //
 void CVIMPSTEnginePresenceSubService::UnsubscribeListsL()
     {
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::UnsubscribeListsL IN"));
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::UnsubscribeListsL - unsubscribe buddy list"));
+    TRACER_AUTO;
 
     // It is assumed here that buddy list and authorization list has been always
     // subscribed if bind has been done. Caller of this function must check
@@ -1700,20 +1673,20 @@
    // Auth list
    if(iSubscribeToAuthList)
        {
-       TRACE( T_LIT("CVIMPSTEnginePresenceSubService::UnsubscribeListsL - unsubscribe auth list"));
+       TRACE("unsubscribe auth list");
        iSubscribeToAuthList = EFalse;
       iXimpEventObserver.XimpAuthorizationL().UnsubscribePresenceGrantRequestListL();  
        }
  
    // block list
-   TRACE( T_LIT("CVIMPSTEnginePresenceSubService::UnsubscribeListsL - check if block is supported"));
+   TRACE( "check if block is supported");
    TInt supportedFeatures = iXimpEventObserver.GetSupportedFeatures();
    if ( (EVIMPSTFeatureBlock & supportedFeatures) && (EVIMPSTFeatureUnBlock & supportedFeatures) )
        {
-       TRACE( T_LIT("CVIMPSTEnginePresenceSubService::UnsubscribeListsL - unsubscribe block list"));
+       TRACE( "unsubscribe block list");
        iXimpEventObserver.XimpAuthorizationL().UnsubscribePresenceBlockListL();        
        }
-    TRACE( T_LIT("CVIMPSTEnginePresenceSubService::UnsubscribeListsL OUT"));
+    
     }
 
 // End of file
--- a/uiservicetab/vimpstengine/src/cvimpstenginerequest.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstengine/src/cvimpstenginerequest.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -17,7 +17,8 @@
 
 // INCLUDE FILES
 #include "cvimpstenginerequest.h"
-#include "vimpstdebugtrace.h"
+
+#include "uiservicetabtracer.h"
 
 #include <e32base.h>
 
@@ -28,6 +29,7 @@
 CVIMPSTEngineRequest* CVIMPSTEngineRequest::NewL(TXIMPRequestId& aRequestId,
         TXimpOperation aType)
 	{
+	TRACER_AUTO;
 	CVIMPSTEngineRequest* self = CVIMPSTEngineRequest::NewLC(aRequestId,aType);
 	CleanupStack::Pop( self );
 	return self;
@@ -39,6 +41,7 @@
 CVIMPSTEngineRequest* CVIMPSTEngineRequest::NewLC(TXIMPRequestId& aRequestId,
         TXimpOperation aType )
 	{
+	TRACER_AUTO;
 	CVIMPSTEngineRequest* self = new (ELeave) CVIMPSTEngineRequest(aRequestId,aType);
 	CleanupStack::PushL( self );
 	return self;	
--- a/uiservicetab/vimpstengine/src/cvimpstenginerequestmapper.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstengine/src/cvimpstenginerequestmapper.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -20,7 +20,8 @@
 #include "cvimpstenginerequestmapper.h"
 
 #include "cvimpstenginerequest.h"
-#include "vimpstdebugtrace.h"
+
+#include "uiservicetabtracer.h"
 
 // ---------------------------------------------------------
 // CVIMPSTEngineRequestMapper::two phase constructor
@@ -71,6 +72,7 @@
 											(TXIMPRequestId& aRequestId, 
 											TBool aIsWait, TXimpOperation aType)
 	{
+	TRACER_AUTO;
 	CVIMPSTEngineRequest* req = CVIMPSTEngineRequest::NewL(aRequestId,aType );
 	CleanupStack::PushL(req);	
 	TInt status( iRequestArray.Append( req ) );
@@ -92,6 +94,7 @@
 // ---------------------------------------------------------		
 CVIMPSTEngineRequest* CVIMPSTEngineRequestMapper::FindRequestId(const TXIMPRequestId& aRequestId )
 	{
+	TRACER_AUTO;
 	TInt count = iRequestArray.Count() ;
 	TXIMPRequestId reqId ;
 	CVIMPSTEngineRequest *req = NULL;
@@ -115,6 +118,7 @@
 // ---------------------------------------------------------		
 void CVIMPSTEngineRequestMapper::RemoveRequestId(const TXIMPRequestId& aRequestId )
     {
+	TRACER_AUTO;
     TInt count = iRequestArray.Count() ;
     for (TInt i=0; i < count; i++)
         {
--- a/uiservicetab/vimpstengine/src/cvimpstenginesearchmgrextention.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstengine/src/cvimpstenginesearchmgrextention.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -29,7 +29,6 @@
 
 #include "cvimpstenginerequestmapper.h"
 #include "cvimpstenginerequest.h"
-#include "vimpstdebugprint.h"
 
 #include "vimpstallerrors.h"
 #include "tvimpstconsts.h"
@@ -44,7 +43,7 @@
 #include <searchevent.h>
 
 #include "mvimpstenginesearchextentioneventobserver.h"
-#include "vimpstdebugtrace.h"
+#include "uiservicetabtracer.h"
 
 
 
@@ -57,14 +56,13 @@
 							MXIMPContext& aPresenceCtx,						
 							CVIMPSTEngineRequestMapper& aRequestMapper)
     {
-    TRACE( T_LIT("CVIMPSTEngineSearchMgrExtention::NewL start"));
+	TRACER_AUTO;
     CVIMPSTEngineSearchMgrExtention* self = 
     			CVIMPSTEngineSearchMgrExtention::NewLC(
     											aPresenceCtx, 
     											aRequestMapper
     										    );
     CleanupStack::Pop( self );
-   	TRACE( T_LIT("CVIMPSTEngineSearchMgrExtention::NewL end"));
     return self;
     }
 
@@ -76,12 +74,11 @@
 							MXIMPContext& aPresenceCtx,
 							CVIMPSTEngineRequestMapper& aRequestMapper)
 	{
-	TRACE( T_LIT("CVIMPSTEngineSearchMgrExtention::NewLC start"));
+	TRACER_AUTO;
 	CVIMPSTEngineSearchMgrExtention* self = new (ELeave) 
 					CVIMPSTEngineSearchMgrExtention(aPresenceCtx, aRequestMapper);
 	CleanupStack::PushL( self );
 	self->ConstructL();
-	TRACE( T_LIT("CVIMPSTEngineSearchMgrExtention::NewLC end"));
 	return self;
 	}
     
@@ -90,7 +87,7 @@
 // ---------------------------------------------------------
 void CVIMPSTEngineSearchMgrExtention::ConstructL()
 	{
-	TRACE( T_LIT("CVIMPSTEngineSearchMgrExtention::ConstructL start"));
+	TRACER_AUTO;
 
 	// ximp search plugin
     iSearchFeature = MSearchFeature::NewL(&iPresenceCtx); 
@@ -99,7 +96,6 @@
 	
 	iAlreadySubscibed = EFalse;
 	
-    TRACE( T_LIT("CVIMPSTEngineSearchMgrExtention::ConstructL end") );    	
 		
     }
 	
@@ -120,13 +116,12 @@
 // ---------------------------------------------------------
 CVIMPSTEngineSearchMgrExtention::~CVIMPSTEngineSearchMgrExtention()
     {
-    TRACE( T_LIT("CVIMPSTEngineSearchMgrExtention::~CVIMPSTEngineSearchMgrExtention start"));    
+	TRACER_AUTO;
     
 	iSearchObservers.Reset();
 	delete iSearchFeature;	
 	iSearchFeature = NULL;
     
-    TRACE( T_LIT("CVIMPSTEngineSearchMgrExtention::~CVIMPSTEngineSearchMgrExtention end"));
     }
 
 
@@ -135,7 +130,7 @@
 // ---------------------------------------------------------
 TInt CVIMPSTEngineSearchMgrExtention::SearchContactsL( RArray<TVIMPSTSearchKeyData>& aKeyDataArray )
 	{
-	TRACE( T_LIT( "CVIMPSTEngineSearchMgrExtention::SearchContactsL Start" ) );
+	TRACER_AUTO;
 	
 	TInt err = KErrNotSupported;
 	if (iSearchSupported == TVIMPSTEnums::ESupported)
@@ -186,7 +181,6 @@
 		searchList.ResetAndDestroy();//	searchList
 		CleanupStack::PopAndDestroy ();//searchId 
 		
-		TRACE( T_LIT( "CVIMPSTEngineSearchMgrExtention::SearchContactsL End " ) );
 		err = iReqResult;
 		}
 
@@ -200,24 +194,24 @@
 //
 TInt CVIMPSTEngineSearchMgrExtention::SubscribeForSearchKeysL()
 	{
-	TRACE( T_LIT("CVIMPSTEngineSearchMgrExtention::SubscribeForSearchKeysL Start"));
-    TRACE( T_LIT( "--> SubscribeForSearchKeysL:iSearchSupported: %d" ), iSearchSupported );
-    TRACE( T_LIT( "--> SubscribeForSearchKeysL: iAlreadySubscibed: %d" ), iAlreadySubscibed );    
+	TRACER_AUTO;
+	TRACE( "iSearchSupported: %d" , iSearchSupported );
+	TRACE( "iAlreadySubscibed: %d" , iAlreadySubscibed );
 		
 	if ( (iSearchSupported == TVIMPSTEnums::ENotSupported) || iAlreadySubscibed )
 		{
-		TRACE( T_LIT( "--> SubscribeForSearchKeysL: inside if " ));    
+	   TRACE("inside if " );    
 		return KErrNone;	
 		}
 
 	if( iSearch )
 		{
-	    TRACE( T_LIT( "--> SubscribeForSearchKeysL: inside if(iSearch) " ));    
+	TRACE("inside if(iSearch) " ); 
 
 		iAlreadySubscibed = ETrue;
 		
 		TXIMPRequestId reqId = iSearch->GetSearchKeysL();			
-		TRACE( T_LIT( "--> SubscribeForSearchKeysL: iSearch->GetSearchKeysL() " ));    
+		TRACE( "iSearch->GetSearchKeysL() " );
 
 		iRequestMapper.CreateRequestL(reqId, ETrue ,EVIMPSTXimpOperationSubscribeSearchKeys);// waite here
 		}
@@ -231,7 +225,6 @@
 	    iSearchSupported = TVIMPSTEnums::ESupported;
 	    }
 
-	TRACE( T_LIT("CVIMPSTEngineSearchMgrExtention::SubscribeForSearchKeysL end "));
 	return iReqResult;;
 	}	
 
@@ -250,7 +243,7 @@
 // ------------------------------------------------------------------------
 TSearchKey CVIMPSTEngineSearchMgrExtention::ConverttoTSearchKey(TVIMPSTEnums::TVIMPSTSearchKey aKey)
     {
-    TRACE( T_LIT("CVIMPSTEngineSearchMgrExtention::ConverttoTSearchKey start"));
+	TRACER_AUTO;
     
     TSearchKey ret = EUserFirstName;
      switch( aKey )
@@ -329,7 +322,6 @@
 
 		} 
 	
-	TRACE( T_LIT("CVIMPSTEngineSearchMgrExtention::ConverttoTSearchKey end"));
 	return ret; 
     }       	
 
@@ -350,7 +342,7 @@
 // ---------------------------------------------------------
 void CVIMPSTEngineSearchMgrExtention::RegisterObserver(MVIMPSTEngineSearchExtentionEventObserver* aObserver) 
 	{
-	TRACE( T_LIT("CVIMPSTEngineSearchMgrExtention::RegisterObserver start"));
+	TRACER_AUTO;
 	
 	TInt index = iSearchObservers.Find(aObserver);
 	if( index == KErrNotFound )
@@ -358,7 +350,6 @@
 		iSearchObservers.Append( aObserver );	
 		}
 
-	TRACE( T_LIT("CVIMPSTEngineSearchMgrExtention::RegisterObserver end"));
     }
 	
 // ---------------------------------------------------------
@@ -367,7 +358,7 @@
 // ---------------------------------------------------------
 void  CVIMPSTEngineSearchMgrExtention::UnRegisterObserver(MVIMPSTEngineSearchExtentionEventObserver* aObserver) 
 	{
-	TRACE( T_LIT("CVIMPSTEngineSearchMgrExtention::UnRegisterObserver start"));
+	TRACER_AUTO;
 	
 	TInt index = iSearchObservers.Find(aObserver);
 	
@@ -377,7 +368,6 @@
 		iSearchObservers.Compress();
 		}
 		
-    TRACE( T_LIT("CVIMPSTEngineSearchMgrExtention::UnRegisterObserver end"));
     }
     
 
@@ -389,14 +379,14 @@
                                                              const MXIMPBase& aEvent,
                                                              TXimpOperation aXimpOperation/* = EVIMPSTXimpOperationNoOperation*/ )
     {
-    TRACE( T_LIT("CVIMPSTEngineSearchMgrExtention::HandleSessionContextEventL start"));
+	TRACER_AUTO;
     
     switch( aEvent.GetInterfaceId() )
         {
         
         case MXIMPRequestCompleteEvent::KInterfaceId:
         	{
-            TRACE( T_LIT("InsideCallbackswitch::MXIMPRequestCompleteEvent"));
+        	TRACE("InsideCallbackswitch::MXIMPRequestCompleteEvent");
             if ( (EVIMPSTXimpOperationSearchContact == aXimpOperation) 
              		|| (EVIMPSTXimpOperationSubscribeSearchKeys == aXimpOperation) )
 	            {            
@@ -466,7 +456,6 @@
             break;
             }
         }
-   	TRACE( T_LIT("CVIMPSTEngineSearchMgrExtention::HandleSessionContextEventL end"));	
     }    
 
 
@@ -476,7 +465,7 @@
 // ---------------------------------------------------------
 void CVIMPSTEngineSearchMgrExtention::ProcessSearchKeysEventL(const MSearchKeysEvent* aSearchKeysEvent)
     {
-    TRACE( T_LIT("CVIMPSTEngineSearchMgrExtention::ProcessSearchKeysEventL start"));
+	TRACER_AUTO;
     
     TInt searchKeysCount = aSearchKeysEvent->InfoCount();
     
@@ -518,7 +507,6 @@
 	
 	CleanupStack::PopAndDestroy(2); //enumKeyArray, labelKeyArray
     
-    TRACE( T_LIT("CVIMPSTEngineSearchMgrExtention::ProcessSearchKeysEventL end"));
     }
         
 // ------------------------------------------------------------------------
@@ -527,7 +515,7 @@
 // ------------------------------------------------------------------------
 TVIMPSTEnums::TVIMPSTSearchKey CVIMPSTEngineSearchMgrExtention::ConverttoTVIMPSTSearchKey( TSearchKey aKey)
     {
-    TRACE( T_LIT("CVIMPSTEngineSearchMgrExtention::ConverttoTVIMPSTSearchKey start"));
+	TRACER_AUTO;
     
      TVIMPSTEnums::TVIMPSTSearchKey retKey = TVIMPSTEnums::EVIMPSTFirstName ;
      switch( aKey )
@@ -606,7 +594,6 @@
 
 		}
 	
-	TRACE( T_LIT("CVIMPSTEngineSearchMgrExtention::ConverttoTVIMPSTSearchKey end"));
 	return retKey;  
     }       	
 //----------------------------------------------------------------------------
@@ -615,6 +602,7 @@
 //
 void  CVIMPSTEngineSearchMgrExtention::SetSupported(TVIMPSTEnums::FeatureSupport aSupported)
     { 
+	TRACER_AUTO;
     if ( aSupported == TVIMPSTEnums::ESupportUnKnown)
         {
         // at the logout time this flag  has to be set to EFalse
--- a/uiservicetab/vimpstengine/src/cvimpstengineservicetablefetcher.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstengine/src/cvimpstengineservicetablefetcher.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -38,7 +38,7 @@
 #include "cvimpstenginefactory.h"
 #include "mvimpststorageserviceview.h"
 #include "cvimpststoragemanagerfactory.h"
-#include "vimpstdebugtrace.h"
+#include "uiservicetabtracer.h"
 
 
 
@@ -58,10 +58,9 @@
 //
 void CVIMPSTEngineServiceTableFetcher::ConstructL()
     {
-    TRACE( T_LIT("CVIMPSTEngineServiceTableFetcher::ConstructL start"));
+	TRACER_AUTO;
     iSettings = CSPSettings::NewL();
     CompressViewIdsL();
-    TRACE( T_LIT("CVIMPSTEngineServiceTableFetcher::ConstructL end"));
     }
 
 // ---------------------------------------------------------------------------
@@ -71,12 +70,11 @@
 CVIMPSTEngineServiceTableFetcher* 
     CVIMPSTEngineServiceTableFetcher::NewL( )
     {
-    TRACE( T_LIT("CVIMPSTEngineServiceTableFetcher::NewL start"));
+	TRACER_AUTO;
     
     CVIMPSTEngineServiceTableFetcher* self = NewLC();
     CleanupStack::Pop(self);
     
-    TRACE( T_LIT("CVIMPSTEngineServiceTableFetcher::NewL end"));
     return self;
     }
 
@@ -87,14 +85,13 @@
 CVIMPSTEngineServiceTableFetcher* 
     CVIMPSTEngineServiceTableFetcher::NewLC()
     {
-    TRACE( T_LIT("CVIMPSTEngineServiceTableFetcher::NewLC start"));
+	TRACER_AUTO;
     
     CVIMPSTEngineServiceTableFetcher* self =
         new (ELeave) CVIMPSTEngineServiceTableFetcher( );
     CleanupStack::PushL(self);
     self->ConstructL();
     
-    TRACE( T_LIT("CVIMPSTEngineServiceTableFetcher::NewLC end"));
     return self;
     }
 
@@ -105,13 +102,12 @@
 //
 CVIMPSTEngineServiceTableFetcher::~CVIMPSTEngineServiceTableFetcher()
     {
+	TRACER_AUTO;
     
-    TRACE( T_LIT("CVIMPSTEngineServiceTableFetcher::~CVIMPSTEngineServiceTableFetcher start"));   
     
     delete iSettings;	
     iSettings = NULL;
     
-    TRACE( T_LIT("CVIMPSTEngineServiceTableFetcher::~CVIMPSTEngineServiceTableFetcher end"));    
     }
 
 // ---------------------------------------------------------------------------
@@ -121,7 +117,7 @@
 void CVIMPSTEngineServiceTableFetcher::GetMasterServiceIdsL( 
     RArray<TUint32>& aServiceIds )
     {
-    TRACE( T_LIT("CVIMPSTEngineServiceTableFetcher::GetMasterServiceIdsL start"));
+	TRACER_AUTO;
     
     RArray<TServiceId> services;
     CleanupClosePushL( services );
@@ -137,17 +133,16 @@
              || TUid::Uid( refContactUid ) == 
              TUid::Uid( 0x20007B6D ) )
             {
-            TRACE( T_LIT("GetMasterServiceIdsL() found serviceid: (%d)"), services[ i ] );
+            TRACE( " found serviceid: (%d)", services[ i ] );
 
             aServiceIds.Append( services[ i ] );                
 
-            TRACE( T_LIT("GetMasterServiceIdsL() - service append ok") );                
+            TRACE("service append ok" ); 
 
             }
         }
     CleanupStack::PopAndDestroy( &services );
     
-    TRACE( T_LIT("CVIMPSTEngineServiceTableFetcher::GetMasterServiceIdsL end"));  
     }
 
 // ---------------------------------------------------------------------------
@@ -157,10 +152,9 @@
 void CVIMPSTEngineServiceTableFetcher::GetContactStoreIdL( 
     TUint32 aServiceId, TDes& aContactStoreId )
     {
-    TRACE( T_LIT( 
-       "CVIMPSTEngineServiceTableFetcher::GetContactStoreIdL start")); 
+	TRACER_AUTO;
     
-    TRACE( T_LIT("GetContactStoreIdL() ServiceId: %d"), aServiceId );
+    TRACE( "ServiceId: %d", aServiceId );
         
     CSPProperty* property = CSPProperty::NewLC();
     TInt err = iSettings->FindPropertyL( aServiceId,
@@ -174,9 +168,8 @@
 
     CleanupStack::PopAndDestroy( property );
     
-    TRACE( T_LIT("GetContactStoreIdL() - StoreId: %S"), &aContactStoreId );                
+    TRACE( "StoreId: %S", &aContactStoreId );     
     
-    TRACE( T_LIT("CVIMPSTEngineServiceTableFetcher::GetContactStoreIdL end"));  
  	
     }   
 
@@ -189,9 +182,9 @@
 void CVIMPSTEngineServiceTableFetcher::GetBrandIdL( 
     TUint32 aServiceId, TDes8& aBrandId )
     {
-    TRACE( T_LIT( "CVIMPSTEngineServiceTableFetcher::GetBrandIdL start"));
+	TRACER_AUTO;
     
-    TRACE( T_LIT("GetBrandIdL() ServiceId: %d"), aServiceId );
+    TRACE( "ServiceId: %d", aServiceId );
        
     HBufC* ret = HBufC::NewLC( KVIMPSTUISPSMaxPropertyLength );    
     TPtr retPtr( ret->Des() );
@@ -211,9 +204,8 @@
     CleanupStack::PopAndDestroy( property );        
     CleanupStack::PopAndDestroy( ret );        
     
-    TRACE( T_LIT("GetBrandIdL() - BrandId: %S"), &aBrandId ); 
+    TRACE( "BrandId: %S", &aBrandId ); 
     
-    TRACE( T_LIT( "CVIMPSTEngineServiceTableFetcher::GetBrandIdL end"));
     }    
 
 
@@ -224,10 +216,9 @@
 TInt CVIMPSTEngineServiceTableFetcher::FindPropertyL( TUint32 aServiceId,
 	                                TServicePropertyName aPropertyName )
 	{
-	TRACE( T_LIT("CVIMPSTEngineServiceTableFetcher::FindPropertyL start"));
+	TRACER_AUTO;
     
-    TRACE( T_LIT("FindPropertyL- ServiceId: %d Property: %d"), 
-    								aServiceId, aPropertyName ); 
+	 TRACE( "ServiceId: %d Property: %d", aServiceId, aPropertyName );
        
 	CSPProperty* property = CSPProperty::NewLC();
     TInt result = iSettings->FindPropertyL( aServiceId,
@@ -235,9 +226,8 @@
                                 *property );		
 	CleanupStack::PopAndDestroy( property );
 	
-	TRACE( T_LIT("FindPropertyL- Result: %d"), result );
+	TRACE(" Result: %d", result );
     								
-	TRACE( T_LIT("CVIMPSTEngineServiceTableFetcher::FindPropertyL end"));
        
 	return result;
 	}
@@ -252,9 +242,9 @@
 TInt CVIMPSTEngineServiceTableFetcher::PropertyBrandVersionL( 
     TUint32 aServiceId ) 
     {
-    TRACE( T_LIT( "CVIMPSTEngineServiceTableFetcher::PropertyBrandVersionL start"));
+	TRACER_AUTO;
     
-    TRACE( T_LIT("PropertyBrandVersionL() ServiceId: %d"), aServiceId );
+	TRACE( "ServiceId: %d", aServiceId );
        
     TInt brandVersion = KErrNotFound; // default value
     CSPProperty* property = CSPProperty::NewLC();
@@ -268,9 +258,8 @@
         
     CleanupStack::PopAndDestroy( property );
     
-    TRACE( T_LIT("PropertyBrandVersionL - version: %d"), brandVersion );  
+    TRACE( "version: %d", brandVersion );
     
-    TRACE( T_LIT( "CVIMPSTEngineServiceTableFetcher::PropertyBrandVersionL end"));
     return brandVersion;
     }
 
@@ -281,9 +270,9 @@
 TLanguage CVIMPSTEngineServiceTableFetcher::PropertyBrandLanguageL( 
     TUint32 aServiceId ) 
     {
-    TRACE( T_LIT("CVIMPSTEngineServiceTableFetcher::PropertyBrandLanguageL start"));
+	TRACER_AUTO;
     
-    TRACE( T_LIT("PropertyBrandLanguageL() ServiceId: %d"), aServiceId );
+	 TRACE( " ServiceId: %d", aServiceId );
     
     // ELangInternationalEnglish is selected as Default Brand Language Id.
     TInt brandLanguage = ELangInternationalEnglish;    
@@ -297,9 +286,8 @@
         }
     CleanupStack::PopAndDestroy( property );
 
-    TRACE( T_LIT("PropertyBrandVersionL - brandLanguage: (%d) "), brandLanguage );  
+    TRACE( "brandLanguage: (%d) ", brandLanguage );
 	
-	TRACE( T_LIT("CVIMPSTEngineServiceTableFetcher::PropertyBrandLanguageL end"));
        
     return ((TLanguage) (brandLanguage) );
     }
@@ -312,9 +300,9 @@
 TUint32 CVIMPSTEngineServiceTableFetcher::ContactViewUidL( 
     TUint32 aServiceId )
     {
-    TRACE( T_LIT("CVIMPSTEngineServiceTableFetcher::ContactViewUidL start"));
+	TRACER_AUTO;
     
-    TRACE( T_LIT("ContactViewUidL() ServiceId: %d"), aServiceId );
+	TRACE( "ServiceId: %d", aServiceId );
         
     TInt contactViewUid = KErrNotFound;
     CSPProperty* property = CSPProperty::NewLC();
@@ -327,9 +315,8 @@
         }
     CleanupStack::PopAndDestroy( property );      
           
-    TRACE( T_LIT("ContactViewUid: %d"), contactViewUid );    
+    TRACE( "ContactViewUid: %d", contactViewUid ); 
     
-    TRACE( T_LIT("CVIMPSTEngineServiceTableFetcher::GetContactStoreIdL end"));
        
     return contactViewUid;
     }    
@@ -341,9 +328,9 @@
 void CVIMPSTEngineServiceTableFetcher::GetServiceNameL( 
     TUint32 aServiceId, TDes& aServiceName )
     {
-    TRACE( T_LIT("CVIMPSTEngineServiceTableFetcher::GetServiceNameL start"));    
+	TRACER_AUTO;
     
-    TRACE( T_LIT("GetServiceNameL() ServiceId: %d"), aServiceId );
+	TRACE( "ServiceId: %d", aServiceId );
     
     CSPEntry* entry = CSPEntry::NewLC();
     TInt err = iSettings->FindEntryL( aServiceId, *entry ) ;
@@ -354,9 +341,8 @@
     
     CleanupStack::PopAndDestroy( entry );    
     
-    TRACE( T_LIT("GetServiceNameL() ServiceName: %S"), &aServiceName );
+    TRACE("ServiceName: %S", &aServiceName );
     
-    TRACE( T_LIT("CVIMPSTEngineServiceTableFetcher::GetServiceNameL end"));
     }
 
 // ---------------------------------------------------------------------------
@@ -366,8 +352,8 @@
 void CVIMPSTEngineServiceTableFetcher::DoHandleNotifyChangeL(
     		TServiceId aServiceId, TBool aNewService, MVIMPSTEngine* aEngine )
     {
-    TRACE( T_LIT("CVIMPSTEngineServiceTableFetcher::DoHandleNotifyChangeL start"));  
-    TRACE( T_LIT("DoHandleNotifyChange() ServiceId:%d"), aServiceId );
+	TRACER_AUTO;
+	TRACE( "ServiceId:%d", aServiceId );
     TBool serviceFound( EFalse ); 
     if(!aNewService)
         {
@@ -382,7 +368,7 @@
             {
             if ( services[index] == aServiceId )
                 {
-                TRACE( T_LIT("DoHandleNotifyChange() - Service (%d) found"), aServiceId );
+            TRACE( "Service (%d) found", aServiceId );
                 serviceFound = ETrue;
                 }
             }
@@ -400,7 +386,7 @@
         //once phonebook gives a permanant fix ,remove the below code
         if(( TUid::Uid(ContactViewUidL( aServiceId )) == TUid::Uid( KIMCONTACTSEXTNIMPLEMENTATIONUID )) || aEngine ) 
             {                                                               // only MecoServicetabs shutdown phonebook.
-            TRACE( T_LIT("DoHandleNotifyChange() - removing service") );    //or while deleting service from settings
+            TRACE( "removing service" );    //or while deleting service from settings
             CompressViewIdsL();                                             //check whether engine exists,which is true for only MecoServicetabs.
             if(aEngine)
                 {
@@ -408,9 +394,8 @@
                 }
             ShutDownPhonebookL();
             }
-        TRACE( T_LIT("DoHandleNotifyChange() - service removed") );
+        TRACE( "service removed" );
         }
-    TRACE( T_LIT("CVIMPSTEngineServiceTableFetcher::DoHandleNotifyChangeL end"));    
 
     }
 // ---------------------------------------------------------------------------
@@ -420,8 +405,8 @@
 TBool CVIMPSTEngineServiceTableFetcher::CompressViewIdsL( 
     TServiceId aServiceId )
     {
-    TRACE( T_LIT("CVIMPSTEngineServiceTableFetcher::CompressViewIdsL start"));       
-    TRACE( T_LIT("CompressViewIdsL() ServiceId: %d"), aServiceId );
+	TRACER_AUTO;
+	TRACE(" ServiceId: %d", aServiceId );
     
     TBool ret = EFalse;
     // Compress view id's in service table
@@ -438,8 +423,8 @@
         TUid::Uid( KIMCONTACTSEXTNIMPLEMENTATIONUID ) )
             {
 
-            TRACE( T_LIT("  -> compressing view ids, service: %d"), serviceId );
-            TRACE( T_LIT("  -> compressing view ids, view id: (%d)"), ( KVIMPSTTabbedViewIdBase+ serviceId ) );
+        TRACE( "  -> compressing view ids, service: %d", serviceId );
+        TRACE( "  -> compressing view ids, view id: (%d)", ( KVIMPSTTabbedViewIdBase+ serviceId ) );
 
             WriteTabViewIdToServiceTableL( services[ i ], ( KVIMPSTTabbedViewIdBase + serviceId ) );
         
@@ -448,8 +433,7 @@
         }
     CleanupStack::PopAndDestroy( &services );
     
-    TRACE( T_LIT("CompressViewIdsL returns: (%d)"), ret );     
-    TRACE( T_LIT("CVIMPSTEngineServiceTableFetcher::CompressViewIdsL end"));    
+    TRACE( "CompressViewIdsL returns: (%d)", ret );
     
     return ret;
     }
@@ -462,9 +446,9 @@
 void CVIMPSTEngineServiceTableFetcher::WriteTabViewIdToServiceTableL( 
     TUint32 aServiceId, TUint aViewId ) 
     {
-    TRACE( T_LIT("CVIMPSTEngineServiceTableFetcher::WriteTabViewIdToServiceTableL start"));   
-    TRACE( T_LIT("WriteTabViewIdToServiceTableL() aServiceId: %d, aViewId: %d "), 
-    										aServiceId, aViewId );
+	TRACER_AUTO;
+    
+    TRACE( "aServiceId: %d, aViewId: %d ",aServiceId, aViewId );
     
     // Write specific view id to service table
     // No need to check for error beacuse 
@@ -476,13 +460,11 @@
                                 EPropertyContactViewId,
                                 *property );    
     
-    TRACE( T_LIT( 
-       "WriteTabViewIdToServiceTableL() - OK"));
+    TRACE( " OK");
     
     TInt err = property->SetName( EPropertyContactViewId );
     
-     TRACE( T_LIT( 
-       "WriteTabViewIdToServiceTableL ERR1=%d"), err );
+    TRACE( " ERR1=%d", err );
     
     TInt err2 = property->SetValue( aViewId );
     
@@ -491,13 +473,11 @@
         iSettings->AddOrUpdatePropertyL( aServiceId, *property );
         }
     
-    TRACE( T_LIT( 
-       "WriteTabViewIdToServiceTableL ERR2=%d"), err2 );
+    TRACE(" ERR2=%d", err2 );
         
     
     CleanupStack::PopAndDestroy( property );  
                    
-    TRACE( T_LIT("CVIMPSTEngineServiceTableFetcher::WriteTabViewIdToServiceTableL end") );
     }
 
 // ---------------------------------------------------------------------------
@@ -506,7 +486,7 @@
 //
 void CVIMPSTEngineServiceTableFetcher::ShutDownPhonebookL()
     {
-    TRACE( T_LIT("CVIMPSTEngineServiceTableFetcher::ShutDownPhonebookL start"));   
+	TRACER_AUTO;
     
     // Kills phonebook if running
     RWsSession ws;
@@ -521,7 +501,6 @@
         }
     CleanupStack::PopAndDestroy( &ws ); // ws
     
-    TRACE( T_LIT("CVIMPSTEngineServiceTableFetcher::ShutDownPhonebookL end"));
     }
     
 // ---------------------------------------------------------------------------
@@ -531,9 +510,9 @@
 TInt CVIMPSTEngineServiceTableFetcher::XimpAdapterUidL( 
     TUint32 aServiceId )
     {
-    TRACE( T_LIT("CVIMPSTEngineServiceTableFetcher::XimpAdapterUidL start"));   
+	TRACER_AUTO;
     
-    TRACE( T_LIT("XimpAdapterUidL() ServiceId: %d"), aServiceId );
+	TRACE( "ServiceId: %d", aServiceId );
     										
     TInt ret = KErrNotFound;
     CSPProperty* property = CSPProperty::NewLC();
@@ -548,10 +527,9 @@
     
     CleanupStack::PopAndDestroy( property );
     
-    TRACE( T_LIT("XimpAdapterUidL() XimpAdapterUid: %d "), 
-    										ret );
+    
+    TRACE( "XimpAdapterUid: %d ",ret );
     										
-    TRACE( T_LIT("CVIMPSTEngineServiceTableFetcher::XimpAdapterUidL end"));   
     return ret;
     }        
     
@@ -563,9 +541,9 @@
 CVIMPSTEngineServiceTableFetcher::PresenceRequestStatusL( 
         TUint32 aServiceId )    
     {
-    TRACE( T_LIT("CVIMPSTEngineServiceTableFetcher::PresenceRequestStatusL  start")); 
+	TRACER_AUTO;
     
-    TRACE( T_LIT("PresenceRequestStatusL() ServiceId: %d"), aServiceId );
+	 TRACE( " ServiceId: %d", aServiceId );
     
     TVIMPSTEnums::TVIMPSTPresenceRequestStatus ret = 
     			TVIMPSTEnums::ESVCEPresenceRequestStatusUnKnown;
@@ -594,10 +572,8 @@
     
     CleanupStack::PopAndDestroy( property );
     
-    TRACE( T_LIT("PresenceRequestStatusL() PresenceRequestStatus: %d "), 
-    										ret );
+    TRACE("PresenceRequestStatus: %d ", ret );
     										
-    TRACE( T_LIT("CVIMPSTEngineServiceTableFetcher::PresenceRequestStatusL end"));   
     return ret;        
     }
   
@@ -608,10 +584,10 @@
 void CVIMPSTEngineServiceTableFetcher::GetDefaultDomainNameL( 
     TUint32 aServiceId, TDes& aDefaultDomainName )
     {
-    TRACE( T_LIT( 
-       "CVIMPSTEngineServiceTableFetcher::GetDefaultDomainNameL start")); 
+	TRACER_AUTO;
     
-    TRACE( T_LIT("GetContactStoreIdL() ServiceId: %d"), aServiceId );
+	
+	 TRACE( "ServiceId: %d", aServiceId );
         
     CSPProperty* property = CSPProperty::NewLC();
     TInt err = iSettings->FindPropertyL( aServiceId,
@@ -624,10 +600,8 @@
 
     CleanupStack::PopAndDestroy( property );
     
-    TRACE( T_LIT("GetContactStoreIdL() - StoreId: %S"), &aDefaultDomainName );                
+    TRACE( " StoreId: %S", &aDefaultDomainName );
     
-    TRACE( T_LIT( 
-       "CVIMPSTEngineServiceTableFetcher::GetDefaultDomainNameL end"));  
  	
     } 
 
--- a/uiservicetab/vimpstengine/src/cvimpstenginesessioncntxtobserver.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstengine/src/cvimpstenginesessioncntxtobserver.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -52,7 +52,7 @@
 #include <searchkeyinfo.h>
 #include <ximpfeatureinfo.h>
 
-#include "vimpstdebugtrace.h"
+#include "uiservicetabtracer.h"
 
 //xmppsettings
 #include "xmppparams.h"
@@ -67,6 +67,7 @@
 // ---------------------------------------------------------
 CVIMPSTEngineSessionCntxtObserver* CVIMPSTEngineSessionCntxtObserver::NewL( TUint32 aServiceId )
     {
+	TRACER_AUTO;
     CVIMPSTEngineSessionCntxtObserver* self = 
     					CVIMPSTEngineSessionCntxtObserver::NewLC( aServiceId);
     CleanupStack::Pop( self );
@@ -79,6 +80,7 @@
 // ---------------------------------------------------------
 CVIMPSTEngineSessionCntxtObserver* CVIMPSTEngineSessionCntxtObserver::NewLC(TUint32 aServiceId)
     {
+	TRACER_AUTO;
     CVIMPSTEngineSessionCntxtObserver* self = new 
     					(ELeave) CVIMPSTEngineSessionCntxtObserver( aServiceId);
     CleanupStack::PushL( self );
@@ -92,6 +94,7 @@
 // ---------------------------------------------------------    
 void CVIMPSTEngineSessionCntxtObserver::ConstructL()
 	{
+	TRACER_AUTO;
 	iRequestMapper = CVIMPSTEngineRequestMapper::NewL();	
 	iReqResult = KErrNone;
 	iClient = MXIMPClient::NewClientL();               
@@ -125,7 +128,7 @@
 // ---------------------------------------------------------
 CVIMPSTEngineSessionCntxtObserver::~CVIMPSTEngineSessionCntxtObserver()
     {
-    
+	TRACER_AUTO;
     iObserverArray.Reset();
     iObserverArray.Close();
     
@@ -163,9 +166,8 @@
     const MXIMPContext& aContext,
     const MXIMPBase& aEvent )
     {
-    TRACE( T_LIT("InsideCallback::HandlePresenceContextEvent start"));
+	TRACER_AUTO;
     TRAP_IGNORE(DoHandlePresenceContextEventL( aContext, aEvent ));
-   	TRACE( T_LIT("InsideCallback::HandlePresenceContextEvent end"));	
     }    
 
 	
@@ -203,7 +205,7 @@
 //
 TInt CVIMPSTEngineSessionCntxtObserver::ServerBindL(TUid aProtocolUid)
     {
-    TRACE( T_LIT("CVIMPSTEngineSessionCntxtObserver::ServerBindL start"));
+	TRACER_AUTO;
     TInt err = KErrNotFound;
     //Bind context to desired presence service
     if ( TVIMPSTEnums::EVIMPSTBindDone != iBindStatus )
@@ -220,7 +222,7 @@
             // case is flagged here. When unbind completes, rebind is done. 
             // If unbind is called between these operations, flag is set 
             // ESVCEPresenceBindNotDone to avoid bind if service was disabled
-            TRACE( T_LIT("CVIMPSTEngineSessionCntxtObserver::ServerBindL err: %d"), err);
+            TRACE( "err: %d", err);
             iBindStatus = TVIMPSTEnums::EVIMPSTBindFailureMode;
             }
         else
@@ -236,7 +238,6 @@
         {
         err = KErrNone;
         }
-    TRACE( T_LIT("CVIMPSTEngineSessionCntxtObserver::ServerBindL end"));
     return err;
     }
 // ---------------------------------------------------------------------------
@@ -246,7 +247,7 @@
 TInt CVIMPSTEngineSessionCntxtObserver::ServerUnBindL( 
     TBool aDoUnsubscribe )
     {
-	TRACE( T_LIT("CVIMPSTEngineSessionCntxtObserver::ServerUnBind start"));
+	TRACER_AUTO;
 	TInt err = KErrNotFound;
 	if ( TVIMPSTEnums::EVIMPSTBindDone == iBindStatus )
 		{
@@ -255,7 +256,7 @@
 			iBindStatus = TVIMPSTEnums::EVIMPSTUnBinding;
 			}
 		
-    TRACE( T_LIT("CVIMPSTEngineSessionCntxtObserver::ServerUnBind - do unbind"));
+        TRACE( " do unbind");
 		TXIMPRequestId operationId = TXIMPRequestId::Null(); 
 		TRAP( err, operationId = iPresenceCtx->UnbindL());
 		iBindStatus = TVIMPSTEnums::EVIMPSTUnBindWaiting;
@@ -269,7 +270,6 @@
 		// rebind when unbind completes.
 		iBindStatus = TVIMPSTEnums::EVIMPSTBindNotDone;
 		}
-	TRACE( T_LIT("CVIMPSTEngineSessionCntxtObserver::ServerUnBind end"));
 	return err;
     } 
 
@@ -280,7 +280,7 @@
 //
 HBufC* CVIMPSTEngineSessionCntxtObserver::UriFromXimpOperationLC(const MXIMPBase& aEvent )
     {
-    TRACE( T_LIT("CVIMPSTEngineSessionCntxtObserver::UriFromXimpOperationLC start"));
+	TRACER_AUTO;
     const MPresentityPresenceEvent& event =
             *TXIMPGetInterface< const MPresentityPresenceEvent >::From( 
                 aEvent, MXIMPBase::EPanicIfUnknown );  
@@ -290,7 +290,6 @@
         {
         retValue = KNullDesC().AllocLC();
         }
-    TRACE( T_LIT("CVIMPSTEngineSessionCntxtObserver::UriFromXimpOperationLC end"));
     return retValue;    
     }
 
@@ -302,7 +301,7 @@
     const MXIMPContext& aContext,
     const MXIMPBase& aEvent )
     {
-    TRACE( T_LIT("CVIMPSTEngineSessionCntxtObserver::DoHandlePresenceContextEventL start"));
+	TRACER_AUTO;
     const TInt32 eventId = aEvent.GetInterfaceId();
         
         switch( aEvent.GetInterfaceId() )
@@ -310,7 +309,7 @@
             case MXIMPRequestCompleteEvent::KInterfaceId:
                 {
                 
-                TRACE( T_LIT("InsideCallbackswitch::MXIMPRequestCompleteEvent start"));
+                TRACE( "InsideCallbackswitch::MXIMPRequestCompleteEvent start");
                 const MXIMPRequestCompleteEvent* event =
                     TXIMPGetInterface< const MXIMPRequestCompleteEvent >::From( 
                         aEvent, MXIMPBase::EPanicIfUnknown );
@@ -345,83 +344,83 @@
 	                    						operation);
 	                    }
                     }
-                TRACE( T_LIT("InsideCallbackswitch::MXIMPRequestCompleteEvent end"));    
+                TRACE("InsideCallbackswitch::MXIMPRequestCompleteEvent end"); 
                 break;
                 }
 
             case MXIMPContextStateEvent::KInterfaceId:
                 {
-                TRACE( T_LIT("InsideCallbackswitch::MXIMPContextStateEvent"));                
+                TRACE( "InsideCallbackswitch::MXIMPContextStateEvent");  
                 break;
                 }
             case MPresentityPresenceEvent::KInterfaceId:
                 {
-                TRACE( T_LIT("InsideCallbackswitch::::MPresentityPresenceEvent start"));
+                TRACE( "InsideCallbackswitch::::MPresentityPresenceEvent start");
                 TInt count = iObserverArray.Count();
                 for(TInt i = 0; i < count; i++)
                     {
                     iObserverArray[i]->HandleSessionContextEventL(aContext,aEvent);
                     }
-                TRACE( T_LIT("InsideCallbackswitch::::MPresentityPresenceEvent end"));
+                TRACE( "InsideCallbackswitch::::MPresentityPresenceEvent end");
                 break;
                 }
             case MPresentityGroupContentEvent::KInterfaceId:
                {
-               TRACE( T_LIT("InsideCallbackswitch::::MPresentityGroupContentEvent start"));
+               TRACE( "InsideCallbackswitch::::MPresentityGroupContentEvent start");
                TInt count = iObserverArray.Count();
                for(TInt i = 0; i < count; i++)
                   {
                   iObserverArray[i]->HandleSessionContextEventL(aContext,aEvent);
                   }
-               TRACE( T_LIT("InsideCallbackswitch::::MPresentityGroupContentEvent end"));
+               TRACE( "InsideCallbackswitch::::MPresentityGroupContentEvent end");
                break;  
                }
             case MPresenceGrantRequestListEvent::KInterfaceId:
                {
-               TRACE( T_LIT("InsideCallbackswitch::::MPresentityGroupContentEvent start"));
+               TRACE("InsideCallbackswitch::::MPresenceGrantRequestListEvent start");
                TInt count = iObserverArray.Count();
                for(TInt i = 0; i < count; i++)
                   {
                   iObserverArray[i]->HandleSessionContextEventL(aContext,aEvent);
                   }               
-               TRACE( T_LIT("InsideCallbackswitch::::MPresentityGroupContentEvent end"));
+               TRACE( "InsideCallbackswitch::::MPresenceGrantRequestListEvent end");
                break;
                }
            
             case MSearchEvent::KInterfaceId:
                 {
-                TRACE( T_LIT("InsideCallbackswitch::::MSearchEvent start"));
+                TRACE( "InsideCallbackswitch::::MSearchEvent start");
 
                 TInt count = iObserverArray.Count();
                 for(TInt i = 0; i < count; i++)
                    {
                    iObserverArray[i]->HandleSessionContextEventL(aContext,aEvent);
                    } 
-                TRACE( T_LIT("InsideCallbackswitch::::MSearchEvent end"));
+                TRACE( "InsideCallbackswitch::::MSearchEvent end");
 
                 break;
                 }
             case MSearchKeysEvent::KInterfaceId:
                 {
-                TRACE( T_LIT("InsideCallbackswitch::::MSearchKeysEvent start"));
+                TRACE( "InsideCallbackswitch::::MSearchKeysEvent start");
                 TInt count = iObserverArray.Count();
                 for(TInt i = 0; i < count; i++)
                    {
                    iObserverArray[i]->HandleSessionContextEventL(aContext,aEvent);
                    } 
-                TRACE( T_LIT("InsideCallbackswitch::::MSearchKeysEvent end"));
+                TRACE( "InsideCallbackswitch::::MSearchKeysEvent end");
 
                 break;
                 }
             case MPresenceBlockListEvent::KInterfaceId:
                {
-               TRACE( T_LIT("InsideCallbackswitch::::MPresenceBlockListEvent start"));
+               TRACE( "InsideCallbackswitch::::MPresenceBlockListEvent start");
                TInt count = iObserverArray.Count();
                for(TInt i = 0; i < count; i++)
                   {
                   iObserverArray[i]->HandleSessionContextEventL(aContext,aEvent);
                   } 
-               TRACE( T_LIT("InsideCallbackswitch::::MPresenceBlockListEvent end"));
+               TRACE( "InsideCallbackswitch::::MPresenceBlockListEvent end");
                break;
                }
               
@@ -430,7 +429,6 @@
                 break;
                 }
             }
-    TRACE( T_LIT("CVIMPSTEngineSessionCntxtObserver::DoHandlePresenceContextEventL end"));
     }
 // ---------------------------------------------------------------------------
 // CVIMPSTEngineSessionCntxtObserver::XimpAuthorizationL
@@ -439,6 +437,7 @@
 MPresenceAuthorization& 
 CVIMPSTEngineSessionCntxtObserver::XimpAuthorizationL()
     {
+	TRACER_AUTO;
     __ASSERT_ALWAYS( iFeatures, User::Leave( KErrNotSupported ));
     __ASSERT_ALWAYS( &iFeatures->PresenceAuthorization(), 
         User::Leave( KErrNotSupported ));
@@ -522,6 +521,7 @@
 //
 void CVIMPSTEngineSessionCntxtObserver::RegisterObserver(MVIMPSTEngineSessionCntxtObserver* aObserver)
     {
+	TRACER_AUTO;
     if (aObserver)
 	    {    	
 	    
@@ -539,6 +539,7 @@
 //
 void CVIMPSTEngineSessionCntxtObserver::UnRegisterObserver(MVIMPSTEngineSessionCntxtObserver* aObserver)
     {
+	TRACER_AUTO;
     if (aObserver)
 	    {    
 	    TInt index = iObserverArray.Find(aObserver);
@@ -557,7 +558,7 @@
 //
 void CVIMPSTEngineSessionCntxtObserver::IdentifySupportedFeaturesL()
     {
-    TRACE( T_LIT("CVIMPSTEngineSessionCntxtObserver::IdentifySupportedFeaturesL start"));
+	TRACER_AUTO;
     using namespace NXIMPFeature::Presence;
     using namespace NXIMPFeature::InstantMessage;
     using namespace NXIMPFeature::Search;
@@ -646,8 +647,7 @@
 		    }
     
     	delete ximpCtxFeats;
-        }
-    TRACE( T_LIT("CVIMPSTEngineSessionCntxtObserver::IdentifySupportedFeaturesL end"));
+        }				    
     }
 
 
--- a/uiservicetab/vimpstengine/src/cvimpstenginevoipsubservice.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstengine/src/cvimpstenginevoipsubservice.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -24,7 +24,7 @@
 #include "cvimpstengineservicetablefetcher.h"
 #include "mvimpstengineserviceconnectioneventobserver.h"
 //debug
-#include "vimpstdebugtrace.h"
+#include "uiservicetabtracer.h"
 
 
 // ================= MEMBER FUNCTIONS =======================
@@ -38,14 +38,13 @@
 									MVIMPSTEngineServiceConnectionEventObserver& aObserver
 									)
     {
-    TRACE( T_LIT("CVIMPSTEngineVOIPSubService::NewL start"));
-    TRACE( T_LIT("NewL() aServiceId: %d"), aServiceId);
+	TRACER_AUTO;
+	TRACE( "aServiceId: %d", aServiceId);
     
     CVIMPSTEngineVOIPSubService* self = CVIMPSTEngineVOIPSubService::NewLC(aServiceId,aCchHandler,
     										aTableFetcher, aObserver);
     CleanupStack::Pop( self );
 	
-	TRACE( T_LIT("CVIMPSTEngineVOIPSubService::NewL end"));
     return self;
     }
 
@@ -60,8 +59,8 @@
                                                    	CVIMPSTEngineServiceTableFetcher& aTableFetcher,
                                                    	MVIMPSTEngineServiceConnectionEventObserver& aObserver )
 	{
-	TRACE( T_LIT("CVIMPSTEngineVOIPSubService::NewLC start"));
-	TRACE( T_LIT("NewL() aServiceId: %d"), aServiceId);
+	TRACER_AUTO;
+	TRACE( "aServiceId: %d", aServiceId);
 	
     CVIMPSTEngineVOIPSubService* self = new (ELeave) CVIMPSTEngineVOIPSubService(
     												aServiceId,aCchHandler,aTableFetcher,
@@ -69,7 +68,6 @@
     CleanupStack::PushL( self );
     self->ConstructL( );
     
-    TRACE( T_LIT("CVIMPSTEngineVOIPSubService::NewLC end"));
     return self;
 	}
 
@@ -80,11 +78,10 @@
 
 CVIMPSTEngineVOIPSubService::~CVIMPSTEngineVOIPSubService()
 	{
-	TRACE( T_LIT("CVIMPSTEngineVOIPSubService::~CVIMPSTEngineVOIPSubService start"));
+	TRACER_AUTO;
    	
    	iCchHandler.UnRegisterCchObserver(ECCHVoIPSub);	
    	
-   	TRACE( T_LIT("CVIMPSTEngineVOIPSubService::~CVIMPSTEngineVOIPSubService end"));
  	}
 
 
@@ -95,7 +92,7 @@
 
 void CVIMPSTEngineVOIPSubService::ConstructL(  )
 	{
-	TRACE( T_LIT("CVIMPSTEngineVOIPSubService::ConstructL start"));
+	TRACER_AUTO;
 	
 	TCCHSubserviceState serviceState = ECCHUninitialized;    
     TInt error = iCchHandler.GetServiceState( 
@@ -105,10 +102,8 @@
 	
 	iCchHandler.RegisterCchObserverL(this,ECCHVoIPSub);       	
     
-    TRACE( T_LIT("ConstructL() ResolveServiceState returned ServiceState: %d"), 
-							iServiceState );
-   	
-   	TRACE( T_LIT("CVIMPSTEngineVOIPSubService::ConstructL end"));
+	TRACE( "ResolveServiceState returned ServiceState: %d", iServiceState );
+	
    	
    	}
 
@@ -139,10 +134,8 @@
 void CVIMPSTEngineVOIPSubService::CchEventOccuredL( TUint /*aServiceId*/, 
     TCCHSubserviceState aState, TInt aServiceError )
 	{	
-	
-	TRACE( T_LIT("CVIMPSTEngineVOIPSubService::CchEventOccuredL start"));
-	TRACE( T_LIT("CchEventOccuredL() TCCHSubserviceState : %d, ServiceErr: %d"), 
-									aState, aServiceError );
+	TRACER_AUTO;
+	TRACE( " TCCHSubserviceState : %d, ServiceErr: %d",aState, aServiceError );
 	
 	if ( aServiceError && ECCHDisabled != aState )
         {
@@ -159,7 +152,6 @@
         iObserver.HandleServceConnectionEventL();
         }	
 	
-	TRACE( T_LIT("CVIMPSTEngineVOIPSubService::CchEventOccuredL end"));
 	
     }    
 
@@ -171,10 +163,9 @@
 void CVIMPSTEngineVOIPSubService::DoHandleCchErrorL( 
     TInt aServiceError )
     {
-    
-    TRACE( T_LIT("CVIMPSTEngineVOIPSubService::DoHandleCchErrorL start"));
-    TRACE( T_LIT("DoHandleCchErrorL() ServiceErr: %d"), 
-									aServiceError );
+	TRACER_AUTO;
+	  TRACE(" ServiceErr: %d", aServiceError );
+	
 	/*								
 	MCchUi& cchUi = iCchHandler.CchUiApi();
 										
@@ -195,7 +186,6 @@
         }
         */
 	
-	TRACE( T_LIT("CVIMPSTEngineVOIPSubService::DoHandleCchErrorL end"));
         
     }	
     
@@ -209,13 +199,11 @@
 										TCCHSubserviceState aState, 
             							TInt aServiceError )
     {
-    
-    TRACE( T_LIT("CVIMPSTEngineVOIPSubService::ResolveServiceState start"));    
+	TRACER_AUTO;
         
     TVIMPSTEnums::TVIMPSTRegistrationState state = TVIMPSTEnums::ESVCENotRegistered;       
     
-    TRACE( T_LIT("ResolveServiceState() iServiceId: %d, ServiceState: %d"), 
-    							iServiceId, aState );    	
+    TRACE( " iServiceId: %d, ServiceState: %d", iServiceId, aState ); 
 
     TBool handleServiceStates = ETrue;
     if ( aServiceError && ECCHDisabled != aState )
@@ -224,7 +212,7 @@
 		//Still API from CCH is required to know whether ALR is supported or not
         if ( (KCCHErrorInvalidSettings != aServiceError) && (ECCHConnecting == aState) )        
             {   
-            TRACE( T_LIT("ResolveServiceState() ESVCEWaitingForNetwork") );
+            TRACE( "ESVCEWaitingForNetwork" );
             handleServiceStates = EFalse;  
             state = TVIMPSTEnums::ESVCEWaitingForNetwork;	           
             }
@@ -236,14 +224,14 @@
             {
             case ECCHEnabled:
                 {
-                TRACE( T_LIT("ResolveServiceState() ESVCERegistered") );                
+                TRACE( " ESVCERegistered" );    
                 state = TVIMPSTEnums::ESVCERegistered;
                 }
                 break;
 
             case ECCHDisconnecting:      
                 {
-                TRACE( T_LIT("ResolveServiceState() ESVCENetworkDisConnecting") );                
+                TRACE( " ESVCENetworkDisConnecting");   
                 state = TVIMPSTEnums::ESVCENetworkDisConnecting;
                 }
                 break;
@@ -251,14 +239,14 @@
             case ECCHUninitialized:
             case ECCHDisabled:  
                 {
-                TRACE( T_LIT("ResolveServiceState() ESVCENotRegistered") );                
+                TRACE( " ESVCENotRegistered" );   
                 state = TVIMPSTEnums::ESVCENotRegistered;
                 }
                 break;
                 
             case ECCHConnecting:               
                 {
-                TRACE( T_LIT("ResolveServiceState() ESVCENetworkConnecting") );                
+                TRACE(" ESVCENetworkConnecting" );    
                 state = TVIMPSTEnums::ESVCENetworkConnecting;
                 }
                 break;
@@ -268,7 +256,6 @@
             }
         }        
         
-	TRACE( T_LIT("CVIMPSTEngineVOIPSubService::ResolveServiceState end"));
 	        
     return state;  
 	
@@ -281,8 +268,8 @@
 // 
 TVIMPSTEnums::TVIMPSTRegistrationState CVIMPSTEngineVOIPSubService::SubServiceState() const
 	{
-	TRACE( T_LIT("SubServiceState() ServiceId: %d ServiceState: %d"), 
-							iServiceId, iServiceState );
+	TRACER_AUTO;
+	TRACE( " ServiceId: %d ServiceState: %d",iServiceId, iServiceState );
 	return iServiceState;
 	}
  
@@ -293,8 +280,9 @@
 // 
 TVIMPSTEnums::SubServiceType CVIMPSTEngineVOIPSubService::Type() const	
 	{
-	TRACE( T_LIT("CVIMPSTEngineVOIPSubService::Type: %d"), iType );
-	TRACE( T_LIT("CVIMPSTEngineVOIPSubService: [0x%x]"), this );		    	
+	TRACER_AUTO;
+	TRACE( "Type: %d", iType );
+	TRACE( " [0x%x]", this );
 	return iType;	
 	}
 
--- a/uiservicetab/vimpststorage/src/cvimpststorageactivehandler.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpststorage/src/cvimpststorageactivehandler.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -20,7 +20,7 @@
 #include "cvimpststorageactivehandler.h"
 #include "mvimpststorageactiveobserver.h"
 
-#include "vimpstdebugtrace.h"
+#include "uiservicetabtracer.h"
 #include <e32base.h>
 
 // CONSTANTS
@@ -59,6 +59,7 @@
 CVIMPSTStorageActiveHandler* CVIMPSTStorageActiveHandler::NewL( 
 					MVIMPSTStorageActiveObserver* aObserver )
     {
+	TRACER_AUTO;
     CVIMPSTStorageActiveHandler* self = new( ELeave ) CVIMPSTStorageActiveHandler( aObserver );
 	CleanupStack::PushL( self );
     self->ConstructL();
@@ -81,7 +82,7 @@
 					                          MVIMPSTStorageContact* aContact,
 					                          TInt aContactIndex )
 	{
-	TRACE( T_LIT("CVIMPSTStorageActiveHandler::IssueRequest() begin") );
+	TRACER_AUTO;
 	
 	 if( IsActive() )
         {
@@ -94,7 +95,6 @@
 	iList = aList ; 
 	iContact = aContact ;
 	iContactIndex = aContactIndex;
-	TRACE( T_LIT("CVIMPSTStorageActiveHandler::IssueRequest() end") );
 	}
 
 // -----------------------------------------------------------------------------
@@ -104,10 +104,10 @@
 //
 void CVIMPSTStorageActiveHandler::RunL()
 	{
-	TRACE( T_LIT("CVIMPSTStorageActiveHandler::RunL() begin") );
+	TRACER_AUTO;
 	if( iObserver )
 		{
-		TRACE( T_LIT("CVIMPSTStorageActiveHandler::RunL() send notification") );
+	TRACE( "send notification" );
 		TInt status( iStatus.Int() );
 	    if( status != KErrCancel )
             {
@@ -118,9 +118,8 @@
             }
             
         
-		TRACE( T_LIT("CVIMPSTStorageActiveHandler::RunL() notification sent") );
+	    TRACE( " notification sent" );
 		}
-    TRACE( T_LIT("CVIMPSTStorageActiveHandler::RunL() end") );
 	}
 
 // ---------------------------------------------------------
@@ -130,7 +129,7 @@
 //
 TInt CVIMPSTStorageActiveHandler::RunError( TInt aError )
 	{
-	TRACE( T_LIT("CVIMPSTStorageActiveHandler::RunError() begin") );
+	TRACER_AUTO;
 	if( iObserver )
 		{
 	    TRAP_IGNORE( iObserver->HandleDelayedNotificationL(iEventType,
@@ -138,7 +137,6 @@
 											iContact,
 											iContactIndex ) );
         }
-    TRACE( T_LIT("CVIMPSTStorageActiveHandler::RunError() End ") );
 	return aError;
 	}
 // ---------------------------------------------------------
--- a/uiservicetab/vimpststorage/src/cvimpststoragecontact.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpststorage/src/cvimpststoragecontact.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -20,7 +20,7 @@
 // INCLUDE FILES
 #include "cvimpststoragecontact.h"
 #include "tvimpstenums.h"
-#include "vimpstdebugtrace.h"
+#include "uiservicetabtracer.h"
 #include "cvimpststoragedefs.h"
 
 #include <MVPbkStoreContact.h>
@@ -52,6 +52,7 @@
     								  const MVPbkContactLink& aContactLink,
     								  const TDesC8& aAvatarContent )
     {
+	TRACER_AUTO;
     iUserId = aUserId.AllocL();
     iDisplayName = aDisplayName.AllocL();
     MVPbkContactLink* link = aContactLink.CloneLC();
@@ -68,6 +69,7 @@
 void CVIMPSTStorageContact::ConstructL(const TDesC& aUserId,
     								  const TDesC& aDisplayName )
     {
+	TRACER_AUTO;
     iUserId = aUserId.AllocL();
     iDisplayName = aDisplayName.AllocL();
     }
@@ -81,6 +83,7 @@
 		        								  const MVPbkContactLink& aContactLink,
 		        								  const TDesC8& aAvatarContent)
     {
+	TRACER_AUTO;
     CVIMPSTStorageContact* self = CVIMPSTStorageContact::NewLC( aUserId,aDisplayName,aContactLink,aAvatarContent );
     CleanupStack::Pop( self );
 	return self;
@@ -94,6 +97,7 @@
 CVIMPSTStorageContact* CVIMPSTStorageContact::NewL(const TDesC& aUserId,
 		        								  const TDesC& aDisplayName )
     {
+	TRACER_AUTO;
     CVIMPSTStorageContact* self = new (ELeave) CVIMPSTStorageContact();
     CleanupStack::PushL( self );
     self->ConstructL( aUserId,aDisplayName );
@@ -110,6 +114,7 @@
 		        								  const MVPbkContactLink& aContactLink,
 		        								  const TDesC8& aAvatarContent)
     {
+	TRACER_AUTO;
     CVIMPSTStorageContact* self = new( ELeave ) CVIMPSTStorageContact();
     CleanupStack::PushL( self );
     self->ConstructL( aUserId,aDisplayName,aContactLink ,aAvatarContent);
@@ -140,6 +145,7 @@
 //
 const TDesC& CVIMPSTStorageContact::UserId() const
     {
+	TRACER_AUTO;
     if( iUserId )
         {
         return *iUserId;
@@ -154,6 +160,7 @@
 //
 const TDesC& CVIMPSTStorageContact::Name() const
     {
+	TRACER_AUTO;
     if( iDisplayName )
         {
         return *iDisplayName;
@@ -190,6 +197,7 @@
 //
 const TDesC& CVIMPSTStorageContact::StatusText() const
     {
+	TRACER_AUTO;
     if( iStatusText )
         {
         return *iStatusText;
@@ -219,6 +227,7 @@
 //
 void CVIMPSTStorageContact::SetAvatarContentL( const TDesC8& aAvatarContent ,MVIMPSTStorageVPbkContactStore& aVPPkStoreHandler )
     {
+	TRACER_AUTO;
     if( iAvatarContent )
         {
         if( iAvatarContent->Compare( aAvatarContent ) == 0 )
@@ -259,6 +268,7 @@
 //
 void CVIMPSTStorageContact::SetNameL( const TDesC& aName )
     {
+	TRACER_AUTO;
     if( iDisplayName )
 	    {
 	    delete iDisplayName;
--- a/uiservicetab/vimpststorage/src/cvimpststoragecontactlist.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpststorage/src/cvimpststoragecontactlist.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -24,7 +24,7 @@
 #include "mvimpststoragecontact.h"
 #include "mvimpststoragecontactsobserver.h"
 #include "tvimpststoragepanics.h"
-#include "vimpstdebugtrace.h"
+#include "uiservicetabtracer.h"
 #include "vimpstdebugassert.h"
 #include "cvimpststoragecontact.h"
 
@@ -59,6 +59,7 @@
 void CVIMPSTStorageContactList::ConstructL( const TDesC& aContactListId, 
                                  const TDesC& aDisplayName )
     {
+	TRACER_AUTO;
     iListId = aContactListId.AllocL();  
     iDisplayName = aDisplayName.AllocL();
     }
@@ -72,6 +73,7 @@
 					                                      const TDesC& aContactListId, 
 					                                      const TDesC& aDisplayName )
     {
+	TRACER_AUTO;
     CVIMPSTStorageContactList* self = NewLC(  aSorter,
 			                                  aContactListId, 
 			                                  aDisplayName );
@@ -88,6 +90,7 @@
 					                                       const TDesC& aContactListId, 
 					                                       const TDesC& aDisplayName )
     {
+	TRACER_AUTO;
     CVIMPSTStorageContactList* self = new( ELeave ) CVIMPSTStorageContactList(aSorter );
     CleanupStack::PushL( self );
     self->ConstructL( aContactListId, aDisplayName );
@@ -141,41 +144,41 @@
 //
 TInt CVIMPSTStorageContactList::AddStorageContactToCacheL( MVIMPSTStorageContact* aContact, TInt& aIndex )
     {
-    TRACE( T_LIT("CVIMPSTStorageContactList::AddStorageContactToCacheL begin") ); 
+	TRACER_AUTO;
     
     if( !aContact )
 	    {
 	    return KErrArgument;	
 	    }
     TPtrC userID = aContact->UserId();
-    TRACE( T_LIT("CVIMPSTStorageContactList::AddStorageContactToCacheL userId = %S"), &userID ); 
+    TRACE( " userId = %S", &userID ); 
     // optimize insert for inserting of reverse alphabetical order
     TInt idIndex( 0 );
     TInt count( iOrderedContacts.Count() );
-    TRACE( T_LIT("CVIMPSTStorageContactList::AddStorageContactToCacheL count = %d"),count ); 
+    TRACE("count = %d",count ); 
     if( count && aContact->UserId().Length() &&
     	 ( 0 <= VIMPSTStorageUtils::NeutralCompare( aContact->UserId(),
     								  iOrderedContacts[ 0 ]->UserId() ) ) )
     	{
-    	TRACE( T_LIT("CVIMPSTStorageContactList::AddStorageContactToCacheL inside if") ); 
+    TRACE( "inside if" );
     	// there are items and the contact should not be inserted to beginning
     	// => find the correct place
 	    TLinearOrder< MVIMPSTStorageContact > userIdOrder( *CompareUserIdAlphabetically );
 	    if( KErrNone == iOrderedContacts.FindInOrder( aContact, idIndex, userIdOrder ) )
     	    {
-    	    TRACE( T_LIT("CVIMPSTStorageContactList::AddStorageContactToCacheL contact already exists.") ); 
+	    TRACE( "contact already exists." ); 
             // this contact already exists, return it
             return KErrAlreadyExists;
             }
     	}
-    TRACE( T_LIT("CVIMPSTStorageContactList::AddStorageContactToCacheL inserting the contact") ); 
+    TRACE( "inserting the contact" ); 
     // the position is now correct, insert the contact
     iOrderedContacts.InsertL( aContact, idIndex );
 
     // insert also to list sorted by contact "identification"
     TInt err( KErrNone );
     count = iContactArray.Count();  
-    TRACE( T_LIT("CVIMPSTStorageContactList::AddStorageContactToCacheL iContactsArray count %d"),count ); 
+    TRACE( "iContactsArray count %d",count ); 
     TLinearOrder< MVIMPSTStorageContact >& order = iSorter.InsertOrder();
     if( count &&  0 > (*order)( aContact, iContactArray[ 0 ] ) )
     	{
@@ -187,7 +190,7 @@
        	// insert in correct position
        	err = iContactArray.InsertInOrderAllowRepeats( aContact, order );
        	}
-    TRACE( T_LIT("CVIMPSTStorageContactList::AddStorageContactToCacheL iContactsArray inserting error %d"),err ); 
+    TRACE( "iContactsArray inserting error %d",err ); 
     if( err != KErrNone )
         {
         // appending to second array did not succeed, so remove from first and leave
@@ -195,7 +198,6 @@
         User::Leave( err );
         }
     aIndex = idIndex;
-    TRACE( T_LIT("CVIMPSTStorageContactList::AddStorageContactToCacheL End") ); 
     return err;
     }
  
@@ -205,6 +207,7 @@
 //
 TInt CVIMPSTStorageContactList::RemoveContactFromCacheL( const TDesC& aContactId, TInt& aIndex )
     {
+	TRACER_AUTO;
     TInt orderedIndex(0);
     TInt contactIndex = FindContactIndex( aContactId, orderedIndex );
 	aIndex = contactIndex;
@@ -226,6 +229,7 @@
 //
 TInt CVIMPSTStorageContactList::RemoveContactFromCacheL( const MVPbkContactLink& aContactLink, TInt& index )
     {
+	TRACER_AUTO;
     TInt error = KErrNotFound;
     TInt orderedIndex(0);
     TInt contactIndex = FindContactByLinkL( aContactLink, orderedIndex );
@@ -249,6 +253,7 @@
 TInt CVIMPSTStorageContactList::ContactCount( TBool aSkipOfflineContacts,
 						   TBool aSkipBlocekedContacts ) const
     {
+	TRACER_AUTO;
     if( !aSkipOfflineContacts && !aSkipBlocekedContacts )
         {
         return iContactArray.Count();
@@ -277,6 +282,7 @@
 TInt CVIMPSTStorageContactList::FindContactIndex( const TDesC& aUserId,
                                        TInt& aOrderedIndex ) const
     {
+	TRACER_AUTO;
      TInt low( 0 );
     TInt high( iOrderedContacts.Count() );
     while( high > low )
@@ -326,6 +332,7 @@
 //
 void CVIMPSTStorageContactList::ResortContact( MVIMPSTStorageContact* aContact )
     {
+	TRACER_AUTO;
     // let it panic, if index is not found, which would be bad
     TInt index( iContactArray.Find( aContact ) );
     __ASSERT_DEBUG( index != KErrNotFound , Panic( ESortingCorupted ));
@@ -365,6 +372,7 @@
 TInt CVIMPSTStorageContactList::FindIndexOfContact( const MVIMPSTStorageContact* aContact,
                             TVIMPSTEnums::TFilterType aFilter  ) const
     {    
+	TRACER_AUTO;
     TInt count( iContactArray.Count() ); 
     if ( aFilter == TVIMPSTEnums::EFilterAll )
 		{
@@ -424,6 +432,7 @@
 //
 MVIMPSTStorageContact& CVIMPSTStorageContactList::operator[]( TInt aIndex ) const
     {
+	TRACER_AUTO;
     __CHAT_ASSERT_DEBUG( aIndex < iContactArray.Count() )
     return *iContactArray[ aIndex ];
     }
@@ -447,6 +456,7 @@
 MVIMPSTStorageContact& CVIMPSTStorageContactList::FilteredContact( 
                 TInt aIndex, TVIMPSTEnums::TFilterType aFilter ) const
 	{
+	TRACER_AUTO;
     if ( aFilter == TVIMPSTEnums::EFilterAll )
 		{
 		return (*this)[aIndex];
@@ -483,6 +493,7 @@
 TInt CVIMPSTStorageContactList::FilteredCount( 
                             TVIMPSTEnums::TFilterType aFilter ) const
 	{
+	TRACER_AUTO;
     if ( aFilter == TVIMPSTEnums::EFilterAll )
 		{
 		return Count();
@@ -506,6 +517,7 @@
 TBool CVIMPSTStorageContactList::FilterAllowsContact( const MVIMPSTStorageContact* aContact,
                              TVIMPSTEnums::TFilterType aFilter ) const
     {
+	TRACER_AUTO;
     TBool showContact( EFalse );
     TInt myStatus( KErrNone );          
     TVIMPSTEnums::TOnlineStatus status(
@@ -558,6 +570,7 @@
 //
 MVIMPSTStorageContact* CVIMPSTStorageContactList::FindContact( const TDesC& aContactId )
     {
+	TRACER_AUTO;
     TInt orderedIndex(0);
     TInt contactIndex = FindContactIndex( aContactId, orderedIndex );
     return ( contactIndex >= 0 ? iContactArray[ contactIndex ] : NULL );
@@ -568,6 +581,7 @@
 //
 MVIMPSTStorageContact* CVIMPSTStorageContactList::FindContactByContactLink( const MVPbkContactLink& aContactLink )
     {
+	TRACER_AUTO;
     TInt orderedIndex(0);
     TInt contactIndex = -1;
     TRAP_IGNORE( contactIndex = FindContactByLinkL( aContactLink, orderedIndex );)
@@ -581,6 +595,7 @@
 TInt CVIMPSTStorageContactList::FindContactByLinkL( const MVPbkContactLink& aContactLink,
                                           TInt& aIndexOrderedArray ) const
     {
+	TRACER_AUTO;
     TInt count( iOrderedContacts.Count() );
     TInt contactIndex = KErrNotFound;
      //Does a Linear Search
--- a/uiservicetab/vimpststorage/src/cvimpststoragecontactsorter.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpststorage/src/cvimpststoragecontactsorter.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -21,7 +21,7 @@
 #include    "mvimpststoragecontact.h"
 #include    "tvimpstenums.h"
 #include    "cvimpststoragedefs.h"
-#include 	"vimpstdebugtrace.h"
+#include "uiservicetabtracer.h"
 
 // The order of contacts if sorted by status
 const TInt KConstOnline  = 1;
@@ -43,6 +43,7 @@
 TInt CompareAlphabetically( const MVIMPSTStorageContact& aFirst, 
                            const MVIMPSTStorageContact& aSecond )
     {
+	TRACER_AUTO;
     return aFirst.Name().CompareC( aSecond.Name(),
                                              KCollationLevel, NULL );
     }
@@ -51,6 +52,7 @@
 // Group the contact by it's status. 
 TInt OrderContact( const MVIMPSTStorageContact& aContact )
     {
+	TRACER_AUTO;
      // Contact is not blocked, group by presence status
       switch( aContact.OnlineStatus() )
             {
@@ -98,6 +100,7 @@
 TInt CompareByPresence( const MVIMPSTStorageContact& aFirst, 
                         const MVIMPSTStorageContact& aSecond )
     {
+	TRACER_AUTO;
     TInt firstGroup( OrderContact( aFirst ) );
     TInt secondGroup( OrderContact( aSecond ) );
 
@@ -116,6 +119,7 @@
 // Two-phased constructor.
 CVIMPSTStorageContactSorter* CVIMPSTStorageContactSorter::NewL() 
     {
+	TRACER_AUTO;
     CVIMPSTStorageContactSorter* self = new( ELeave ) CVIMPSTStorageContactSorter();
     return self;
     }
@@ -123,7 +127,7 @@
 // Destructor
 CVIMPSTStorageContactSorter::~CVIMPSTStorageContactSorter()
     {
-    TRACE( T_LIT("CVIMPSTStorageContactSorter::~CVIMPSTStorageContactSorter") );
+	TRACER_AUTO;
     }
 
 // ---------------------------------------------------------
@@ -133,9 +137,8 @@
 //
 void CVIMPSTStorageContactSorter::Sort( RPointerArray< MVIMPSTStorageContact >& aList )
     {
-    TRACE( T_LIT("CVIMPSTStorageContactSorter::Sort() begin") );
+	TRACER_AUTO;
     aList.Sort( iAlgorithm );
-    TRACE( T_LIT("CVIMPSTStorageContactSorter::Sort() end") );
     }
 
 // ---------------------------------------------------------
@@ -148,6 +151,7 @@
 TInt CVIMPSTStorageContactSorter::Compare( const MVIMPSTStorageContact& aFirst, 
                                     const MVIMPSTStorageContact& aSecond ) const
     {
+	TRACER_AUTO;
     return iAlgorithm.operator TGeneralLinearOrder()( &aFirst, &aSecond );
     }
 
@@ -169,6 +173,7 @@
 void CVIMPSTStorageContactSorter::SetSortAlgorithm( 
                             MVIMPSTStorageContact::TSortAlgorithm aAlgorithm )
     {    
+	TRACER_AUTO;
     switch( aAlgorithm )
             {
         case MVIMPSTStorageContact::ECompareByPresence: 
--- a/uiservicetab/vimpststorage/src/cvimpststoragemanager.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpststorage/src/cvimpststoragemanager.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -24,7 +24,7 @@
 
 #include "cvimpststoragemanager.h"
 #include "tvimpststoragepanics.h"
-#include "vimpstdebugtrace.h"
+#include "uiservicetabtracer.h"
 
 
 // ============================ MEMBER FUNCTIONS ===============================
@@ -36,7 +36,7 @@
 //
 void CVIMPSTStorageManager::InitialiseLibraryL()
     {
-    TRACE( T_LIT("CVIMPSTStorageManager::InitialiseLibraryL() begin") );
+	TRACER_AUTO;
     //see whether there is an instance in the TLS
     //if not create the instance and set the same in TLS
     CVIMPSTStorageManager *sm = static_cast<CVIMPSTStorageManager*>( Dll::Tls() );
@@ -49,7 +49,6 @@
         User::LeaveIfError( Dll::SetTls( static_cast<TAny*>( sm ) ) );
         CleanupStack::Pop( manager );
         }
-    TRACE( T_LIT("CVIMPSTStorageManager::InitialiseLibraryL() end") );
     }
 
 // -----------------------------------------------------------------------------
@@ -59,7 +58,7 @@
 //
 TInt CVIMPSTStorageManager::Release()
     {
-    TRACE( T_LIT("CVIMPSTStorageManager::Release() begin") );
+	TRACER_AUTO;
     //if any instance in TLS get the same and delete it    
     CVIMPSTStorageManager *storage = static_cast<CVIMPSTStorageManager*>( Dll::Tls() );
     if ( storage )
@@ -67,7 +66,6 @@
         delete storage;
         Dll::SetTls( NULL );
         }
-    TRACE( T_LIT("CVIMPSTStorageManager::Release() end") );
     return KErrNone;
     }
 
@@ -79,13 +77,12 @@
 //
 CVIMPSTStorageManager& CVIMPSTStorageManager::Instance()
     {
+	TRACER_AUTO;
     //get the instance frm TLS and return the same
-    TRACE( T_LIT("CVIMPSTStorageManager::Instance() begin") );
     CVIMPSTStorageManager *storage = static_cast<CVIMPSTStorageManager*>( Dll::Tls() );
     
     __ASSERT_ALWAYS( storage,
         User::Panic( KPanicCategory, KLIBNOTINITIALIZED ) );
-	TRACE( T_LIT("CVIMPSTStorageManager::Instance() end") );
     return *storage;
     }    
     
@@ -97,13 +94,12 @@
 //
  CVIMPSTStorageManager* CVIMPSTStorageManager::NewL()
     {
-    TRACE( T_LIT("CVIMPSTStorageManager::NewL() begin") );
+		TRACER_AUTO;
     //creates the instance
     CVIMPSTStorageManager* self = new( ELeave ) CVIMPSTStorageManager;
     CleanupStack::PushL( self );
     self->ConstructL();
     CleanupStack::Pop( self );
-    TRACE( T_LIT("CVIMPSTStorageManager::NewL() end") );
     return self;
     }
     
@@ -114,8 +110,7 @@
 //
 void CVIMPSTStorageManager::ConstructL()
 	{
-    TRACE( T_LIT("CVIMPSTStorageManager::ConstructL() begin") );
-    TRACE( T_LIT("CVIMPSTStorageManager::ConstructL() end") );
+	TRACER_AUTO;
     }
     
     
@@ -125,10 +120,9 @@
 // 
  CVIMPSTStorageManager::~CVIMPSTStorageManager()
     {
-    TRACE( T_LIT("CVIMPSTStorageManager::~CVIMPSTStorageManager() begin") );
+		TRACER_AUTO;
     //release  all the existing views
 	iServiceViewList.ResetAndDestroy();	
-    TRACE( T_LIT("CVIMPSTStorageManager::~CVIMPSTStorageManager() end") );
     }
     
 // -----------------------------------------------------------------------------
@@ -139,7 +133,7 @@
 											const TDesC& aStoreName,
 											const TDesC& aServiceName )
 	{
-	TRACE( T_LIT("CVIMPSTStorageManager::CreateServiceViewL() begin") );
+	TRACER_AUTO;
 	//creates a new view based on the service id.
 	TInt index = KErrNotFound;
 	CVIMPSTStorageServiceView* serviceView = NULL;
@@ -148,26 +142,25 @@
 	index = FindServiceView(aServiceId);
 	if( KErrNotFound == index )
 		{
-		TRACE( T_LIT("CVIMPSTStorageManager::CreateServiceViewL() service does not exit") );
+	TRACE( "service does not exit" );
 		// service view is not found 
 		// check if store name is valid create a service view for aServiceId
 		if( aStoreName.Length() )
 			{
-			TRACE( T_LIT("CVIMPSTStorageManager::CreateServiceViewL() store name is valid") );
+		TRACE(" store name is valid" );
 			serviceView = CVIMPSTStorageServiceView::NewL(aServiceId,
 	    										aStoreName, aServiceName);	
 			iServiceViewList.Append(serviceView); 
-			TRACE( T_LIT("CVIMPSTStorageManager::CreateServiceViewL() new view created for serviceId = %d"),aServiceId );
+			TRACE( "new view created for serviceId = %d",aServiceId );
 			}
 		// if store name is not valid ,return NULL
 		}
     else
 	    {
-	    TRACE( T_LIT("CVIMPSTStorageManager::CreateServiceViewL() service already exist = %d"),aServiceId );
+    TRACE( " service already exist = %d",aServiceId );
 	    serviceView = iServiceViewList[ FindServiceView(aServiceId)];
 	    }
     //return the extisting view from the viewlist
-    TRACE( T_LIT("CVIMPSTStorageManager::CreateServiceViewL() end") );
 	return serviceView;
 	}
 // -----------------------------------------------------------------------------
@@ -176,7 +169,7 @@
 //
 TInt CVIMPSTStorageManager::FindServiceView( TUint32 aServiceId)
 	{
-	TRACE( T_LIT("CVIMPSTStorageManager::FindServiceView() begin") );
+	TRACER_AUTO;
 	//search whether the view exists in the view list.
 	TInt index = KErrNotFound;
     TInt count = iServiceViewList.Count();
@@ -184,12 +177,11 @@
 	    {
     	if( aServiceId == iServiceViewList[ i ]->GetServiceId() )
 			{
-			TRACE( T_LIT("CVIMPSTStorageManager::FindServiceView() aServiceId found = %d") ,aServiceId ); 
+			TRACE( "aServiceId found = %d" ,aServiceId ); 
 			index = i;
 			break;
 			}
 		}
-	TRACE( T_LIT("CVIMPSTStorageManager::FindServiceView() end") );	
 	return index;
 	}
 	
@@ -200,19 +192,18 @@
 //
 void  CVIMPSTStorageManager::RemoveServiceView( TUint32 aServiceId)
 	{
-	TRACE( T_LIT("CVIMPSTStorageManager::RemoveServiceView() begin") );
+	TRACER_AUTO;
 	//searches and removes the view from the view list.
     TInt index = FindServiceView(aServiceId);
 	if( index >= 0 )
 		{
-		TRACE( T_LIT("CVIMPSTStorageManager::RemoveServiceView() aServiceId found = %d") ,aServiceId ); 
+		TRACE( "aServiceId found = %d" ,aServiceId ); 
 		//view exists, so delete and remove the same
 		CVIMPSTStorageServiceView* serviceView = iServiceViewList[ index ];
 		iServiceViewList.Remove( index ); 
 		delete serviceView;
 		iServiceViewList.Compress();     
 		}
-	TRACE( T_LIT("CVIMPSTStorageManager::RemoveServiceView() end") );   
 	}
 
 //  End of File
--- a/uiservicetab/vimpststorage/src/cvimpststoragemanagerfactory.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpststorage/src/cvimpststoragemanagerfactory.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -23,7 +23,7 @@
 #include "cvimpststorageserviceview.h"
 
 //debug prints
-#include "vimpstdebugtrace.h"
+#include "uiservicetabtracer.h"
 
 // ============================ MEMBER FUNCTIONS ===============================
 
@@ -35,9 +35,8 @@
 //
 EXPORT_C void CVIMPSTStorageManagerFactory::InitialiseLibraryL()
     {
-    TRACE( T_LIT("CVIMPSTStorageManagerFactory::InitialiseLibraryL() begin") );
+	TRACER_AUTO;
     CVIMPSTStorageManager::InitialiseLibraryL();
-    TRACE( T_LIT("CVIMPSTStorageManagerFactory::InitialiseLibraryL() end") );
     }
 
 // -----------------------------------------------------------------------------
@@ -47,7 +46,7 @@
 //
 EXPORT_C TInt CVIMPSTStorageManagerFactory::Release()
     {
-    TRACE( T_LIT("CVIMPSTStorageManagerFactory::Release()") );
+	TRACER_AUTO;
     return CVIMPSTStorageManager::Release();  
     }
 
@@ -61,7 +60,7 @@
 												const TDesC& aStoreName,
 												const TDesC& aServiceName)
     {
-    TRACE( T_LIT("CVIMPSTStorageManagerFactory::InitialiseViewL() begin") );
+	TRACER_AUTO;
     //get the stroage manager instance
     CVIMPSTStorageManager& storagemanager = CVIMPSTStorageManager::Instance( );
     
@@ -69,7 +68,6 @@
     CVIMPSTStorageServiceView* contactlistInterface = 
     				storagemanager.CreateServiceViewL( aServiceId, aStoreName, aServiceName );
     
-    TRACE( T_LIT("CVIMPSTStorageManagerFactory::InitialiseViewL() end") );
     }    
     
 
@@ -79,7 +77,7 @@
 //
 EXPORT_C MVIMPSTStorageServiceView* CVIMPSTStorageManagerFactory::ContactListInterfaceL(TUint32 aServiceId)
     {
-    TRACE( T_LIT("CVIMPSTStorageManagerFactory::ContactListInterfaceL() begin") );
+	TRACER_AUTO;
     //get the stroage manager instance
     CVIMPSTStorageManager& storagemanager = CVIMPSTStorageManager::Instance( );
     
@@ -88,7 +86,6 @@
     				storagemanager.CreateServiceViewL( aServiceId, KNullDesC, KNullDesC );
     
     //cast to the base class and return the MVIMPSTStorageServiceView base ptr
-    TRACE( T_LIT("CVIMPSTStorageManagerFactory::ContactListInterfaceL() begin") );
     return dynamic_cast<MVIMPSTStorageServiceView*>(contactlistInterface);    
     
     }    
@@ -99,7 +96,7 @@
 //
 EXPORT_C MVIMPSTStorageItemModel* CVIMPSTStorageManagerFactory::ItemModelInterfaceL( TUint32 aServiceId )
 	{	
-	TRACE( T_LIT("CVIMPSTStorageManagerFactory::ItemModelInterfaceL() begin") );
+	TRACER_AUTO;
     //get the stroage manager instance
     CVIMPSTStorageManager& storagemanager = CVIMPSTStorageManager::Instance( );    
     
@@ -108,7 +105,6 @@
     				storagemanager.CreateServiceViewL( aServiceId, KNullDesC, KNullDesC );
     
     //cast to the base class and return the MVIMPSTStorageItemModel base ptr
-    TRACE( T_LIT("CVIMPSTStorageManagerFactory::ItemModelInterfaceL() end") );
     return dynamic_cast<MVIMPSTStorageItemModel*>(itemModel);
    
     }      
--- a/uiservicetab/vimpststorage/src/cvimpststorageserviceview.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpststorage/src/cvimpststorageserviceview.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -32,7 +32,7 @@
 #include <MVPbkStoreContact.h>
 #include <VPbkContactStoreUris.h>
 #include <TVPbkContactStoreUriPtr.h>
-#include "vimpstdebugtrace.h"
+#include "uiservicetabtracer.h"
 #include "tvimpstconsts.h"
 #include "mvimpststoragecontact.h"
 
@@ -57,7 +57,7 @@
     iOwnContact( NULL ),
     iUnNamedText( NULL )
     {
-    TRACE( T_LIT("CVIMPSTStorageServiceView::CVIMPSTStorageServiceView()") );
+	TRACER_AUTO;
     }
 
 // -----------------------------------------------------------------------------
@@ -69,7 +69,7 @@
 //
 void CVIMPSTStorageServiceView::ConstructL(const TDesC& aStoreName, const TDesC& aServiceName)
     {
-    TRACE( T_LIT("CVIMPSTStorageServiceView::ConstructL() begin") );
+	TRACER_AUTO;
     
     iActiveHandler =  CVIMPSTStorageActiveHandler::NewL(this);
 					 
@@ -79,25 +79,24 @@
     //set the sorting algorithem to order by presence.
     iContactSorter->SetSortAlgorithm( MVIMPSTStorageContact::ECompareByPresence);
     
-    TRACE( T_LIT("SubServiceType() Type : %S"), &aStoreName );
+    TRACE( "SubServiceType() Type : %S", &aStoreName );
     //find whether its a local store or xsp store
 	if ( VPbkContactStoreUris::DefaultCntDbUri().CompareC( aStoreName, 1, NULL )
 	                        != 0 )
 		{
-		TRACE( T_LIT("CVIMPSTStorageServiceView::ConstructL() service store created") ); 
+	TRACE( " service store created" );
 		//Create XSP Store 
     	iVPbkContactStore = 
     			CVIMPSTStorageVPbkServerStore::NewL(aStoreName,aServiceName ,*this );
 		}
 	else
 		{
-		TRACE( T_LIT("CVIMPSTStorageServiceView::ConstructL() local store created ") ); 
+	TRACE( "local store created " ); 
 		//Create Local Contacts.cdb store 
 		iVPbkContactStore = CVIMPSTStorageVPbkLocalStore::NewL(VPbkContactStoreUris::DefaultCntDbUri(), 
 															   aServiceName,
 															   *this );	
 		}
-    TRACE( T_LIT("CVIMPSTStorageServiceView::ConstructL() end") );;
     }
 
 
@@ -110,13 +109,12 @@
 										const TDesC& aStoreName,
 										const TDesC& aServiceName)
     {
-    TRACE( T_LIT("CVIMPSTStorageServiceView::NewL() begin") );
+	TRACER_AUTO;
     
     CVIMPSTStorageServiceView* self = new( ELeave ) CVIMPSTStorageServiceView(aServiceId);
     CleanupStack::PushL( self );
     self->ConstructL(aStoreName, aServiceName);
     CleanupStack::Pop( self );
-    TRACE( T_LIT("CVIMPSTStorageServiceView::NewL() end") );
     return self;
     }
 // -----------------------------------------------------------------------------
@@ -126,7 +124,7 @@
 // Destructor
 CVIMPSTStorageServiceView::~CVIMPSTStorageServiceView()
     {
-    TRACE( T_LIT("CVIMPSTStorageServiceView::~CVIMPSTStorageServiceView() begin") );
+	TRACER_AUTO;
     if( iActiveHandler )
 	    {
 	    iActiveHandler->Cancel();
@@ -147,7 +145,6 @@
         iUnNamedText = NULL;
         }        
         
-    TRACE( T_LIT("CVIMPSTStorageServiceView::~CVIMPSTStorageServiceView() end") );
     }
 // -----------------------------------------------------------------------------
 // CVIMPSTStorageServiceView::AddObserverL
@@ -157,15 +154,14 @@
 void CVIMPSTStorageServiceView::AddObserverL( MVIMPSTStorageContactsObserver*
         aObserver )
     {
-    TRACE( T_LIT("CVIMPSTStorageServiceView::AddObserverL() begin") );
+	TRACER_AUTO;
     User::LeaveIfError( aObserver ? KErrNone : KErrArgument );
     TInt index = iContactObservers.Find( aObserver );
     if( index == KErrNotFound )
 	    {
-	    TRACE( T_LIT("CVIMPSTStorageServiceView::AddObserverL() aObserver added ") );
+		TRACE( "aObserver added ");
 	    User::LeaveIfError( iContactObservers.Append( aObserver ) );	
 	    }
-	TRACE( T_LIT("CVIMPSTStorageServiceView::AddObserverL() end") );
     }
 
 // -----------------------------------------------------------------------------
@@ -175,16 +171,15 @@
 void CVIMPSTStorageServiceView::RemoveObserver( MVIMPSTStorageContactsObserver*
         aObserver )
 	{
-	TRACE( T_LIT("CVIMPSTStorageServiceView::RemoveObserver() begin") );
+	TRACER_AUTO;
 	__ASSERT_ALWAYS( aObserver, Panic( EObserverIsNull ));
 	const TInt index( iContactObservers.Find( aObserver ) );
 	if ( index >=0)
 		{
-		TRACE( T_LIT("CVIMPSTStorageServiceView::RemoveObserver() aObserver found") );
+		TRACE( "aObserver found" );
 		iContactObservers.Remove( index );
 		iContactObservers.Compress();
 		}
-	TRACE( T_LIT("CVIMPSTStorageServiceView::RemoveObserver() begin") );
 	}
 
 // -----------------------------------------------------------------------------
@@ -204,7 +199,7 @@
 										   const TDesC& aContactListId, 
                                            const TDesC& aDisplayName )
     {
-    TRACE( T_LIT("CVIMPSTStorageServiceView::CreateContactListL() begin") );
+	TRACER_AUTO;
     CVIMPSTStorageContactList* contactList = 
     						CVIMPSTStorageContactList::NewLC(*iContactSorter,
                                                          	  aContactListId, 
@@ -215,20 +210,19 @@
     TInt indexOfList( iContactListArray.Find( contactList, findBy ) );
     if( indexOfList == KErrNotFound )
         {
-        TRACE( T_LIT("CVIMPSTStorageServiceView::CreateContactListL() list not exist in list") );
+		TRACE( "list not exist in list");
         TLinearOrder< CVIMPSTStorageContactList > order( 
                              CVIMPSTStorageServiceView::ContactListOrderByDisplayName );
         iContactListArray.InsertInOrderAllowRepeats( contactList, order );
         CleanupStack::Pop( contactList ); 
-        TRACE( T_LIT("CVIMPSTStorageServiceView::CreateContactListL() new list created") );       
+        TRACE( " new list created");
         }
     else
         {
-        TRACE( T_LIT("CVIMPSTStorageServiceView::CreateContactListL() list  already exist in list") );
+		TRACE( " list  already exist in list" );
         CleanupStack::PopAndDestroy( contactList );
         contactList = iContactListArray[ indexOfList ];
         }
-    TRACE( T_LIT("CVIMPSTStorageServiceView::CreateContactListL() end") );
     return contactList; 
     }
 
@@ -238,16 +232,15 @@
 //
 void CVIMPSTStorageServiceView::RemoveContactList( const TDesC& aContactListId )
     {
-    TRACE( T_LIT("CVIMPSTStorageServiceView::RemoveContactList() begin") );
+	TRACER_AUTO;
     TInt pos( FindContactListById( aContactListId ) );
     if( pos >= 0 )
         {
-        TRACE( T_LIT("CVIMPSTStorageServiceView::RemoveContactList() aContactListId found") );
+		TRACE( "aContactListId found" );
         delete iContactListArray[ pos ];
         iContactListArray.Remove( pos );  
         iContactListArray.Compress();      
         }
-    TRACE( T_LIT("CVIMPSTStorageServiceView::RemoveContactList() end") );
     }
 
 // -----------------------------------------------------------------------------
@@ -257,7 +250,7 @@
 //
 TInt CVIMPSTStorageServiceView::ListCount() const
     {
-    TRACE( T_LIT("CVIMPSTStorageServiceView::ListCount()") );
+	TRACER_AUTO;
     return iContactListArray.Count();
     }
 
@@ -267,11 +260,10 @@
 // -----------------------------------------------------------------------------
 //
 MVIMPSTStorageContactList& CVIMPSTStorageServiceView::ListAt( TInt aIndex ) const
-    {   
-    TRACE( T_LIT("CVIMPSTStorageServiceView::ListAt() begin") );
+    {  
+	TRACER_AUTO;
     // User::LeaveIfError( aIndex < iContactListArray.Count() ? KErrNone : KErrArgument ); 
     __ASSERT_ALWAYS( (aIndex < iContactListArray.Count() && aIndex >=0 ), Panic( EContactsArrayOutOfSync ));  
-    TRACE( T_LIT("CVIMPSTStorageServiceView::ListAt() end") );
     return *iContactListArray[ aIndex ];
     }
 // -----------------------------------------------------------------------------
@@ -281,7 +273,7 @@
 //
 TInt CVIMPSTStorageServiceView::ContactCount( TBool aSkipOfflineContacts ) const
     {
-    TRACE( T_LIT("CVIMPSTStorageServiceView::ListAt() begin") );
+	TRACER_AUTO;
     TInt contactCount( 0 );
     TInt count( iContactListArray.Count() );
     for( TInt a( 0 ); a < count; ++a )
@@ -289,8 +281,7 @@
         contactCount += iContactListArray[ a ]->ContactCount( aSkipOfflineContacts, 
                                                          EFalse );
         }
-    TRACE( T_LIT("CVIMPSTStorageServiceView::ListAt() contactCount = %d") ,contactCount );
-    TRACE( T_LIT("CVIMPSTStorageServiceView::ListAt() end") );
+		TRACE(" contactCount = %d" ,contactCount );
     return contactCount;
     }
     
@@ -305,16 +296,16 @@
 					                             const TDesC8& aAvatarData,
 					                             TBool aIsClearingAvatar /*= EFalse*/)
 	{
-	TRACE( T_LIT("CVIMPSTStorageServiceView::UpdatePresenceL() begin") );
+	TRACER_AUTO;
 	MVIMPSTStorageContact* contact = NULL;
 	if( iOwnContact && ( aContactId.Compare( iOwnContact->UserId() ) == 0  ) )
 	    {
-	    TRACE( T_LIT("CVIMPSTStorageServiceView::UpdatePresenceL() own Item presence") );
+		TRACE("own Item presence");
 	    if( aAvatarData.Compare(iOwnContact->AvatarContent() ) != 0 )
 	        {
 	        if((aIsClearingAvatar)||(aAvatarData.Length() > 0))
 	            {
-	            TRACE( T_LIT("CVIMPSTStorageServiceView::UpdatePresenceL() own avatar change NotifyAllObserversL") );
+				TRACE( "own avatar change NotifyAllObserversL");
 	            iOwnContact->SetAvatarContentL( aAvatarData ,*iVPbkContactStore );  
 	            NotifyAllObserversL(TVIMPSTEnums::EStorageAvatarChange,NULL,iOwnContact,0);
 	            }
@@ -325,26 +316,27 @@
 		    // update to own presence
 		    iOwnContact->SetOnlineStatus( aStatus );
 		    iOwnContact->SetStatusTextL(aStatusText);
-		    TRACE( T_LIT("CVIMPSTStorageServiceView::UpdatePresenceL() own presene NotifyAllObserversL") );
+		    TRACE( " own presene NotifyAllObserversL");
 		    NotifyAllObserversL(TVIMPSTEnums::EStorageOwnPresenceChange,NULL, iOwnContact,0);
 		    }
 	    contact = iOwnContact;
 		}
 	else
 		{
-		TRACE( T_LIT("CVIMPSTStorageServiceView::UpdatePresenceL() contact item ") );
+		TRACE( "contact item ");
 		contact = FindContactByUserId( aContactId );
 		if(contact)
 			{
-			TRACE( T_LIT("CVIMPSTStorageServiceView::UpdatePresenceL() contact exist ") );
+			TRACE( "contact exist " );
 			TInt index = KErrNotFound;
 			TVIMPSTEnums::TOnlineStatus oldOnlineStatus = contact->OnlineStatus();
-			TRACE( T_LIT("CVIMPSTStorageServiceView::UpdatePresenceL() contact oldOnlineStatus = %d"), oldOnlineStatus );
-			TRACE( T_LIT("CVIMPSTStorageServiceView::UpdatePresenceL() contact new presence = %d"), aStatus );
+			TRACE( "contact oldOnlineStatus = %d", oldOnlineStatus );
+			TRACE( "contact new presence = %d", aStatus );
 			//status text can be different for the sam status hence not inside the if condition.
 			if(  oldOnlineStatus != aStatus )
 			    {
-			    TRACE( T_LIT("CVIMPSTStorageServiceView::UpdatePresenceL() contact presence change ") );
+				TRACE( "contact presence change ");
+
 			    contact->SetOnlineStatus( aStatus );
 			    TInt count = iContactListArray.Count();
 			    for(TInt i = 0; i < count; i++)
@@ -353,7 +345,7 @@
 			        if(KErrNotFound != index )
 			            {
 			            iContactListArray[i]->ResortContact(contact);
-			            TRACE( T_LIT("CVIMPSTStorageServiceView::UpdatePresenceL() contact ResortContact ") );
+			            TRACE( "contact ResortContact " );
 			            // get the index of the sorted contact, as after sorting the 
 			            // index would have changed based on presence.
 			            // break after the contact list is found and the contact is found
@@ -383,12 +375,11 @@
 			    contact->SetAvatarContentL( aAvatarData ,*iVPbkContactStore);  
 			    NotifyAllObserversL(TVIMPSTEnums::EStorageAvatarChange,NULL, contact, oldIndex );
 			    }
-			TRACE( T_LIT("CVIMPSTStorageServiceView::UpdatePresenceL() aStatusText = %S "), &aStatusText );
-			TRACE( T_LIT("CVIMPSTStorageServiceView::UpdatePresenceL() NotifyAllObserversL called") );
-			TRACE( T_LIT("CVIMPSTStorageServiceView::UpdatePresenceL() NotifyAllObserversL finish") );	
+			TRACE("aStatusText = %S ", &aStatusText );
+			TRACE( "NotifyAllObserversL called" );
+			TRACE( "NotifyAllObserversL finish" );	
 			}
-	 	}
-	TRACE( T_LIT("CVIMPSTStorageServiceView::UpdatePresenceL() end") );
+	 	}	
     return contact;
     }
  
@@ -399,29 +390,28 @@
  MVIMPSTStorageContact* CVIMPSTStorageServiceView::UpdateAvatarL(const TDesC& aContactId,
 							                  const TDesC8& aAvatarData ) 
  {
- TRACE( T_LIT("CVIMPSTStorageServiceView::UpdateAvatarL() begin") );
+ TRACER_AUTO;
  MVIMPSTStorageContact* contact = NULL;
  if( iOwnContact && ( aContactId.Compare( iOwnContact->UserId() ) == 0  ) )
 		{
-		TRACE( T_LIT("CVIMPSTStorageServiceView::UpdateAvatarL() own avatar") );
+		TRACE( "own avatar" );
 		iOwnContact->SetAvatarContentL( aAvatarData ,*iVPbkContactStore);	
 		NotifyAllObserversL(TVIMPSTEnums::EStorageOwnPresenceChange,NULL, iOwnContact,0);
 	    contact = iOwnContact;
 		}
 	else
 		{
-		TRACE( T_LIT("CVIMPSTStorageServiceView::UpdateAvatarL() buddy avatar") );
+		TRACE( "buddy avatar" );
 	    contact = FindContactByUserId( aContactId );
 		if(contact)
 			{
-			TRACE( T_LIT("CVIMPSTStorageServiceView::UpdateAvatarL() contact exit") );
+			TRACE( "contact exit");
 			contact->SetAvatarContentL( aAvatarData ,*iVPbkContactStore);	
 			TInt index = IndexOfContact(contact);
 		    NotifyAllObserversL(TVIMPSTEnums::EStorageAvatarChange,NULL, contact,index);
-		    TRACE( T_LIT("CVIMPSTStorageServiceView::UpdateAvatarL() NotifyAllObserversL called") );		
+		    TRACE( " NotifyAllObserversL called" );		
 			}
 	   	}
-   TRACE( T_LIT("CVIMPSTStorageServiceView::UpdateAvatarL() end") );
    return contact;
    }
            
@@ -432,9 +422,8 @@
 CVIMPSTStorageContactList* CVIMPSTStorageServiceView::FindContactListInternal( 
                                                 const TDesC& aListId )
     {
-    TRACE( T_LIT("CVIMPSTStorageServiceView::FindContactListInternal begin") );    
+	TRACER_AUTO;
 	TInt contactListIndex( FindContactListById( aListId ) );
-	TRACE( T_LIT("CVIMPSTStorageServiceView::FindContactListInternal end ") );
     return ( contactListIndex >= 0 ? iContactListArray[ contactListIndex ] : NULL );
     }
 
@@ -444,7 +433,7 @@
 //
 MVIMPSTStorageContactList* CVIMPSTStorageServiceView::FindContactList( const TDesC& aListId )
     {
-    TRACE( T_LIT("CVIMPSTStorageServiceView::FindContactList") ); 
+	TRACER_AUTO;     
     return FindContactListInternal( aListId );
     }
 
@@ -454,22 +443,21 @@
 //
 TInt CVIMPSTStorageServiceView::FindContactListById(const TDesC& aListId )
 	{
-	TRACE( T_LIT("CVIMPSTStorageServiceView::FindContactList begin") );
+	TRACER_AUTO;
 	TInt index = KErrNotFound;
 	TInt count( iContactListArray.Count() );
-	TRACE( T_LIT("CVIMPSTStorageServiceView::FindContactList count = %d"), count );
+	TRACE( " count = %d", count );
 	for( TInt i= 0  ; i < count ; i++ )
 		{
 		if( KErrNone == VIMPSTStorageUtils::NeutralCompare( 
 							 aListId, 
                              iContactListArray[ i ]->ListId(), EFalse )   )
 			{
-			TRACE( T_LIT("CVIMPSTStorageServiceView::FindContactList contact list found") );
+			TRACE( " contact list found" );
 			index = i;
 			break;
 			}
 		}
-	TRACE( T_LIT("CVIMPSTStorageServiceView::FindContactList end") );
 	return index;
 	}
 	
@@ -479,7 +467,7 @@
 //
 MVIMPSTStorageContact* CVIMPSTStorageServiceView::FindContactByLink(const MVPbkContactLink& aContactLink )
 	{
-	TRACE( T_LIT("CVIMPSTStorageServiceView::FindContactByLink begin") );
+	TRACER_AUTO;
 	MVIMPSTStorageContact* contact = NULL;
 	TInt count( iContactListArray.Count() );
     for( TInt i= 0  ; i < count ; i++ )
@@ -488,11 +476,10 @@
         contact = contactList->FindContactByContactLink( aContactLink );
         if( contact )
             { 
-            TRACE( T_LIT("CVIMPSTStorageServiceView::FindContactByLink contact found = %d "), i );           
+            TRACE( " contact found = %d ", i );           
             break;
             }
         }
-    TRACE( T_LIT("CVIMPSTStorageServiceView::FindContactByLink end") );
     return contact;
   	}
 
@@ -502,7 +489,7 @@
 //
 TUint32 CVIMPSTStorageServiceView::GetServiceId()
     {
-    TRACE( T_LIT("CVIMPSTStorageServiceView::GetServiceId") );
+	TRACER_AUTO;
     return iServiceId;
     }
     
@@ -512,7 +499,7 @@
 //
 TBool CVIMPSTStorageServiceView::IsLocalStore() const
 	{
-	TRACE( T_LIT("CVIMPSTStorageServiceView::IsLocalStore") );
+	TRACER_AUTO;
 	return iVPbkContactStore->LocalStore();	
 	}  
 // -----------------------------------------------------------------------------
@@ -521,13 +508,12 @@
 //
 MVIMPSTStorageContact& CVIMPSTStorageServiceView::OwnContactL()
 	{
-	TRACE( T_LIT("CVIMPSTStorageServiceView::OwnContact begin") );
+	TRACER_AUTO;
 	if( !iOwnContact )
 		{
 		iOwnContact = CVIMPSTStorageContact::NewL(KNullDesC,
 		        								  KNullDesC )	;	
 		}
-	TRACE( T_LIT("CVIMPSTStorageServiceView::OwnContact end") );
 	return *iOwnContact;	
 	} 
 
@@ -537,18 +523,18 @@
 //
 void CVIMPSTStorageServiceView::SetOwnUserIdL(const TDesC& aUserId ) 
 	{
-	TRACE( T_LIT("CVIMPSTStorageServiceView::SetOwnUserIdL begin") );
+	TRACER_AUTO;
 	if( !iOwnContact )
 		{
 		iOwnContact = CVIMPSTStorageContact::NewL(aUserId,
 		        								  KNullDesC
 		        								  )	;
-		TRACE( T_LIT("CVIMPSTStorageServiceView::SetOwnUserIdL iOwnContact created") );
+		TRACE( "iOwnContact created" );
 		}
 	else if( aUserId.Compare( iOwnContact->UserId() ) != 0 )
 		{
 	    _LIT (KNullWithSpace, " ");
-		TRACE( T_LIT("CVIMPSTStorageServiceView::SetOwnUserIdL iOwnContact was existing") );
+		TRACE( "SetOwnUserIdL iOwnContact was existing" );
 	    if(KNullWithSpace ().Compare(iOwnContact->UserId())!=0)
 	        { 
 	        iVPbkContactStore->RemoveAllVPbkContactsL(); // if user id is changed remove all contacts 	
@@ -558,9 +544,8 @@
 		iOwnContact->SetAvatarContentL(KNullDesC8,*iVPbkContactStore );
 
 		NotifyAllObserversL( TVIMPSTEnums::EStorageEventOwnUserChanged,NULL,iOwnContact,0 );
-		TRACE( T_LIT("CVIMPSTStorageServiceView::SetOwnUserIdL NotifyAllObserversL delivered") );
+		TRACE( "NotifyAllObserversL delivered" );
 		}
-	TRACE( T_LIT("CVIMPSTStorageServiceView::SetOwnUserIdL end") );
 	}    
 // -----------------------------------------------------------------------------
 // CVIMPSTStorageServiceView::FindContactByUserId
@@ -569,7 +554,7 @@
 // -----------------------------------------------------------------------------
 MVIMPSTStorageContact* CVIMPSTStorageServiceView::FindContactByUserId( const TDesC& aUserId )
 	{
-	TRACE( T_LIT("CVIMPSTStorageServiceView::FindContactByUserId begin") );
+	TRACER_AUTO;
 	MVIMPSTStorageContact* contact = NULL;
 	CVIMPSTStorageContactList* contactList = NULL;
 	TInt count( iContactListArray.Count() );
@@ -579,11 +564,10 @@
         contact = contactList->FindContact( aUserId );
         if( contact )
             {  
-            TRACE( T_LIT("CVIMPSTStorageServiceView::FindContactByUserId contact found ") );          
+            TRACE(" contact found " );          
             break;
             }
         }
-    TRACE( T_LIT("CVIMPSTStorageServiceView::FindContactByUserId end") );
     return contact;
   	}
 // -----------------------------------------------------------------------------
@@ -593,7 +577,7 @@
 // -----------------------------------------------------------------------------
 MVIMPSTStorageContact* CVIMPSTStorageServiceView::FindCacheContactByUserId( const TDesC& aUserId )
     {
-    TRACE( T_LIT("CVIMPSTStorageServiceView::FindCacheContactByUserId") );
+	TRACER_AUTO;
     return FindContactByUserId( aUserId );
     }
 
@@ -604,7 +588,7 @@
 // -----------------------------------------------------------------------------
 MVIMPSTStorageContact* CVIMPSTStorageServiceView::FindCacheContactByLink(const MVPbkContactLink& aContactLink )
     {
-    TRACE( T_LIT("CVIMPSTStorageServiceView::FindCacheContactByLink ") );
+	TRACER_AUTO;
     return FindContactByLink( aContactLink );
     }
 // -----------------------------------------------------------------------------
@@ -616,17 +600,16 @@
         										   	   	         	TBool aIsInvitationItem /*=EFalse*/,
         										   	   	         	TBool aInvitationAutoAccept /*= EFalse */)
     {
-    TRACE( T_LIT("CVIMPSTStorageServiceView::CreateNewContactL begin") );
+	TRACER_AUTO;
     // This will create a contact in the CDB file.  It returns MVPbkContactLink link to the CDB file.
     MVIMPSTStorageContact* contact = FindCacheContactByUserId( aUserId );
     if( !contact )
 	    {
 	    iIsInvitationItem = aIsInvitationItem;
-	    TRACE( T_LIT("CVIMPSTStorageServiceView::CreateNewContactL contact does not exist in list") );
+	    TRACE( "contact does not exist in list" );
 	    iVPbkContactStore->CreateVPbkContactL( aUserId ,aDisplayName, aInvitationAutoAccept );	
-	    TRACE( T_LIT("CVIMPSTStorageServiceView::CreateNewContactL new contact created") );
+	    TRACE( "new contact created");
 	    }
-	TRACE( T_LIT("CVIMPSTStorageServiceView::CreateNewContactL end") );
     return contact;
     }
 
@@ -637,13 +620,12 @@
  void CVIMPSTStorageServiceView::CreateNewFetchContactsL( RArray <TPtrC> &aFirstNameList, 
                                                          RArray <TPtrC> &aServiceField ) 
     {
-    TRACE( T_LIT("CVIMPSTStorageServiceView::CreateNewFetchContactsL begin") );
+	 TRACER_AUTO;
     if( !iVPbkContactStore->LocalStore() )
         {
         RemoveAllCacheContactsL();
         }
     iVPbkContactStore->AddVPbkFetchContactsL( aFirstNameList, aServiceField );
-    TRACE( T_LIT("CVIMPSTStorageServiceView::CreateNewFetchContactsL end") );
     }
  
 // -----------------------------------------------------------------------------
@@ -654,14 +636,13 @@
 
 TInt CVIMPSTStorageServiceView::RemoveContactL( MVIMPSTStorageContact* aContact ) 
 	{
-	TRACE( T_LIT("CVIMPSTStorageServiceView::RemoveContactL begin") );
+	TRACER_AUTO;
 	TInt error = KErrArgument;
 	if( aContact )
 		{
-		TRACE( T_LIT("CVIMPSTStorageServiceView::RemoveContactL contact found") );
+		TRACE( "contact found" );
 		error = iVPbkContactStore->RemoveVPbkContactL( *aContact->ContactLink() );
 		}
-	TRACE( T_LIT("CVIMPSTStorageServiceView::RemoveContactL end") );
 	return error;	
 	}
 
@@ -672,7 +653,7 @@
 //
 TInt CVIMPSTStorageServiceView::RetriveLinkXSPIdsL(const TDesC8& aContactPackLink )
     {
-    TRACE( T_LIT("CVIMPSTStorageServiceView::RetriveLinkXSPIdsL") );
+	TRACER_AUTO;
     // return the no of retrived xsp of contacts 
     return iVPbkContactStore->RetrieveVPbkXSPIdL( aContactPackLink );
     }
@@ -683,7 +664,8 @@
 //  
 const TDesC& CVIMPSTStorageServiceView::GetRetrieveXSPIdL(TInt aIndex ) 
 	{
-	TRACE( T_LIT("CVIMPSTStorageServiceView::GetRetrieveXSPIdL aIndex = %d"),aIndex  );
+	TRACER_AUTO;
+	TRACE( " aIndex = %d",aIndex  );
 	return iVPbkContactStore->GetRetrieveVPbkXSPIdL( aIndex );
     }
 
@@ -693,7 +675,8 @@
 //
 TInt CVIMPSTStorageServiceView::CreateNewContactFromRetrivedIdL( TInt aIndexToUse )
     {
-    TRACE( T_LIT("CVIMPSTStorageServiceView::CreateNewContactFromRetrivedIdL aIndexToUse = %d"),aIndexToUse  );
+	TRACER_AUTO;
+    TRACE( "aIndexToUse = %d",aIndexToUse  );
     // This will create a contact in the CDB file.  It returns MVPbkContactLink link to the CDB file.
     return iVPbkContactStore->CreateRetriveVPbkContactL( aIndexToUse );    
     }
@@ -703,7 +686,8 @@
 //
 TInt CVIMPSTStorageServiceView::DeleteNewContactFromRetrivedIdL( TInt aIndexToUse )
     {
-    TRACE( T_LIT("CVIMPSTStorageServiceView::DeleteNewContactFromRetrivedIdL aIndexToUse = %d"),aIndexToUse  );
+	TRACER_AUTO;
+    TRACE( "aIndexToUse = %d",aIndexToUse  );
     // This will create a contact in the CDB file.  It returns MVPbkContactLink link to the CDB file.
     return iVPbkContactStore->deleteRetriveVPbkContactL( aIndexToUse );    
     }
@@ -713,7 +697,7 @@
 // ----------------------------------------------------------
 void CVIMPSTStorageServiceView::DeleteDatabaseL()
     {
-    TRACE( T_LIT("CVIMPSTStorageServiceView::DeleteDatabaseL") );
+	TRACER_AUTO;
    	iVPbkContactStore->DeleteDatabaseL();
     }
  
@@ -727,7 +711,7 @@
         										   	   	         const TDesC& aDisplayName,
         										   	   	         const TDesC8& aAvatarContent)
     {
-    TRACE( T_LIT("CVIMPSTStorageServiceView::UpdateCacheContactL begin") );
+	TRACER_AUTO;
     MVIMPSTStorageContact* contact = FindContactByLink(aContactLink);
     if( contact )
 	    {
@@ -735,7 +719,7 @@
 	    TBool sortNeeded = EFalse;
 	    if( contact->UserId().Compare( aUserId) != 0 )
 	        {
-	        TRACE( T_LIT("CVIMPSTStorageServiceView::UpdateCacheContactL user id changed") );	        
+	        TRACE( "user id changed" );	        
 	        NotifyAllObserversL( TVIMPSTEnums::EStorageEventUserIdPreChange,NULL, contact,oldIndex);
 	        contact->SetUserIdL( aUserId );
 	        if(aUserId.Length()== 0)
@@ -744,12 +728,12 @@
                contact->SetOnlineStatus(TVIMPSTEnums::EUnknown);
                }
 	        NotifyAllObserversL( TVIMPSTEnums::EStorageEventUserIdPostChange,NULL, contact,oldIndex);
-	        TRACE( T_LIT("CVIMPSTStorageServiceView::UpdateCacheContactL NotifyAllObserversL delivered") );
+	        TRACE( "NotifyAllObserversL delivered" );
 	        }
 	    if(contact->Name().Compare(aDisplayName) != 0 )
 	        {
             sortNeeded = ETrue;
-	        TRACE( T_LIT("CVIMPSTStorageServiceView::UpdateCacheContactL display name changed") );
+	        TRACE( "display name changed" );
 	        if( aDisplayName.Length() <= 0 && iUnNamedText )
 				{
 				contact->SetNameL( *iUnNamedText );	
@@ -779,13 +763,12 @@
 	        }
 	   if( contact->AvatarContent().Compare( aAvatarContent ) != 0 )
 	        {
-	        TRACE( T_LIT("CVIMPSTStorageServiceView::UpdateCacheContactL user id changed") );           
+	        TRACE( "User id changed" );           
 	        contact->SetAvatarContentL( aAvatarContent,*iVPbkContactStore  );
 	        NotifyAllObserversL( TVIMPSTEnums::EStorageAvatarChange,NULL, contact, KErrNotFound);
-	        TRACE( T_LIT("CVIMPSTStorageServiceView::UpdateCacheContactL NotifyAllObserversL delivered") );
+	        TRACE( " NotifyAllObserversL delivered" );
 	        }
 	    }
-	TRACE( T_LIT("CVIMPSTStorageServiceView::UpdateCacheContactL end") );
     return contact;
     }
 // -----------------------------------------------------------------------------
@@ -797,30 +780,30 @@
         										   	   	         const TDesC8& aAvatarContent,
         										   	   	         TVIMPSTEnums::TVIMPSTStorgaeEventType aType )
 	{
-	TRACE( T_LIT("CVIMPSTStorageServiceView::AddContactToCacheL begin") );
-	TRACE( T_LIT("CVIMPSTStorageServiceView::AddContactToCacheL user id: %S"), &aUserId);
-	TRACE( T_LIT("CVIMPSTStorageServiceView::AddContactToCacheL storageeventtype: %d"), aType );
+	TRACER_AUTO;
+	TRACE(" user id: %S", &aUserId);
+	TRACE( " storageeventtype: %d", aType );
 	MVIMPSTStorageContactList* contactList = FindContactListInternal( KFriendList );
 	if( !contactList )
 		{
 		contactList = CreateContactListL(KFriendList,KNullDesC); 
 		}
-	TRACE( T_LIT("CVIMPSTStorageServiceView::AddContactToCacheL before findcontactlink") ); 
+	TRACE(" Before findcontactlink" ); 
 	MVIMPSTStorageContact* contact = FindContactByLink(aContactLink);
-	TRACE( T_LIT("CVIMPSTStorageServiceView::AddContactToCacheL after findcontactlink ") ); 
+	TRACE( " After findcontactlink " ); 
 	if( !contact )
 		{
-		TRACE( T_LIT("CVIMPSTStorageServiceView::AddContactToCacheL contact not exist ") ); 
+		TRACE( " contact not exist "); 
 		TInt error = KErrGeneral;
 		TInt index = KErrNotFound;
 		if( aDisplayName.Length() <= 0 && iUnNamedText )
 			{
-			TRACE( T_LIT("CVIMPSTStorageServiceView::AddContactToCacheL no display name ") ); 
+			TRACE(" no display name " ); 
 			contact = CVIMPSTStorageContact::NewLC( aUserId, *iUnNamedText , aContactLink ,aAvatarContent );	
 			}
 		else
 			{
-			TRACE( T_LIT("CVIMPSTStorageServiceView::AddContactToCacheL has display name ") ); 
+			TRACE( " has display name " ); 
 			contact = CVIMPSTStorageContact::NewLC( aUserId, aDisplayName , aContactLink, aAvatarContent);		
 			}
 		// if the xsp id is numm, then the presence state should be EUnknown;
@@ -836,10 +819,10 @@
 	        contact->SetOnlineStatus(TVIMPSTEnums::EPending);
 	        }
 		error = contactList->AddStorageContactToCacheL( contact, index );
-		TRACE( T_LIT("CVIMPSTStorageServiceView::AddContactToCacheL AddStorageContactToCacheL error= %d "),error ); 
+		TRACE( "AddStorageContactToCacheL error= %d ",error ); 
 		if( error == KErrNone )
 			{
-			TRACE( T_LIT("CVIMPSTStorageServiceView::AddContactToCacheL success ") );
+			TRACE( "success " );
 			CleanupStack::Pop(); // contact
 			TInt count = iContactListArray.Count();
 			for(TInt i = 0; i < count; i++)
@@ -848,7 +831,7 @@
 				if(KErrNotFound != index )
 				    {
 				    iContactListArray[i]->ResortContact(contact);
-				    TRACE( T_LIT("CVIMPSTStorageServiceView::AddContactToCacheL() contact ResortContact ") );
+				    TRACE( " contact ResortContact " );
 				    // get the index of the sorted contact, as after sorting the 
 				    // index would have changed based on presence.
 				    // break after the contact list is found and the contact is found
@@ -860,13 +843,12 @@
 			}
 		else
 			{
-			TRACE( T_LIT("CVIMPSTStorageServiceView::AddContactToCacheL not success ") );
+			TRACE( " not success " );
 			CleanupStack::PopAndDestroy(); // contact	
 			contact = NULL;
 			}
 		}
 	iIsInvitationItem = EFalse; // reset the flag 
-	TRACE( T_LIT("CVIMPSTStorageServiceView::AddContactToCacheL end") );
 	return contact;
 	}
 // -----------------------------------------------------------------------------
@@ -875,7 +857,7 @@
 //
 TInt CVIMPSTStorageServiceView::AddStorageContactToCacheL(MVIMPSTStorageContact* aContactToAdd ) 
 	{
-	TRACE( T_LIT("CVIMPSTStorageServiceView::AddStorageContactToCacheL begin") );
+	TRACER_AUTO;
 	TInt error = KErrGeneral;
     MVIMPSTStorageContactList* contactList = FindContactListInternal( KFriendList );
     if( !contactList )
@@ -889,7 +871,7 @@
 			aContactToAdd->SetNameL( *iUnNamedText );	
 			}
 		TInt index = KErrNotFound;
-        TRACE( T_LIT("CVIMPSTStorageServiceView::AddStorageContactToCacheL online status = %d "), TVIMPSTEnums::EPending);
+        TRACE( " online status = %d ", TVIMPSTEnums::EPending);
         // if the userid(xsp field is null then the presence is unknown.)
         if(aContactToAdd->UserId().Length() == 0)
             {
@@ -900,7 +882,7 @@
             aContactToAdd->SetOnlineStatus(TVIMPSTEnums::EPending);    
             }
 		error = contactList->AddStorageContactToCacheL( aContactToAdd, index ); // aContactToAdd ownership is transfered
-		TRACE( T_LIT("CVIMPSTStorageServiceView::AddStorageContactToCacheL index = %d "),index );
+		TRACE( "index = %d ",index );
 		if( error == KErrNone )
 			{
 			TInt count = iContactListArray.Count();
@@ -910,7 +892,7 @@
 				if(KErrNotFound != index )
 					{
 					iContactListArray[i]->ResortContact(aContactToAdd);
-					TRACE( T_LIT("CVIMPSTStorageServiceView::AddContactToCacheL() contact ResortContact ") );
+					TRACE( "contact ResortContact " );
 					// get the index of the sorted contact, as after sorting the 
 					// index would have changed based on presence.
 					// break after the contact list is found and the contact is found
@@ -921,8 +903,7 @@
 			NotifyAllObserversL( TVIMPSTEnums::EStorageEventContactAddition,NULL, aContactToAdd, index );	
 			}
 		}
-	TRACE( T_LIT("CVIMPSTStorageServiceView::AddStorageContactToCacheL error = %d "),error );
-	TRACE( T_LIT("CVIMPSTStorageServiceView::AddStorageContactToCacheL end") );
+	TRACE( " error = %d ",error );
 	return error;
     }
 // -----------------------------------------------------------------------------
@@ -934,7 +915,7 @@
 TInt CVIMPSTStorageServiceView::RemoveContactFromCacheL(const MVPbkContactLink& aContactLink,
 														 TVIMPSTEnums::TVIMPSTStorgaeEventType aType) 
 	{
-	TRACE( T_LIT("CVIMPSTStorageServiceView::RemoveContactFromCacheL begin") );
+	TRACER_AUTO;
 	TInt error = KErrNotFound;
 	MVIMPSTStorageContactList* contactList = FindContactListInternal( KFriendList );
     if( !contactList )
@@ -956,8 +937,7 @@
 	    error = contactList->RemoveContactFromCacheL( aContactLink, index );
 	    NotifyAllObserversL( TVIMPSTEnums::EStorageEventContactDelete ,NULL,NULL,index); //contact is not valid ,deleted
 		}
-	TRACE( T_LIT("CVIMPSTStorageServiceView::RemoveContactFromCacheL error = %d "),error );
-	TRACE( T_LIT("CVIMPSTStorageServiceView::RemoveContactFromCacheL begin") );
+	TRACE("error = %d ",error );
     return error;
 	}
 // -----------------------------------------------------------------------------
@@ -966,12 +946,11 @@
 //
 void CVIMPSTStorageServiceView::RemoveAllCacheContactsL()
     {
-    TRACE( T_LIT("CVIMPSTStorageServiceView::RemoveContactFromCacheL begin") );
-    TRACE( T_LIT("CVIMPSTStorageServiceView::RemoveContactFromCacheL  count = %d"), iContactListArray.Count());
+	TRACER_AUTO;
+    TRACE( "  count = %d", iContactListArray.Count());
     iContactListArray.ResetAndDestroy();
-    TRACE( T_LIT("CVIMPSTStorageServiceView::RemoveContactFromCacheL remove sucess") );
+    TRACE( " remove sucess" );
     NotifyAllObserversL(TVIMPSTEnums::EStorageAllContactRemoved,NULL,NULL,0 );
-    TRACE( T_LIT("CVIMPSTStorageServiceView::RemoveContactFromCacheL begin") );
     }
  
 // -----------------------------------------------------------------------------
@@ -980,9 +959,8 @@
 //
 MVIMPSTStorageContactList* CVIMPSTStorageServiceView::GetDefaultContactListL()
     {
-    TRACE( T_LIT("CVIMPSTStorageServiceView::GetDefaultContactListL begin") );
+	TRACER_AUTO;
     MVIMPSTStorageContactList* contactList = FindContactListInternal( KFriendList );
-    TRACE( T_LIT("CVIMPSTStorageServiceView::GetDefaultContactListL end") );
     return contactList;
     }
 // -----------------------------------------------------------------------------
@@ -992,9 +970,8 @@
 void CVIMPSTStorageServiceView::NotifyServiceViewL( TVIMPSTEnums::TVIMPSTStorgaeEventType aEventType,
 													MVIMPSTStorageContact* aContact /*= NULL */ )
     {
-    TRACE( T_LIT("CVIMPSTStorageServiceView::NotifyServiceViewL begin") );
+	TRACER_AUTO;
     NotifyAllObserversL(aEventType,NULL, aContact,0 ); 
-    TRACE( T_LIT("CVIMPSTStorageServiceView::NotifyServiceViewL end") );
     }
  
  //================================================== from writer interface end ===========================
@@ -1007,7 +984,7 @@
                                        const CVIMPSTStorageContactList& aContactListA, 
                                        const CVIMPSTStorageContactList& aContactListB )
     {
-    TRACE( T_LIT("CVIMPSTStorageServiceView::ContactListOrderByDisplayName") );
+	TRACER_AUTO;
     return aContactListA.DisplayName().CompareC( aContactListB.DisplayName() );
     }
 
@@ -1020,10 +997,10 @@
                                        const CVIMPSTStorageContactList& aContactListA, 
                                        const CVIMPSTStorageContactList& aContactListB )
     {
-    TRACE( T_LIT("CVIMPSTStorageServiceView::ContactListFindByContactListId start") );
+	TRACER_AUTO;
     const MVIMPSTStorageContactList& listA = aContactListA;
     const MVIMPSTStorageContactList& listB = aContactListB;
-    TRACE( T_LIT("CVIMPSTStorageServiceView::ContactListFindByContactListId return") );
+   TRACE(" return" );
     return ( VIMPSTStorageUtils::NeutralCompare( listA.ListId(), 
                                       listB.ListId(), EFalse ) == 0 );
     }
@@ -1035,7 +1012,7 @@
 //
 TInt CVIMPSTStorageServiceView::Count() const
 	{
-	TRACE( T_LIT("CVIMPSTStorageServiceView::Count start") );
+	TRACER_AUTO;
 	// fetch contact list count from storage
 	// and add contact counts from expanded contact lists
 	TInt listCount( ListCount() );
@@ -1054,8 +1031,7 @@
 		   //check for this
 			}
 	    }
-	TRACE( T_LIT("CVIMPSTStorageServiceView::itemCount =%d"),itemCount );
-	TRACE( T_LIT("CVIMPSTStorageServiceView::Count end") );
+	TRACE( "itemCount =%d",itemCount );
    	return itemCount;
 	}
 
@@ -1067,7 +1043,7 @@
 //
 MVIMPSTStorageItemModel::SItem CVIMPSTStorageServiceView::Item( TInt aIndex  ) const
     {
-    TRACE( T_LIT("CVIMPSTStorageServiceView::Item start") );
+	TRACER_AUTO;
     MVIMPSTStorageItemModel::SItem item;
     item.iType = MVIMPSTStorageItemModel::EInvalid;
     item.iContactList = NULL;
@@ -1085,7 +1061,7 @@
 	        {
 	        // there's a list in given index
 	        item.iType = MVIMPSTStorageItemModel::EContactList;
-	        TRACE( T_LIT("CVIMPSTStorageServiceView::Item end") );
+	        TRACE( "Item end" );
 	        return item;
 	        }
 	    contactCount = list.Count() ;
@@ -1098,7 +1074,7 @@
 			    TInt contactIndex( aIndex - count );
 			    item.iType = MVIMPSTStorageItemModel::EContactItem;
 			    item.iContact = &list[contactIndex];
-			    TRACE( T_LIT("CVIMPSTStorageServiceView::Item end") );
+			    TRACE( "Item end" );
 			    return item;
 			    }
 			// add expanded list's contact count
@@ -1106,7 +1082,6 @@
 			}
 	    }
     // not found
-    TRACE( T_LIT("CVIMPSTStorageServiceView::Item end") );
     return item;
 	}
 
@@ -1118,7 +1093,7 @@
 //
 TInt CVIMPSTStorageServiceView::IndexOfContact( MVIMPSTStorageContact* aContact ) const
 	{
-	TRACE( T_LIT("CVIMPSTStorageServiceView::IndexOfContact begin") );
+	TRACER_AUTO;
 	TInt listCount( ListCount() );
 	TInt itemCount( 0 );
 	TInt contactCount = 0;
@@ -1144,8 +1119,7 @@
 			}
 		//add the code for if contact not found in first list
 		}
-	TRACE( T_LIT("CVIMPSTStorageServiceView::IndexOfContact indexOfContact = %d"), indexOfContact );
-	TRACE( T_LIT("CVIMPSTStorageServiceView::IndexOfContact end") );
+	TRACE( " indexOfContact = %d", indexOfContact );
 	return indexOfContact;
 	}
 
@@ -1159,7 +1133,7 @@
                                        TBool /*aIgnoreOwnItem = EFalse*/,
                                        TBool /*aIgnoreEmptyLists = ETrue*/ ) const
     {
-    TRACE( T_LIT("CVIMPSTStorageServiceView::IndexOfList begin") );
+	TRACER_AUTO;
 	TInt listCount( ListCount() );
    	TInt itemCount( 0 );
 	for( TInt i(0); i<listCount; ++i )
@@ -1167,7 +1141,7 @@
 	    MVIMPSTStorageContactList& list = ListAt(i);
 	    if( &list == aList )
 	        {
-	        TRACE( T_LIT("CVIMPSTStorageServiceView::IndexOfList list matched"));
+	        TRACE( "list matched");
 	        break;
 	        }
 	    else
@@ -1178,8 +1152,7 @@
 	    	itemCount = itemCount+ list.Count() + 1;	
 		    }
 	    }
-	TRACE( T_LIT("CVIMPSTStorageServiceView::IndexOfList itemCount = %d"),itemCount );
-	TRACE( T_LIT("CVIMPSTStorageServiceView::IndexOfList end") );
+	TRACE( "itemCount = %d",itemCount );
 	return itemCount;
     }
 // -----------------------------------------------------------------------------
@@ -1189,7 +1162,7 @@
 //
 TInt CVIMPSTStorageServiceView::MdcaCount() const
     {
-    TRACE( T_LIT("CVIMPSTStorageServiceView::MdcaCount") );
+	TRACER_AUTO;
     return Count();
     }
 
@@ -1200,7 +1173,7 @@
 //
 TPtrC CVIMPSTStorageServiceView::MdcaPoint( TInt /*aIndex */) const
     {
-    TRACE( T_LIT("CVIMPSTStorageServiceView::MdcaPoint") );
+	TRACER_AUTO;
     // These will be filtered out
     return KNullDesC();
     } 
@@ -1211,13 +1184,13 @@
 //
 void CVIMPSTStorageServiceView::Sort( const TDesC& aContactListId /* = KNullDesC */ )
     {
-    TRACE( T_LIT("CVIMPSTStorageServiceView::Sort() begin") );
+	TRACER_AUTO;
     if( aContactListId.Length() != 0 )
         {
         MVIMPSTStorageContactList* list = FindContactList( aContactListId );
         if( list )
             {
-            TRACE( T_LIT("CVIMPSTStorageServiceView::Sort() list sort") );
+            TRACE( " list sort" );
             list->Sort();
             }
         }
@@ -1227,11 +1200,10 @@
         for( TInt a( 0 ); a < count; ++a )
             {
             MVIMPSTStorageContactList& list = *iContactListArray[ a ];
-            TRACE( T_LIT("CVIMPSTStorageServiceView::Sort() all list sort") );
+            TRACE( " all list sort" );
             list.Sort();
             }
         } 
-    TRACE( T_LIT("CVIMPSTStorageServiceView::Sort() end") );   
     }
 
 
@@ -1244,13 +1216,12 @@
 					                                  MVIMPSTStorageContact* aContact,
 					                                  TInt aContactIndex )
     {
-    TRACE( T_LIT("CVIMPSTStorageServiceView::NotifyAllObserversL() begin") );
+	TRACER_AUTO;
 	TInt count = iContactObservers.Count();
 	for( TInt i=0; i<count; i++ )
 		{
 		iContactObservers[i]->HandleStorageChangeL(  aType, aList, aContact, aContactIndex );	
 		}
-    TRACE( T_LIT("CVIMPSTStorageServiceView::NotifyAllObserversL() end") );
     }
 
 // -----------------------------------------------------------------------------
@@ -1262,13 +1233,12 @@
 							                                 MVIMPSTStorageContact* aContact,
 							                                 TInt aContactIndex )
 	{
-    TRACE( T_LIT("CVIMPSTStorageServiceView::NotifyAllObserversWithDelay() begin") );
+	TRACER_AUTO;
     if(iActiveHandler->IsActive() )
         {
         iActiveHandler->Cancel();
         }
     iActiveHandler->IssueRequest( aType, aList, aContact, aContactIndex );
-    TRACE( T_LIT("CVIMPSTStorageServiceView::NotifyAllObserversWithDelay() end") );
     }
 
 // -----------------------------------------------------------------------------
@@ -1280,8 +1250,7 @@
 								                           MVIMPSTStorageContact* aContact,
 								                           TInt aContactIndex) 
 	{
-	TRACE( T_LIT("CVIMPSTStorageServiceView::HandleDelayedNotificationL() begin") );
+	TRACER_AUTO;
 	NotifyAllObserversL( aType, aList, aContact, aContactIndex );
-	TRACE( T_LIT("CVIMPSTStorageServiceView::HandleDelayedNotificationL() end") );	
 	}
 //  End of File
--- a/uiservicetab/vimpststorage/src/cvimpststoragevpbklocalstore.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpststorage/src/cvimpststoragevpbklocalstore.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -24,7 +24,7 @@
 #include <MVPbkContactView.h>
 #include <CVPbkContactIdConverter.h>
 #include "mvimpststorageserviceview.h"
-#include "vimpstdebugtrace.h" 
+#include "uiservicetabtracer.h"
 #include "tvimpstconsts.h"
 #include <CVPbkContactLinkArray.h>
 #include <MVPbkContactLink.h>
@@ -47,7 +47,7 @@
     iServiceCacheWriter( aServiceCacheWriter ),
     iFetchStep( EFetchingUnknown )
     { 
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::CVIMPSTStorageVPbkLocalStore()") ); 
+	TRACER_AUTO;
     CActiveScheduler::Add( this );
     }
 
@@ -59,12 +59,11 @@
     															 const TDesC& aServiceName,
     															 MVIMPSTStorageServiceCacheWriter& aServiceCacheWriter )
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::NewL() begin") ); 
+	TRACER_AUTO;
     CVIMPSTStorageVPbkLocalStore* self = NewLC( aContactDb,  
     										   aServiceName,
 											  aServiceCacheWriter);
     CleanupStack::Pop( self );
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::NewL() end") ); 
     return self;
     }
 
@@ -77,12 +76,13 @@
     									const TDesC& aServiceName,
     									MVIMPSTStorageServiceCacheWriter& aServiceCacheWriter  )
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::NewLC() begin") );
+	TRACER_AUTO;
+    
     CVIMPSTStorageVPbkLocalStore* self =
         new (ELeave) CVIMPSTStorageVPbkLocalStore(aServiceCacheWriter);
     CleanupStack::PushL( self );
     self->ConstructL( aContactDb, aServiceName );
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::NewLC() end") );
+   
     return self;
     }
 // ---------------------------------------------------------------------------
@@ -91,9 +91,10 @@
 //
 void CVIMPSTStorageVPbkLocalStore::ConstructL( const TDesC& aContactDb, const TDesC& aServiceName )
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::ConstructL() begin") );
+	TRACER_AUTO;
+   
     iVPbkStoreHandler = CVIMPSTStorageVPbkStoreHandler::NewL( aContactDb ,aServiceName, *this,ETrue );
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::ConstructL() iVPbkStoreHandler created") );
+    TRACE( "iVPbkStoreHandler created" );
      //construct the persistent store name
     iLocalDBName = HBufC::NewL( aServiceName.Length()+ KStorageExtn().Length());
     TPtr iLocalDBNamePtr = iLocalDBName->Des();
@@ -101,33 +102,33 @@
     _LIT(KSpecialChar ,"/\\:*?<>\"");
     AknTextUtils :: StripCharacters(iLocalDBNamePtr,KSpecialChar); 
     iLocalDBNamePtr.Append(KStorageExtn());    
-    TRACE( T_LIT("iLocalDBNamePtr: %S"), &iLocalDBNamePtr );
+    TRACE( "iLocalDBNamePtr: %S", &iLocalDBNamePtr );
     MVPbkContactStore* defaultStore = iVPbkStoreHandler->GetDefaultStoreL( aContactDb );
     User::LeaveIfNull(defaultStore);  
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::ConstructL() defaultStore retrived") );
+    TRACE("defaultStore retrived" );
     iIdConverter = CVPbkContactIdConverter::NewL(*defaultStore);
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::ConstructL() iIdConverter created") ); 
+    TRACE( "iIdConverter created" ); 
     User::LeaveIfError( iFs.Connect() );
     // Open existing or create new database.
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::ConstructL() connected to file server") ); 
+    TRACE( "connected to file server" ); 
 	if ( DbExists() )
 		{
-		TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::ConstructL() local db exist") ); 
+		TRACE( "local db exist" ); 
         OpenDbL();
-        TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::ConstructL() open success") );
+        TRACE( "open success" );
 		}
 	else
 		{
-		TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::ConstructL() local db not exist") );
+		TRACE("local db not exist" );
         DoFreespaceLevelCheckL( KEmptyDbSize );
         CreateDbL();
-        TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::ConstructL() local db created") );
+        TRACE("local db created");
 		}
     OpenTableL();
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::ConstructL() OpenTableL success ") );
+    TRACE("OpenTableL success " );
     iColset = iDb.ColSetL( KContactTable );    
-   	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::ConstructL() iColset is set") );
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::ConstructL() end") );	
+   	TRACE( " iColset is set" );
+  
     }
 
 // ---------------------------------------------------------------------------
@@ -137,7 +138,8 @@
 //
 CVIMPSTStorageVPbkLocalStore::~CVIMPSTStorageVPbkLocalStore()
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::~CVIMPSTStorageVPbkLocalStore() begin") );
+	TRACER_AUTO;
+    
     iRetrivedContactArray.ResetAndDestroy();
     TRAP_IGNORE( ResetAndDestroyLocalArrayL() );
         
@@ -150,7 +152,7 @@
     delete iIdConverter;	        
     delete iInviteId;
     delete iVPbkStoreHandler;
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::~CVIMPSTStorageVPbkLocalStore() end") );
+   
     }
  
  // ---------------------------------------------------------------------------
@@ -160,7 +162,7 @@
 //
 void CVIMPSTStorageVPbkLocalStore::ResetAndDestroyLocalArrayL()
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::ResetAndDestroyLocalArrayL() begin") );
+	TRACER_AUTO;
     TInt count = iFetchContactsToBeAdded.Count();
    	while( count )
 	   	{
@@ -175,7 +177,7 @@
         count = iFetchContactsToBeAdded.Count();
 	   	}
 	iFetchContactsToBeAdded.Reset();
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::ResetAndDestroyLocalArrayL() end") );
+    
     }
  
 // ----------------------------------------------------------
@@ -184,7 +186,7 @@
 //
 TBool CVIMPSTStorageVPbkLocalStore::LocalStore() const 
 	{
-	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::LocalStore() local store") );
+	TRACER_AUTO;
 	return ETrue;
 	}
 // ---------------------------------------------------------------------------
@@ -193,20 +195,20 @@
 //
 void CVIMPSTStorageVPbkLocalStore::HandleVPbkStoreEventL(TVIMPSTVPbkStoreEvent aVPbkStoreEvent) 
 	{
-	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::HandleVPbkStoreEventL() begin") );
+	TRACER_AUTO;
 	switch( aVPbkStoreEvent.iEventType )
 	    {
 	    case EVPbkContactReadCompleted:
 	    	{
-	    	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::HandleVPbkStoreEventL() EVPbkContactReadCompleted started") );
+	    	TRACE( " EVPbkContactReadCompleted started" );
 	    	iServiceCacheWriter.NotifyServiceViewL(TVIMPSTEnums::EStorageContactReadComplete);
 	    	if( iFetchStep == EFetchingCalled )
 		    	{
-		    	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::HandleVPbkStoreEventL() EVPbkContactReadCompleted EFetchingCalled ") );
+		    	TRACE( " EVPbkContactReadCompleted EFetchingCalled " );
 		    	IssueRequest();		
 		    	}
 	    	iFetchStep = EContactReadComplete;
-	    	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::HandleVPbkStoreEventL() EContactReadComplete completed ") );
+	    	TRACE( "EContactReadComplete completed " );
 		  	break;
 	    	}
 	    case EVPbkContactReading:
@@ -217,7 +219,7 @@
 			TDbColNo colNo = iColset->ColNo( KContactId );
 		    if ( SeekRowL( colNo, linkId ) )
 				{
-				TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::HandleVPbkStoreEventL() EVPbkContactReading contact") );
+				TRACE( "EVPbkContactReading contact" );
 				/*
 					*	This is local store, that is phone book and service tab shares only one cdb file.
 					* 	in that case, if somebody edits the cdb file from contacts tab, then also we get the 
@@ -252,7 +254,7 @@
 			TDbColNo colNo = iColset->ColNo( KContactId );
 			if( iFetchStep  == EFetchingOn )
 		         {
-		         TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::HandleVPbkStoreEventL() EVPbkContactFetching contact") );
+		         TRACE( "EVPbkContactFetching contact" );
 		         WriteToStoreDbL( linkId );
 		         iServiceCacheWriter.AddContactToCacheL (*aVPbkStoreEvent.iContactLink , 
 		                 aVPbkStoreEvent.iUserId ,
@@ -263,7 +265,7 @@
 				}
 			else if ( SeekRowL( colNo, linkId ) )
 				{
-				TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::HandleVPbkStoreEventL() EVPbkContactAdded start") );
+				TRACE( " EVPbkContactAdded start" );
 				/*
 					*	This is local store, that is phone book and service tab shares only one cdb file.
 					* 	in that case, if somebody edits the cdb file from contacts tab, then also we get the 
@@ -285,11 +287,11 @@
 										 aVPbkStoreEvent.iDisplayName,
 										 aVPbkStoreEvent.iAvatarContent,
 										 TVIMPSTEnums::EStorageEventContactAddition  );
-				TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::HandleVPbkStoreEventL() EVPbkContactAdded completed") );
+				TRACE( "EVPbkContactAdded completed" );
 				}
 			else if(  iInviteId )
 			    {
-			    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::HandleVPbkStoreEventL() iInviteId accepted") );
+			    TRACE( "iInviteId accepted" );
 			    if( IsSameContactIdL( *iInviteId, aVPbkStoreEvent.iUserId ) )
 			        {
 			        WriteToStoreDbL( linkId );
@@ -301,13 +303,13 @@
 			        delete iInviteId;
 			        iInviteId = NULL;
 			        }
-                 TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::HandleVPbkStoreEventL() iInviteId accepted sucess") );
+                 TRACE( "iInviteId accepted sucess" );
 			    }
 			break;	
 			}
 	   	case EVPbkContactSynchronizing:
 	   	    {
-	   	    TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::HandleVPbkStoreEventL EVPbkContactSynchronizing " ) );
+	   	    TRACE( "EVPbkContactSynchronizing "  );
 	   	    // a contact entry has been created in virtual database store
 	   	    // create the cache contact
 	   	    TInt32 linkId = iIdConverter->LinkToIdentifier(*aVPbkStoreEvent.iContactLink );
@@ -338,77 +340,77 @@
 	   	        }
 	   	   if(iFetchStep == EFetchingOn)          
                {
-               TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::HandleVPbkStoreEventL  EVPbkContactSynchronizing fetchin on" ) );
+               TRACE( "EVPbkContactSynchronizing fetchin on" );
                IssueRequest();
                }
-	   	    TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::HandleVPbkStoreEventL EVPbkContactSynchronizing completed" ) );
+	   	    TRACE(" EVPbkContactSynchronizing completed"  );
 	   	    break;
 	   	    }
 		case EVPbkContactDeleted:
 		    {
-		    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::HandleVPbkStoreEventL() EVPbkContactDeleted") );
+		    TRACE( "EVPbkContactDeleted" );
 		    TInt32 linkId = iIdConverter->LinkToIdentifier(*aVPbkStoreEvent.iContactLink );
 		    // a contact entry has been deleted from virtual database store
 		    TDbColNo colNo = iColset->ColNo( KContactId );
 		    if ( SeekRowL( colNo, linkId ) )
 		        { 
-		        TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::HandleVPbkStoreEventL() EVPbkContactDeleted found in db") );
+		        TRACE( "EVPbkContactDeleted found in db" );
 		        // contatc found in local database ,delete from local database 
 		        DeleteContactFromInternalStoreL( linkId );
-		        TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::HandleVPbkStoreEventL() EVPbkContactDeleted deleted from db") );
+		        TRACE( "EVPbkContactDeleted deleted from db" );
 		         // delete from cache contact
 		    	iServiceCacheWriter.RemoveContactFromCacheL(*aVPbkStoreEvent.iContactLink, 
 		    												TVIMPSTEnums::EStorageEventDeleteFromPbk );
-		    	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::HandleVPbkStoreEventL() EVPbkContactDeleted deleted from cache") );
+		    	TRACE( "EVPbkContactDeleted deleted from cache" );
 		        }
 		    break;	 
 		    }
 		case EVPbkContactChanged:
 		    {
-		    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::HandleVPbkStoreEventL() EVPbkContactChanged ") );
+		    TRACE( "EVPbkContactChanged ");
 		    TInt32 linkId = iIdConverter->LinkToIdentifier(*aVPbkStoreEvent.iContactLink );
 		    TDbColNo colNo = iColset->ColNo( KContactId );
 		    if ( SeekRowL( colNo, linkId ) )
 		       {
-		       TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::HandleVPbkStoreEventL() EVPbkContactChanged found in local db") );
+		       TRACE( "EVPbkContactChanged found in local db" );
 		       // found in the list update it
 		       iServiceCacheWriter.UpdateCacheContactL(*aVPbkStoreEvent.iContactLink , 
 					    						 	 aVPbkStoreEvent.iUserId ,
 					    							 aVPbkStoreEvent.iDisplayName,
 					    							 aVPbkStoreEvent.iAvatarContent );
-			   TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::HandleVPbkStoreEventL() EVPbkContactChanged changed in cache") );
+			   TRACE( "EVPbkContactChanged changed in cache");
 		       }
 		    break;	
 		    }
 	    case EVPbkContactRetriving:
 		    {
-		    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::HandleVPbkStoreEventL() EVPbkContactRetriving") );
+		    TRACE( "EVPbkContactRetriving");
 		    // in case of local we allow all 
-		    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::HandleVPbkStoreEventL() EVPbkContactRetriving valid Id") );
+		    TRACE( "EVPbkContactRetriving valid Id");
 			CVIMPSTStorageContact* retrivedContact = CVIMPSTStorageContact::NewL( aVPbkStoreEvent.iUserId ,
 											    								  aVPbkStoreEvent.iDisplayName,
 											    								  *aVPbkStoreEvent.iContactLink,
 											    								  aVPbkStoreEvent.iAvatarContent);
 			iRetrivedContactArray.Append( retrivedContact ); // takes the ownership of retrivedContact
-			TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::HandleVPbkStoreEventL() EVPbkContactRetriving valid Id added") );
+			TRACE( "EVPbkContactRetriving valid Id added" );
 			// keep the backup of retrieved contacts
 			// user can add later once it sent to server
 			break;	
 		    }
 		case EVPbkUnknownChanges:
 		    {
-		    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::HandleVPbkStoreEventL() EVPbkUnknownChanges start") );
+		    TRACE("EVPbkUnknownChanges start" );
 		    DeleteAllContactFromInternalStoreL();
-		    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::HandleVPbkStoreEventL() EVPbkUnknownChanges all delete from db") );
+		    TRACE( " EVPbkUnknownChanges all delete from db" );
 		     // unknow mean all contact deleted from store
 		    iServiceCacheWriter.RemoveAllCacheContactsL();
-		    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::HandleVPbkStoreEventL() EVPbkUnknownChanges all delete from cache") );
+		    TRACE( " EVPbkUnknownChanges all delete from cache" );
 		    break;	
 		    }
 	    default:
 		 	break;
 	    }
-	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::HandleVPbkStoreEventL() end") );
+	
 	}
 
 
@@ -418,15 +420,15 @@
 //
 void CVIMPSTStorageVPbkLocalStore::IssueRequest()
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::IssueRequest() begin") );
+	TRACER_AUTO;
     if( !IsActive() )
 	    {
-	    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::IssueRequest() SetActive") );
+	    TRACE( "SetActive" );
 	    TRequestStatus* status = &iStatus;
 	    User::RequestComplete( status, KErrNone );
 	    SetActive();
 	    }
-	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::IssueRequest() begin") );
+	
     }
     
 // --------------------------------------------------------------------------
@@ -435,19 +437,19 @@
 //
 void CVIMPSTStorageVPbkLocalStore::RunL()
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::RunL() begin") );
+	TRACER_AUTO;
     TInt count = iFetchContactsToBeAdded.Count();
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::RunL() count to be added = %d "),count );
+    TRACE( "count to be added = %d ",count );
     if( !count )
         {
-        TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::RunL() fetch completed " ) );
+        TRACE(" fetch completed "  );
         iFetchStep = EContactReadComplete;
         iServiceCacheWriter.NotifyServiceViewL( TVIMPSTEnums::EStorageContactFetchComplete );
-		TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::RunL() fetch completed notification sent" ) );     
+		TRACE( "fetch completed notification sent"  );     
 	    }
     else
         {
-        TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::RunL() fetch in progress" ) );     
+        TRACE( "fetch in progress"  );     
         iFetchStep  = EFetchingOn;
         TVIMPSTContactInfo contactInfoToAdd = iFetchContactsToBeAdded[0];
         MVIMPSTStorageContact* exist = iServiceCacheWriter.FindCacheContactByUserId( *contactInfoToAdd.iUserId );
@@ -455,13 +457,13 @@
 	        {
 	        // contact is already exist ,send the notification about this
 	        iServiceCacheWriter.NotifyServiceViewL(TVIMPSTEnums::EStorageContactFetchExistInStore, exist );
-	        TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::RunL() fetch in progress id exist" ) ); 
+	        TRACE( " fetch in progress id exist" ); 
 	        // process next
 	        IssueRequest();
 	        }
 	    else
 		    {
-		    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::RunL() fetch in progress create id in store called" ) ); 
+		    TRACE( "fetch in progress create id in store called"  ); 
 		     // pass the display NAme in place of NULL
         	iVPbkStoreHandler->CreateVPbkContactL( *contactInfoToAdd.iUserId, *contactInfoToAdd.iDisplayName ); // process always 0th item
             }
@@ -471,9 +473,9 @@
         delete contactInfoToAdd.iDisplayName;
         contactInfoToAdd.iDisplayName = NULL ;
         iFetchContactsToBeAdded.Compress();
-        TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::RunL() fetch in progress iFetchContactsToBeAdded ,one entry removed" ) ); 
+        TRACE( "fetch in progress iFetchContactsToBeAdded ,one entry removed"  ); 
         }
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::RunL() end") );
+    
     }
 
 // --------------------------------------------------------------------------
@@ -482,7 +484,7 @@
 //
 void CVIMPSTStorageVPbkLocalStore::DoCancel()
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::DoCancel()") );
+	TRACER_AUTO;
     }
 
 // --------------------------------------------------------------------------
@@ -491,7 +493,7 @@
 //
 TInt CVIMPSTStorageVPbkLocalStore::RunError( TInt aError )
     { 
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::RunError()") );   
+	TRACER_AUTO;  
     return aError;
     }
 
@@ -504,18 +506,18 @@
         										   	  const TDesC& aDisplayName ,
         										   	  TBool aInvitationAutoAccept /* = EFalse */ )   
 	{
-	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::CreateVPbkContactL() begin") ); 
+	TRACER_AUTO;
 	TInt error = KErrGeneral;
 	if( aInvitationAutoAccept)
 	    {
-	    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::CreateVPbkContactL() autoaccept add contact") ); 
+	    TRACE("autoaccept add contact" ); 
 	    delete iInviteId;
 	    iInviteId = NULL;
 	    iInviteId = aUserId.AllocL();
 	    error = iVPbkStoreHandler->CreateVPbkContactL( *iInviteId,aDisplayName ); 
 	    }
-	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::CreateVPbkContactL() error = %d"),error ); 
-	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::CreateVPbkContactL() begin") ); 
+	TRACE( "error = %d",error ); 
+	
 	return error;
 	}
 
@@ -525,7 +527,7 @@
 //  
 TInt CVIMPSTStorageVPbkLocalStore::RemoveVPbkContactL(const MVPbkContactLink& aContactLink) 
 	{
-	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::RemoveVPbkContactL() begin") ); 
+	TRACER_AUTO;; 
 	TInt error = KErrNotFound;
 	// text now holds the name (or first field of the contact) 
 	TInt32 linkId = iIdConverter->LinkToIdentifier(aContactLink);
@@ -533,17 +535,17 @@
 	TDbColNo colNo = iColset->ColNo( KContactId );
 	if ( SeekRowL( colNo, linkId ) )
 		{
-		TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::RemoveVPbkContactL() link exist in db") ); 
+		TRACE( "link exist in db" ); 
 		// contatc found in local database ,delete from local database 
 		DeleteContactFromInternalStoreL( linkId );
-		TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::RemoveVPbkContactL() link deleted from db") ); 
+		TRACE( "link deleted from db" ); 
 		// delete from cache contact
 		error = iServiceCacheWriter.RemoveContactFromCacheL(aContactLink, 
 															TVIMPSTEnums::EStorageEventContactDelete );
-		TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::RemoveVPbkContactL() link deleted from cache") ); 
+		TRACE( "link deleted from cache" ); 
 		}
-	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::RemoveVPbkContactL() error %d"),error );
-	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::RemoveVPbkContactL() end") ); 
+	TRACE("error %d",error );
+	
     return error;
   	}
  
@@ -553,13 +555,13 @@
 // 
 TInt CVIMPSTStorageVPbkLocalStore::RemoveAllVPbkContactsL() 
 	{
-	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::RemoveAllVPbkContactsL() begin" ) );
+	TRACER_AUTO;
 	iRetrivedContactArray.ResetAndDestroy(); 
 	DeleteAllContactFromInternalStoreL();
-	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::RemoveAllVPbkContactsL() all contacts deleted from db") );
+	TRACE( "all contacts deleted from db" );
 	iServiceCacheWriter.RemoveAllCacheContactsL();
-	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::RemoveAllVPbkContactsL() all contacts deleted from cache") );
-	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::RemoveAllVPbkContactsL() end" ) );
+	TRACE( "all contacts deleted from cache" );
+	
 	return KErrNone;// local store : delete from local store ,own user has changed
 	}
 // ---------------------------------------------------------------------------
@@ -568,12 +570,12 @@
 //  
 TInt CVIMPSTStorageVPbkLocalStore::RetrieveVPbkXSPIdL(const TDesC8& aPackedLinks ) 
 	{
-	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::RetrieveVPbkXSPIdL() begin" ) );
+	TRACER_AUTO;
 	iRetrivedContactArray.ResetAndDestroy();
-	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::RetrieveVPbkXSPIdL() iRetrivedContactArray Reset" ) );
+	TRACE( " iRetrivedContactArray Reset"  );
     iVPbkStoreHandler->RetrieveVPbkContactL( aPackedLinks );
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::RetrieveVPbkXSPIdL() iRetrivedContactArray count= %d " ),iRetrivedContactArray.Count() );
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::RetrieveVPbkXSPIdL() end " ) );
+    TRACE( "iRetrivedContactArray count= %d " ,iRetrivedContactArray.Count() );
+    
     return iRetrivedContactArray.Count();
     }
 
@@ -583,14 +585,14 @@
 //  
 const TDesC& CVIMPSTStorageVPbkLocalStore::GetRetrieveVPbkXSPIdL(TInt aIndex ) 
 	{
-	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::GetRetrieveVPbkXSPIdL() begin" ) );
-	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::GetRetrieveVPbkXSPIdL() aIndex = %d" ),aIndex );
+	TRACER_AUTO;
+	TRACE( "aIndex = %d" ,aIndex );
 	MVIMPSTStorageContact* contact = NULL;
 	if( aIndex >= 0 && aIndex < iRetrivedContactArray.Count() )
         {
         contact = iRetrivedContactArray[ aIndex ];
         }
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::GetRetrieveVPbkXSPIdL() end" ) );   
+       
     return contact ? contact->UserId() : KNullDesC ; 	
 	}
 // ---------------------------------------------------------------------------
@@ -599,10 +601,10 @@
 // 
 TInt CVIMPSTStorageVPbkLocalStore::CreateRetriveVPbkContactL( TInt aIndexToUse  )   
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::CreateRetriveVPbkContactL() begin" ) );
+	TRACER_AUTO;
     if( aIndexToUse < 0 && aIndexToUse >= iRetrivedContactArray.Count() )
         {
-        TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::CreateRetriveVPbkContactL() argument error" ) );
+        TRACE( " argument error"  );
         return KErrArgument;
         }
     TInt error = KErrAlreadyExists;
@@ -616,7 +618,7 @@
 	    }
     if( !exist )
         {
-        TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::CreateRetriveVPbkContactL() adding to  cache" ) );
+        TRACE( "adding to  cache" );
         MVPbkContactLink* link = retrivedContact->ContactLink();
         if( link )
 			{
@@ -628,7 +630,7 @@
 			CleanupStack::PushL( contactToAdd );
 			TInt32 linkId = iIdConverter->LinkToIdentifier( *link );
 			error = iServiceCacheWriter.AddStorageContactToCacheL( contactToAdd ); // contactToAdd ownership is transfered
-			TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::CreateRetriveVPbkContactL() adding to  cache done" ) );
+			TRACE( " adding to  cache done"  );
 			if( error == KErrNone )
 				{
 				CleanupStack::Pop(); // contactToAdd , Ownership is transfered to AddStorageContactToCacheL
@@ -638,11 +640,11 @@
 				{
 				CleanupStack::PopAndDestroy(); // contactToAdd	
 				}
-			TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::CreateRetriveVPbkContactL() adding to  db done" ) );
+			TRACE( " adding to  db done"  );
 			}
         }
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::CreateRetriveVPbkContactL() error =%d" ),error );
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::CreateRetriveVPbkContactL() end" ) );
+    TRACE( "error =%d" ,error );
+    
     return error;
     }
 
@@ -652,10 +654,10 @@
 // 
 TInt CVIMPSTStorageVPbkLocalStore::deleteRetriveVPbkContactL( TInt aIndexToUse  )   
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::deleteRetriveVPbkContactL() begin" ) );
+	TRACER_AUTO;
     if( aIndexToUse < 0 && aIndexToUse >= iRetrivedContactArray.Count() )
         {
-        TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::deleteRetriveVPbkContactL() argument error" ) );
+        TRACE( "argument error" );
         return KErrArgument;
         }
     MVIMPSTStorageContact* retrivedContact = iRetrivedContactArray[ aIndexToUse ];
@@ -667,7 +669,7 @@
     CleanupStack::Pop(); // link
     TInt error = iVPbkStoreHandler->RemoveVPbkContactL( *contactsToDelete );
     CleanupStack::PopAndDestroy(); // contactsToDelete
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::deleteRetriveVPbkContactL() begin" ) );
+    
     return error;
     }
 // CVIMPSTStorageVPbkLocalStore::UpdateAvatarFieldDataL()
@@ -676,7 +678,7 @@
 TInt CVIMPSTStorageVPbkLocalStore::UpdateAvatarFieldDataL(const MVPbkContactLink& aContactLink,
 														  const TDesC8& aAvatartData )
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::UpdateAvatarFieldDataL()" ) );
+	TRACER_AUTO;
     return iVPbkStoreHandler->UpdateAvatarFieldDataL( aContactLink, aAvatartData );
     }
 
@@ -686,7 +688,7 @@
 //
 TInt CVIMPSTStorageVPbkLocalStore::RemoveAvatarFieldL(MVPbkStoreContact& aStoreContact)
 	{
-	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::RemoveAvatarFieldL()" ) );
+	TRACER_AUTO;
 	return iVPbkStoreHandler->RemoveAvatarFieldL( aStoreContact );	
 	}
 
@@ -697,11 +699,11 @@
 void CVIMPSTStorageVPbkLocalStore::AddVPbkFetchContactsL( RArray <TPtrC>& aFirstNameList, 
                                                            RArray <TPtrC> &aServiceField ) 
      {
-     TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::AddVPbkFetchContactsL() begin" ) );
+	TRACER_AUTO;
      // in case of server contacts delete all contacts
      ResetAndDestroyLocalArrayL();
      TInt count = aServiceField.Count();
-     TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::AddVPbkFetchContactsL() count=%d" ),count );
+     TRACE( " count=%d" ,count );
      for( TInt i = 0; i<count; i++ )
          {
          TVIMPSTContactInfo contactInf =
@@ -714,15 +716,15 @@
          }
      if( iFetchStep == EContactReadComplete )
 	     {
-	     TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::AddVPbkFetchContactsL() start fetcing" ) );
+	     TRACE( "start fetcing"  );
 	     IssueRequest();	
 	     }
 	 else
 		 {
-		 TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::AddVPbkFetchContactsL() EFetchingCalled" ) );
+		 TRACE( " EFetchingCalled"  );
 		 iFetchStep = EFetchingCalled;	
 		 }
-	 TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::AddVPbkFetchContactsL() end" ) );
+	
      }
 
 //******************* Database Operations *********************************//
@@ -732,7 +734,7 @@
 //
 TBool CVIMPSTStorageVPbkLocalStore::DbExists()
 	{
-	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::DbExists() begin" ) );
+	TRACER_AUTO;
 	RFile temp;
 
 	TBuf< KMaxPath > storagePath;
@@ -751,7 +753,7 @@
 		{
 		ret = EFalse;
 		}
-	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::DbExists() end" ) );
+	
 	return ret;
 	}
 
@@ -762,7 +764,7 @@
 //
 void CVIMPSTStorageVPbkLocalStore::CreateDbL()
 	{
-	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::CreateDbL() begin" ) );
+	TRACER_AUTO;
 	TBuf< KMaxPath > storagePath;
 	storagePath.Append( KDbPath );
 	iFs.MkDirAll( storagePath );    // make sure the directory exists	
@@ -777,7 +779,7 @@
 
     if( err ) 
         {
-        TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::CreateDbL() err = %d" ),err );
+        TRACE( " err = %d" ,err );
         delete iFileStore;
         iFileStore = NULL;
 
@@ -799,7 +801,7 @@
         iFs.Delete( storagePath );
         User::Leave( err3 );
         }
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::CreateDbL() end" ) );
+    
     }    
 
 // -----------------------------------------------------------
@@ -808,14 +810,14 @@
 //
 void CVIMPSTStorageVPbkLocalStore::OpenDbL()
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::OpenDbL() begin" ) );
+	TRACER_AUTO;
     TBuf< KMaxPath > storagePath;
     storagePath.Append( KDbPath );
     storagePath.Append( *iLocalDBName );
     iFileStore = CPermanentFileStore::OpenL( iFs, storagePath, EFileShareReadersOrWriters|EFileWrite );   
     iFileStore->SetTypeL( iFileStore->Layout() );
     iDb.OpenL( iFileStore, iFileStore->Root() );
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::OpenDbL() begin" ) );
+    
     }
 
 // -----------------------------------------------------------
@@ -824,11 +826,11 @@
 //
 void CVIMPSTStorageVPbkLocalStore::CloseDb()
 	{ 
-	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::CloseDb() begin" ) );
+	TRACER_AUTO;
     delete iFileStore;
     iFileStore = NULL;
     iDb.Close();
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::CloseDb() end" ) );
+    
     }
 
 // -----------------------------------------------------------
@@ -837,17 +839,17 @@
 //
 void CVIMPSTStorageVPbkLocalStore::CreateTablesL()
 	{
-	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::CreateTablesL() begin" ) );
+	TRACER_AUTO;
 	CDbColSet* contactId = CDbColSet::NewLC();
 
 	AddColumnL( KContactId, EDbColInt32, contactId );
 
 	TInt err = iDb.CreateTable( KContactTable, *contactId );
-	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::CreateTablesL() err = %d" ),err );
+	TRACE( "err = %d" ,err );
 	User::LeaveIfError( err );
 
 	CleanupStack::PopAndDestroy( contactId );
-	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::CreateTablesL() end" ) );	
+	
 	}
 
 // -----------------------------------------------------------
@@ -856,10 +858,10 @@
 //
 void CVIMPSTStorageVPbkLocalStore::AddColumnL( const TDesC& aName, TDbColType aType, CDbColSet* aColset  )
 	{
-	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::AddColumnL() begin" ) );
+	TRACER_AUTO;
 	TDbCol column( aName, aType );
 	aColset->AddL( column );
-	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::AddColumnL() end" ) );
+	
 	}
 
 // -----------------------------------------------------------
@@ -868,12 +870,12 @@
 //
 void CVIMPSTStorageVPbkLocalStore::DoFreespaceLevelCheckL( TInt aSize )
 	{
-	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::DoFreespaceLevelCheckL() begin" ) );
+	TRACER_AUTO;
     if ( SysUtil::FFSSpaceBelowCriticalLevelL( &iFs, aSize ) )
         {
 		User::Leave( KErrDiskFull );
         }
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::DoFreespaceLevelCheckL() end" ) );
+    
 	}
 
 // -----------------------------------------------------------------------------
@@ -882,7 +884,7 @@
 //
 void CVIMPSTStorageVPbkLocalStore::DeleteAllContactFromInternalStoreL()
 	{
-	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::DeleteAllContactFromInternalStoreL() begin" ) );
+	TRACER_AUTO;
 	iColset->ColNo( KContactId );
 	iTable.LastL();	
 	while( !iTable.IsEmptyL() )
@@ -893,7 +895,7 @@
 		// delete alwasy first item untill table is empty
 		iTable.LastL();
 		}
-	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::DeleteAllContactFromInternalStoreL() end" ) );
+	
 	}
 // ----------------------------------------------------------
 // CVIMPSTStorageVPbkLocalStore::DeleteContactFromInternalStoreL
@@ -901,15 +903,15 @@
 //
 void CVIMPSTStorageVPbkLocalStore::DeleteContactFromInternalStoreL( TInt32& aIdentifier )
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::DeleteContactFromInternalStoreL() begin" ) );
+	TRACER_AUTO;
     TDbColNo colNo = iColset->ColNo( KContactId );
     if ( SeekRowL( colNo, aIdentifier ) )
         {
         iTable.DeleteL();
         iDb.Compact();
-        TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::DeleteContactFromInternalStoreL() found deleted" ) );
+        TRACE( "found deleted"  );
         }
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::DeleteContactFromInternalStoreL() end" ) );
+   
     }
  
 // ----------------------------------------------------------
@@ -918,7 +920,7 @@
 //
 void CVIMPSTStorageVPbkLocalStore::WriteToStoreDbL( TInt32& aIdentifier )
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::WriteToStoreDbL() begin" ) );
+	TRACER_AUTO;
     TDbColNo colNo = iColset->ColNo( KContactId );
     if (!SeekRowL( colNo, aIdentifier ) )        
         {
@@ -936,7 +938,7 @@
             iTable.Reset();
             } 
         }
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::WriteToStoreDbL() end" ) );    
+   
     }
 // ----------------------------------------------------------
 // CVIMPSTStorageVPbkLocalStore::OpenTableL
@@ -944,15 +946,15 @@
 //
 void CVIMPSTStorageVPbkLocalStore::OpenTableL()
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::OpenTableL() begin" ) );
+	TRACER_AUTO;
     TInt err( iTable.Open( iDb, KContactTable ) );
     if ( err != KErrNone )
         {
-        TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::OpenTableL() err =%d" ),err );
+        TRACE( " err =%d" ,err );
         iTable.Close();
         User::Leave( err );
         }
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::OpenTableL() end" ) );
+    
     }
 
 // ----------------------------------------------------------
@@ -961,9 +963,9 @@
 //
 void CVIMPSTStorageVPbkLocalStore::CloseTable()
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::CloseTable() begin" ) );
+	TRACER_AUTO;
     iTable.Close();
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::CloseTable() end" ) );
+   
     }
 
 // ----------------------------------------------------------
@@ -972,9 +974,9 @@
 //
 TInt CVIMPSTStorageVPbkLocalStore::ReadFirstL(  TInt32& aIdentifier )
     { 
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::ReadFirstL() begin" ) );   
+	TRACER_AUTO;
     iTable.BeginningL();
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::ReadFirstL() end" ) );
+    
     return ReadNextL( aIdentifier );
     }
 
@@ -984,7 +986,7 @@
 //
 TInt CVIMPSTStorageVPbkLocalStore::ReadNextL( TInt32& aIdentifier )
     { 
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::ReadNextL() begin" ) );
+	TRACER_AUTO;
     TInt err = KErrNotFound;   
     if ( iTable.NextL() )
         {
@@ -992,8 +994,8 @@
 		// For some reason ReadCurrentL leaves with KErrEof,
         // even if the contact was read succesfully.
         }
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::ReadNextL() err = %d" ),err );
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::ReadNextL() end" ) );
+    TRACE( " err = %d" ,err );
+   
     return err;
     }
 
@@ -1004,12 +1006,12 @@
 //
 void CVIMPSTStorageVPbkLocalStore::ReadCurrentL( TInt32& aIdentifier )
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::ReadCurrentL() begin" ) );
+	TRACER_AUTO;
     iTable.GetL();
 	 // Get Column number for contact data size
     TDbColNo colNo = iColset->ColNo( KContactId );
     aIdentifier = iTable.ColInt32(colNo);
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::ReadCurrentL() end" ) );
+   
     }
     
 // ----------------------------------------------------------
@@ -1018,7 +1020,7 @@
 //
 TBool CVIMPSTStorageVPbkLocalStore::SeekRowL( TDbColNo aColNo, TInt32& aIdentifier )
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::SeekRowL() begin" ) );
+	TRACER_AUTO;
     TBool ret = EFalse;
     iTable.BeginningL();
     while ( iTable.NextL() )
@@ -1030,7 +1032,7 @@
             break; 
             }
         }
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::SeekRowL() end" ) );
+   
     return ret;
     }
 // ----------------------------------------------------------
@@ -1038,7 +1040,7 @@
 // ----------------------------------------------------------
 void CVIMPSTStorageVPbkLocalStore::DeleteDatabaseL()
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::DeleteDatabaseL() begin" ) );
+	TRACER_AUTO;
     TBuf< KMaxPath > storagePath;
     storagePath.Append( KDbPath ); 
     iFs.MkDirAll( storagePath );   
@@ -1046,13 +1048,14 @@
     //close db before deleting it.
     CloseDb();
     iFs.Delete( storagePath );
-    TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::DeleteDatabaseL() end" ) );
+   
     }
 // ----------------------------------------------------------
 // CVIMPSTStorageVPbkLocalStore::IsSameContactIdL
 // ----------------------------------------------------------
 TBool CVIMPSTStorageVPbkLocalStore::IsSameContactIdL(const TDesC& aFirstId, const TDesC& aSecondId )
     {
+	TRACER_AUTO;
     TInt colIndex = aFirstId.Find(_L(":"));
     TPtrC firstId = aFirstId.Right( aFirstId.Length() - colIndex -1);
     colIndex = aSecondId.Find(_L(":"));
--- a/uiservicetab/vimpststorage/src/cvimpststoragevpbkserverstore.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpststorage/src/cvimpststoragevpbkserverstore.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -24,7 +24,7 @@
 
 #include <MVPbkContactView.h>
 #include <CVPbkContactIdConverter.h>
-#include "vimpstdebugtrace.h" 
+#include "uiservicetabtracer.h"
 #include "tvimpstconsts.h"
 #include "mvimpststorageserviceview.h"
 #include <CVPbkContactLinkArray.h>
@@ -43,7 +43,7 @@
     iServiceCacheWriter( aServiceCacheWriter ),
     iFetchStep( EFetchingUnknown )
     { 
-    TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::CVIMPSTStorageVPbkServerStore()" )); 
+	TRACER_AUTO;
     CActiveScheduler::Add( this );
     }
 
@@ -53,9 +53,9 @@
 //
 void CVIMPSTStorageVPbkServerStore::ConstructL( const TDesC& aContactDb, const TDesC& aServiceName)
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::ConstructL() begin" ));
+	TRACER_AUTO;
     iVPbkStoreHandler = CVIMPSTStorageVPbkStoreHandler::NewL( aContactDb,aServiceName, *this, EFalse );
-    TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::ConstructL() end"));
+    
     }
 
 // ---------------------------------------------------------------------------
@@ -67,12 +67,12 @@
     									 const TDesC& aServiceName,
     									MVIMPSTStorageServiceCacheWriter& aServiceCacheWriter )
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::NewL() begin" ));
+	TRACER_AUTO;
     CVIMPSTStorageVPbkServerStore* self = NewLC( aContactDb, 
     											 aServiceName, 
     											 aServiceCacheWriter );
     CleanupStack::Pop( self );
-    TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::NewL() end" ));
+   
     return self;
     
     }
@@ -86,12 +86,12 @@
     									const TDesC& aServiceName,
     									MVIMPSTStorageServiceCacheWriter& aServiceCacheWriter )
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::NewLC() begin" ));
+	TRACER_AUTO;
     CVIMPSTStorageVPbkServerStore* self =
         new (ELeave) CVIMPSTStorageVPbkServerStore(aServiceCacheWriter);
     CleanupStack::PushL( self );
     self->ConstructL( aContactDb,aServiceName );
-    TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::NewLC() end" ));
+    
     return self;    
     }
 
@@ -102,11 +102,11 @@
 //
 CVIMPSTStorageVPbkServerStore::~CVIMPSTStorageVPbkServerStore()
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::~CVIMPSTStorageVPbkServerStore() begin"));
+	TRACER_AUTO;
     iRetrivedXSPIdArray.ResetAndDestroy();
     TRAP_IGNORE( ResetAndDestroyLocalArrayL() );
     delete iVPbkStoreHandler;
-    TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::~CVIMPSTStorageVPbkServerStore() end"));
+    
     }
 
  // ---------------------------------------------------------------------------
@@ -115,7 +115,7 @@
 //
 void CVIMPSTStorageVPbkServerStore::ResetAndDestroyLocalArrayL()
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::ResetAndDestroyLocalArrayL() begin") );
+	TRACER_AUTO;
     TInt count = iFetchContactsToBeAdded.Count();
    	while( count )
 	   	{
@@ -130,7 +130,7 @@
         count = iFetchContactsToBeAdded.Count();
 	   	}
 	iFetchContactsToBeAdded.Reset();
-    TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::ResetAndDestroyLocalArrayL() end") );
+   
     }
 // ----------------------------------------------------------
 // CVIMPSTStorageVPbkServerStore::LocalStore
@@ -138,8 +138,7 @@
 //
 TBool CVIMPSTStorageVPbkServerStore::LocalStore() const 
 	{
-	TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::LocalStore Function begin") );
-	TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::LocalStore Function End") );
+	TRACER_AUTO;
 	return EFalse;	
 	}
 
@@ -149,26 +148,26 @@
 //
 void CVIMPSTStorageVPbkServerStore::HandleVPbkStoreEventL(TVIMPSTVPbkStoreEvent aVPbkStoreEvent) 
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::HandleVPbkStoreEventL() begin") );
+	TRACER_AUTO;
     switch( aVPbkStoreEvent.iEventType )
         {
         case EVPbkContactReadCompleted:
             {
-            TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::HandleVPbkStoreEventL() EVPbkContactReadCompleted started") );
+            TRACE( "EVPbkContactReadCompleted started" );
             iServiceCacheWriter.NotifyServiceViewL(TVIMPSTEnums::EStorageContactReadComplete);
             if( iFetchStep == EFetchingCalled )
                 {
-                TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::HandleVPbkStoreEventL() EVPbkContactReadCompleted fetcing in progress ") );
+                TRACE( "EVPbkContactReadCompleted fetcing in progress " );
                 IssueRequest();		
                 }
-            TRACE( T_LIT("iFetchStep set to state EContactReadComplete") );
+            TRACE( "iFetchStep set to state EContactReadComplete" );
             iFetchStep = EContactReadComplete;
-            TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::HandleVPbkStoreEventL completed")  );
+            TRACE( " completed"  );
             break;
             }
         case EVPbkContactReading:
             {
-            TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::HandleVPbkStoreEventL EVPbkContactReading started") );
+            TRACE(" EVPbkContactReading started");
              // a contact entry has been created in virtual database store
             // create the cache contact
             // fetched one by one contact from cdb file
@@ -179,13 +178,13 @@
                     aVPbkStoreEvent.iDisplayName ,
                     aVPbkStoreEvent.iAvatarContent,
                     TVIMPSTEnums::EStorageContactReading  );
-            TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::HandleVPbkStoreEventL EVPbkContactReading completed" ) );
+            TRACE( "EVPbkContactReading completed"  );
 		    break;	
 		    }
         case EVPbkContactFetching:
         case EVPbkContactAdded:
             {
-            TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::HandleVPbkStoreEventL EVPbkContactAdded or EVPbkContactFetching" ) );
+            TRACE( "EVPbkContactAdded or EVPbkContactFetching"  );
             TVIMPSTEnums::TVIMPSTStorgaeEventType event = TVIMPSTEnums::EStorageEventContactAddition;
             // a contact entry has been created in virtual database store
             // create the cache contact
@@ -202,15 +201,15 @@
                     event );
             if(iFetchStep == EFetchingOn)			
                 {
-                TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::HandleVPbkStoreEventL EVPbkContactAdded or EVPbkContactFetching fetchin on" ) );
+                TRACE( "EVPbkContactAdded or EVPbkContactFetching fetchin on"  );
                 IssueRequest();
                 }
-            TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::HandleVPbkStoreEventL EVPbkContactAdded or EVPbkContactFetching completed" ) );
+            TRACE( " EVPbkContactAdded or EVPbkContactFetching completed"  );
             break;	
             }
         case EVPbkContactSynchronizing:
             {
-            TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::HandleVPbkStoreEventL EVPbkContactSynchronizing " ) );
+            TRACE( "EVPbkContactSynchronizing "  );
             // a contact entry has been created in virtual database store
             // create the cache contact
             // fetched one by one contact from cdb file
@@ -220,29 +219,29 @@
                     aVPbkStoreEvent.iDisplayName ,
                     aVPbkStoreEvent.iAvatarContent,
                     TVIMPSTEnums::EStorageContactSynchronizing );
-            TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::HandleVPbkStoreEventL EVPbkContactSynchronizing(iFetchStep): %d " ), iFetchStep );
+            TRACE( "EVPbkContactSynchronizing(iFetchStep): %d " , iFetchStep );
             if(iFetchStep == EFetchingOn)          
                    {
-                   TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::HandleVPbkStoreEventL  EVPbkContactSynchronizing fetchin on" ) );
+                   TRACE( " EVPbkContactSynchronizing fetchin on"  );
                    IssueRequest();
                    }
-            TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::HandleVPbkStoreEventL EVPbkContactSynchronizing completed" ) );
+            TRACE( " EVPbkContactSynchronizing completed"  );
             break;
             }
         case EVPbkContactDeleted:
             {
-            TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::HandleVPbkStoreEventL EVPbkContactDeleted Event") );
+            TRACE( "EVPbkContactDeleted Event" );
             // a contact entry has been deleted from virtual database store
             // delete from cache contact
             // not Needed in case of server contact
             iServiceCacheWriter.RemoveContactFromCacheL(*aVPbkStoreEvent.iContactLink,
                     TVIMPSTEnums::EStorageEventContactDelete );
-            TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::HandleVPbkStoreEventL EVPbkContactDeleted Event done") );
+            TRACE( " EVPbkContactDeleted Event done" );
             break;	 
             }
         case EVPbkContactChanged:
             {
-            TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::HandleVPbkStoreEventL EVPbkContactChanged started") );
+            TRACE( " EVPbkContactChanged started" );
             // a contact entry has been updated to virtual database store
             // update to cache contact
             // not Needed in case of server contact
@@ -252,48 +251,48 @@
                     aVPbkStoreEvent.iAvatarContent);
             if(iFetchStep == EFetchingOn)         
                   {
-                  TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::HandleVPbkStoreEventL EVPbkContactAdded or EVPbkContactFetching fetchin on" ) );
+                  TRACE(" EVPbkContactAdded or EVPbkContactFetching fetchin on"  );
                   IssueRequest();
                   }
-            TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::HandleVPbkStoreEventL EVPbkContactChanged started") );
+            TRACE( " EVPbkContactChanged started" );
             break;	
             }
         case EVPbkContactRetriving:
             {
-            TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::HandleVPbkStoreEventL EVPbkContactRetriving started ") );
+            TRACE( " EVPbkContactRetriving started " );
             // ONLY VALID USER ID ALLOWED
             if( aVPbkStoreEvent.iUserId.Length() )
                 {
-                TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::HandleVPbkStoreEventL EVPbkContactRetriving valid id ") );
+                TRACE( "EVPbkContactRetriving valid id " );
                 HBufC* sxpId = aVPbkStoreEvent.iUserId.AllocL();
                 iRetrivedXSPIdArray.Append( sxpId ); // takes the ownership of retrivedContact
                 // keep the backup of retrieved contacts
                 // user can add later once it sent to server
                 }
-            TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::HandleVPbkStoreEventL EVPbkContactRetriving done") );
+            TRACE( " EVPbkContactRetriving done" );
             break;	
             }
         case EVPbkUnknownChanges:
             {
-            TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::HandleVPbkStoreEventL EVPbkUnknownChanges Event in") );
+            TRACE( " EVPbkUnknownChanges Event in" );
             // unknow mean all contact deleted from store
             // Not supported in case of server contact
             iServiceCacheWriter.RemoveAllCacheContactsL();
             if(iFetchStep == EFetchingCalled )
                 { 
-                TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::HandleVPbkStoreEventL EVPbkUnknownChanges fetching on") );               
+                TRACE( " EVPbkUnknownChanges fetching on" );               
                 IssueRequest();
                 }
-            TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::HandleVPbkStoreEventL EVPbkUnknownChanges Event done") );
+            TRACE( "EVPbkUnknownChanges Event done" );
             break;	
             }
         default:
             {
-            TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::HandleVPbkStoreEventL default") );
+            TRACE( "default" );
             break;
             }
         }
-    TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::HandleVPbkStoreEventL() End") );
+   
     }
 
 
@@ -303,15 +302,15 @@
 //
 void CVIMPSTStorageVPbkServerStore::IssueRequest()
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::IssueRequest() begin") );
+	TRACER_AUTO;
     if( !IsActive() )
         {
         TRequestStatus* status = &iStatus;
-        TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::IssueRequest() RequestComplete"));
+        TRACE( "RequestComplete");
         User::RequestComplete( status, KErrNone );
         SetActive();
         }
-    TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::IssueRequest() end") );
+   
     }
     
 // --------------------------------------------------------------------------
@@ -320,23 +319,23 @@
 //
 void CVIMPSTStorageVPbkServerStore::RunL()
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::RunL() begin") );
+	TRACER_AUTO;
     TInt count = iFetchContactsToBeAdded.Count();
-    TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::FetchContactsToBeAdded count = %d"),count );
+    TRACE( " count = %d",count );
     if( !count )
         {
-        TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::iFetchStep set to state EContactReadComplete") );
+        TRACE(" set to state EContactReadComplete" );
         iFetchStep = EContactReadComplete;
         iServiceCacheWriter.NotifyServiceViewL( TVIMPSTEnums::EStorageContactFetchComplete );
-        TRACE( T_LIT("calling NotifyFetchCompleteL") );
+        TRACE( "calling NotifyFetchCompleteL" );
         }
     else
         {
-        TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::iFetchStep set to state EFetchingOn") );
+        TRACE( " set to state EFetchingOn" );
         iFetchStep  = EFetchingOn;
         TVIMPSTContactInfo contactInfoToAdd = iFetchContactsToBeAdded[0];
         // pass the display NAme in place of NULL
-        TRACE( T_LIT("calling CreateVPbkContactL") );
+        TRACE( "calling CreateVPbkContactL" );
        	iVPbkStoreHandler->CreateVPbkContactL( *contactInfoToAdd.iUserId, *contactInfoToAdd.iDisplayName ); // process always 0th item	
 	    
 	    iFetchContactsToBeAdded.Remove( 0 );
@@ -347,7 +346,7 @@
         
         iFetchContactsToBeAdded.Compress();
         }
-    TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::RunL() end") );
+   
     }
 
 // --------------------------------------------------------------------------
@@ -356,8 +355,7 @@
 //
 void CVIMPSTStorageVPbkServerStore::DoCancel()
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::DoCancel begin") );
-    TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::DoCancel end") );
+	TRACER_AUTO;
     }
 
 // --------------------------------------------------------------------------
@@ -366,9 +364,9 @@
 //
 TInt CVIMPSTStorageVPbkServerStore::RunError( TInt aError )
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::RunError begin") );
-    TRACE( T_LIT("error code = %d"), aError );
-    TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::RunError end") );
+	TRACER_AUTO;
+    TRACE( "error code = %d", aError );
+   
     return aError;    
     }
 
@@ -381,7 +379,7 @@
         						 					   const TDesC& aDisplayName,
         						 					   TBool /*aInvitationAutoAccept = EFalse */ )   
 	{
-	TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::CreateVPbkContactL() begin") );	
+	TRACER_AUTO;
     return iVPbkStoreHandler->CreateVPbkContactL( aUserId ,aDisplayName );
 	}
 
@@ -394,14 +392,14 @@
      {
      // in case of server case we delete all contacts and then add fetch contacts
      // in case of server contacts delete all contacts
-     TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::AddVPbkFetchContactsL() begin") );  
+	 TRACER_AUTO;
      TInt oldContactCount = RemoveAllVPbkContactsL();
-     TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::AddVPbkFetchContactsL() oldContactCount = %d"), oldContactCount ); 
+     TRACE( " oldContactCount = %d", oldContactCount ); 
      ResetAndDestroyLocalArrayL();
      TInt fetchContactCount = aServiceField.Count();
      for( TInt i = 0; i<fetchContactCount; i++ )
          {
-         TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::FetchContactsToBeAdded Append = %d"),i );
+         TRACE( " Append = %d",i );
          TVIMPSTContactInfo contactInf =
 							         {
 							         aServiceField[i].AllocL() ,
@@ -409,18 +407,18 @@
 							         };
          iFetchContactsToBeAdded.Append( contactInf );
          }
-     TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::AddVPbkFetchContactsL() iFetchStep = %d"), iFetchStep ); 
+     TRACE( "iFetchStep = %d", iFetchStep ); 
      if( iFetchStep == EContactReadComplete || !oldContactCount)
 	     {
-	     TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::AddVPbkFetchContactsL() inside if") );
+	     TRACE( "inside if" );
 	     IssueRequest();	
 	     }
 	 else
 		 {
-         TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::iFetchStep set to state EFetchingCalled") );
+         TRACE( " set to state EFetchingCalled" );
 		 iFetchStep = EFetchingCalled;	
 		 }
-     TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::AddVPbkFetchContactsL() end") );  
+    
 	 }
 // ---------------------------------------------------------------------------
 // CVIMPSTStorageVPbkServerStore::RemoveVPbkContactL
@@ -428,7 +426,7 @@
 //  
 TInt CVIMPSTStorageVPbkServerStore::RemoveVPbkContactL(const MVPbkContactLink& aContactLink) 
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::RemoveVPbkContactL() begin") );  
+	TRACER_AUTO;;  
     // text now holds the name (or first field of the contact) 
     CVPbkContactLinkArray* contactsToDelete = CVPbkContactLinkArray::NewLC();
     MVPbkContactLink* link = aContactLink.CloneLC();    
@@ -436,8 +434,8 @@
     CleanupStack::Pop(); // link
     TInt error = iVPbkStoreHandler->RemoveVPbkContactL( *contactsToDelete );
     CleanupStack::PopAndDestroy(); // contactsToDelete
-    TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::returned error code = %d"), error );
-    TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::RemoveVPbkContactL() end") ); 
+    TRACE( " error code = %d", error );
+   
     return error;
     }
  
@@ -447,7 +445,7 @@
 // 
 TInt CVIMPSTStorageVPbkServerStore::RemoveAllVPbkContactsL() 
 	{
-	TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::RemoveAllVPbkContactsL() begin") );
+	TRACER_AUTO;
 	iRetrivedXSPIdArray.ResetAndDestroy();
 	return iVPbkStoreHandler->RemoveAllVPbkContactsL();
 	}
@@ -457,11 +455,11 @@
 //  
 TInt CVIMPSTStorageVPbkServerStore::RetrieveVPbkXSPIdL(const TDesC8& aPackedLinks ) 
 	{
-	TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::RetrieveVPbkContactL() begin") );
+	TRACER_AUTO;
 	iRetrivedXSPIdArray.ResetAndDestroy();
-	TRACE( T_LIT("CVIMPSTStorageVPbkLocalStore::RetrieveVPbkXSPIdL() iRetrivedXSPIdArray Reset" ) );
+	TRACE( " iRetrivedXSPIdArray Reset"  );
 	iVPbkStoreHandler->RetrieveVPbkContactL( aPackedLinks );
-	TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::RetrieveVPbkContactL() end") );
+	
     return iRetrivedXSPIdArray.Count();
 	}
  
@@ -471,7 +469,7 @@
 //  
 const TDesC& CVIMPSTStorageVPbkServerStore::GetRetrieveVPbkXSPIdL(TInt aIndex ) 
 	{
-	TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::RetrieveVPbkXSPIdL() begin") );
+	TRACER_AUTO;
 	HBufC* contactId = NULL;
 	if( aIndex >= 0 && aIndex < iRetrivedXSPIdArray.Count() )
         {
@@ -479,10 +477,10 @@
         }
     if( contactId  )
 	    {
-		TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::RetrieveVPbkXSPIdL() end") );
+		TRACE( "RetrieveVPbkXSPIdL() end");
 	    return 	*contactId;
 	    }
-	TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::RetrieveVPbkXSPIdL() end") );
+	
     return KNullDesC ; 
     }
  // ---------------------------------------------------------------------------
@@ -491,7 +489,7 @@
 // 
 TInt CVIMPSTStorageVPbkServerStore::CreateRetriveVPbkContactL( TInt /*aIndexToUse*/ )   
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::CreateRetriveVPbkContactL()") );
+	TRACER_AUTO;
     // Not applicable for server store
     return KErrNotSupported;
     }
@@ -501,7 +499,7 @@
 // 
 TInt CVIMPSTStorageVPbkServerStore::deleteRetriveVPbkContactL( TInt /*aIndexToUse*/ )   
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::deleteRetriveVPbkContactL()") );
+	TRACER_AUTO;
     // Not applicable for server store
     return KErrNotSupported;
     }
@@ -511,7 +509,7 @@
 TInt CVIMPSTStorageVPbkServerStore::UpdateAvatarFieldDataL(const MVPbkContactLink& aContactLink,
 														  const TDesC8& aAvatartData )
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::UpdateAvatarFieldDataL() ") );
+	TRACER_AUTO;
     return iVPbkStoreHandler->UpdateAvatarFieldDataL( aContactLink, aAvatartData );
     }
 
@@ -521,7 +519,7 @@
 //
 TInt CVIMPSTStorageVPbkServerStore::RemoveAvatarFieldL(MVPbkStoreContact& aStoreContact)
 	{
-	TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::RemoveAvatarFieldL()") );
+	TRACER_AUTO;
 	return iVPbkStoreHandler->RemoveAvatarFieldL( aStoreContact );	
 	}
 
@@ -530,9 +528,9 @@
 // ----------------------------------------------------------
 void CVIMPSTStorageVPbkServerStore::DeleteDatabaseL()
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::DeleteDatabaseL begin") );
+	TRACER_AUTO;
    	// TODO : Not supported yet
-    TRACE( T_LIT("CVIMPSTStorageVPbkServerStore::DeleteDatabaseL end") );
+   
     }
 // End of file
 
--- a/uiservicetab/vimpststorage/src/cvimpststoragevpbkstorehandler.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpststorage/src/cvimpststoragevpbkstorehandler.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -49,7 +49,7 @@
 #include <CPbk2SortOrderManager.h>
 #include <MVPbkContactFieldBinaryData.h>
 
-#include "vimpstdebugtrace.h" 
+#include "uiservicetabtracer.h"
 #include "tvimpstconsts.h"
 #include <cntdb.h>
 
@@ -67,7 +67,7 @@
 	iFetcingIndex( 0 ),
 	iLocalStore( aLocalStore )
 	{
-	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::CVIMPSTStorageVPbkStoreHandler()") );
+	TRACER_AUTO;
     CActiveScheduler::Add( this );
     }
 
@@ -77,7 +77,7 @@
 //
 void CVIMPSTStorageVPbkStoreHandler::ConstructL(const TDesC& aStoreName,const TDesC& aServiceName )
     { 
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::ConstructL() begin") );
+	TRACER_AUTO;
     iAddIdInProgress = NULL;
     iStoreName = aStoreName.AllocL();
     iServiceName = aServiceName.AllocL();
@@ -85,17 +85,17 @@
     uriArray->AppendL( TVPbkContactStoreUriPtr( aStoreName ) );    
     if( !uriArray->IsIncluded( TVPbkContactStoreUriPtr( KPhoneBookDbURI ) ) )
 	    {
-	    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::ConstructL() phonebook store apended") );
+	    TRACE( "phonebook store apended" );
 	    uriArray->AppendL( TVPbkContactStoreUriPtr( KPhoneBookDbURI )   );	
 	    }
     iContactManager = CVPbkContactManager::NewL( *uriArray, NULL );
     CleanupStack::PopAndDestroy( uriArray );
-	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::ConstructL() iContactManager created") );
+	TRACE( "iContactManager created" );
     iStores = &iContactManager->ContactStoresL();
     iStores->OpenAllL( *this );
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::ConstructL() OpenAllL called") );
+    TRACE( " OpenAllL called" );
     iSortOrderManager = CPbk2SortOrderManager::NewL( iContactManager->FieldTypes(), NULL ); 
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::ConstructL() end") );
+   
     }
 
 // ---------------------------------------------------------------------------
@@ -107,10 +107,10 @@
 													                MVIMPSTStorageVPbkStoreHandler& aStoreHandler,
 													                TBool aLocalStore  )
 	{
-	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::NewL begin") );
+	TRACER_AUTO;
 	CVIMPSTStorageVPbkStoreHandler* self = NewLC( aContactDb ,aServiceName, aStoreHandler,aLocalStore );
 	CleanupStack::Pop( self );
-	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::NewL end") );
+	
 	return self;
 	}
 
@@ -123,12 +123,12 @@
 																	MVIMPSTStorageVPbkStoreHandler& aStoreHandler,
 																	TBool aLocalStore   )
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::NewLC begin") );
+	TRACER_AUTO;
     CVIMPSTStorageVPbkStoreHandler* self =
         new (ELeave) CVIMPSTStorageVPbkStoreHandler( aStoreHandler ,aLocalStore );
     CleanupStack::PushL( self );
     self->ConstructL( aContactDb,aServiceName );
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::NewLC end") );
+   
     return self;
     }
 
@@ -139,7 +139,7 @@
 //
 CVIMPSTStorageVPbkStoreHandler:: ~CVIMPSTStorageVPbkStoreHandler()
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::~CVIMPSTStorageVPbkStoreHandler begin") );
+	TRACER_AUTO;
     if( iWait.IsStarted() )
 	    {
 	    iWait.AsyncStop();	
@@ -155,13 +155,13 @@
     if ( iContactManager )
         {
         TRAP_IGNORE( iContactManager->ContactStoresL().CloseAll( *this ) );
-        TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::~CVIMPSTStorageVPbkStoreHandler CloseAll called") );
+        TRACE( "CloseAll called" );
         delete iContactManager;
         }
     delete iStoreName;
     delete iSortOrderManager;
     delete iServiceName;
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::~CVIMPSTStorageVPbkStoreHandler end") );
+   
     }
  // ---------------------------------------------------------------------------
 // CVIMPSTStorageVPbkStoreHandler::ContactViewReady
@@ -170,13 +170,13 @@
 void CVIMPSTStorageVPbkStoreHandler::ContactViewReady( 
     MVPbkContactViewBase& aView )
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::ContactViewReady() begin") );
+	TRACER_AUTO;
     if ( iContactView == &aView && ( iStoreEventType == EVPbkUnknownEvent ) )
         { 
         iStoreEventType = EVPbkContactReading ;          
         TRAP_IGNORE( HandleContactViewReadyL( *iContactView ) );
         }
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::ContactViewReady() end") );
+   
     }
 
 // ---------------------------------------------------------------------------
@@ -186,8 +186,7 @@
 void CVIMPSTStorageVPbkStoreHandler::ContactViewUnavailable( 
     MVPbkContactViewBase& /*aView*/ )
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::ContactViewUnavailable begin") );
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::ContactViewUnavailable end"));
+	TRACER_AUTO;
     }
 
 // ---------------------------------------------------------------------------
@@ -198,8 +197,7 @@
     MVPbkContactViewBase& /*aView*/, 
     TInt /*aIndex*/, const MVPbkContactLink& /*aContactLink*/ )
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::ContactAddedToView begin"));
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::ContactAddedToView End "));
+	TRACER_AUTO;
     }
 
 // ---------------------------------------------------------------------------
@@ -210,8 +208,7 @@
     MVPbkContactViewBase& /*aView*/, 
     TInt /*aIndex*/, const MVPbkContactLink& /*aContactLink*/ )
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::ContactRemovedFromView begin") );
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::ContactRemovedFromView End"));
+	TRACER_AUTO;
     }
 
 // ---------------------------------------------------------------------------
@@ -222,8 +219,7 @@
     MVPbkContactViewBase& /*aView*/, 
     TInt /*aError*/, TBool /*aErrorNotified*/ )
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::ContactViewError() begin") );
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::ContactViewError() end"));
+	TRACER_AUTO;
     }
 
 // ---------------------------------------------------------------------------
@@ -233,8 +229,7 @@
 void CVIMPSTStorageVPbkStoreHandler::StoreReady( 
     MVPbkContactStore& /*aContactStore*/ )
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::StoreReady() begin"));
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::StoreReady() end") );
+	TRACER_AUTO;
     }
     
 // ---------------------------------------------------------------------------
@@ -245,8 +240,7 @@
     MVPbkContactStore& /*aContactStore*/, 
     TInt /*aReason*/ )
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::StoreUnavailable() begin") );
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::StoreUnavailable() end"));
+	TRACER_AUTO;
     }
 
 // ---------------------------------------------------------------------------
@@ -255,7 +249,7 @@
 //
 MVPbkContactStore* CVIMPSTStorageVPbkStoreHandler::GetDefaultStoreL( const TDesC& aUri )
 	 {
-	 TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::GetDefaultStoreL() "));
+	TRACER_AUTO;
 	 return iStores->Find( TVPbkContactStoreUriPtr( aUri ) );	
 	 }
 
@@ -267,27 +261,27 @@
     MVPbkContactStore& aContactStore , 
     TVPbkContactStoreEvent aStoreEvent )
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::HandleStoreEventL() begin") );
+	TRACER_AUTO;
     if( iStore == &aContactStore )
 	    {
-	    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::HandleStoreEventL() store event") );
+	    TRACE( "store event" );
 	  	switch( aStoreEvent.iEventType )
 		    {
 		    case TVPbkContactStoreEvent::EContactAdded:
 			    {
-			    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::HandleStoreEventL() EContactAdded event") );
+			    TRACE( "EContactAdded event");
 			    delete iContactLink;
 			    iContactLink = NULL;
 				MVPbkContactLink* contactLink = aStoreEvent.iContactLink->CloneLC();
 			 	iContactLink = 	contactLink;
 				CleanupStack::Pop(); // contactLink
 				IssueRequest(); // complete the request	
-				TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::HandleStoreEventL() EContactAdded done") );
+				TRACE( " EContactAdded done" );
 			    break;	
 			    }
 			case TVPbkContactStoreEvent::EContactDeleted:
 			    {
-			    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::HandleStoreEventL() EContactDeleted event") );
+			    TRACE( "EContactDeleted event" );
 			   	MVPbkContactLink* contactLink = aStoreEvent.iContactLink->CloneLC();
 			   	delete iContactLink;
 		    	iContactLink = NULL;
@@ -295,12 +289,12 @@
 		 		CleanupStack::Pop(); // contactLink
 				TVIMPSTVPbkStoreEvent storeEvent(EVPbkContactDeleted, iContactLink );
 		    	iStoreHandler.HandleVPbkStoreEventL( storeEvent ) ;	
-		    	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::HandleStoreEventL() EContactDeleted done") );
+		    	TRACE( "EContactDeleted done" );
 			    break;	
 			    }
 			case TVPbkContactStoreEvent::EContactChanged:
 				{
-				TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::HandleStoreEventL() EContactChanged event") );
+				TRACE( " EContactChanged event" );
 				delete iContactLink;
 				iContactLink = NULL;
 				MVPbkContactLink* contactLink = aStoreEvent.iContactLink->CloneLC();
@@ -308,23 +302,23 @@
 				CleanupStack::Pop(); // contactLink
 				iStoreEventType = EVPbkContactChanged;
 				IssueRequest(); // complete the request which will begin retriving the iContactLink
-				TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::HandleStoreEventL() EContactChanged done") );
+				TRACE("EContactChanged done");
 				break;	
 				}
 			case TVPbkContactStoreEvent::EUnknownChanges:
 			    {
-			    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::HandleStoreEventL() EUnknownChanges event") );
+			    TRACE( " EUnknownChanges event" );
 			    iStoreEventType = EVPbkUnknownChanges;
 			    TVIMPSTVPbkStoreEvent storeEvent(iStoreEventType);
 			    iStoreHandler.HandleVPbkStoreEventL( storeEvent ) ;
-			    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::HandleStoreEventL() EUnknownChanges done") );
+			    TRACE( "EUnknownChanges done" );
 			    break;	
 			    }
 		    default:
 			 	break;
 		    }
 	    }
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::HandleStoreEventL() end") ); 
+   
     }
 // ---------------------------------------------------------------------------
 // CVIMPSTStorageVPbkStoreHandler::OpenComplete
@@ -332,10 +326,10 @@
 //
 void CVIMPSTStorageVPbkStoreHandler::OpenComplete()
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::OpenComplete() begin") );
+	TRACER_AUTO;
     // stores OpenAll completed
     TRAP_IGNORE( DoHnadleOpenCompleteL() );
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::OpenComplete() end"));
+   
     }
 
 // ---------------------------------------------------------------------------
@@ -344,7 +338,7 @@
 //
 void CVIMPSTStorageVPbkStoreHandler::DoHnadleOpenCompleteL()
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::DoHnadleOpenCompleteL() begin") );
+	TRACER_AUTO;
     iStore = GetDefaultStoreL( *iStoreName ) ;
     CVPbkContactViewDefinition* viewDefinition = 
         				CVPbkContactViewDefinition::NewL();
@@ -353,17 +347,17 @@
     viewDefinition->SetUriL( *iStoreName );
     if ( iStore )
         {
-        TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::DoHnadleOpenCompleteL() store view creating"));
+        TRACE( "store view creating");
         MVPbkContactView* tmpView = iStore->CreateViewLC(
 						            *viewDefinition,
 						            *this,
 						            iSortOrderManager->SortOrder() );        
         CleanupStack::Pop(); // tmpView            
-        TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::DoHnadleOpenCompleteL() store view created"));        
+        TRACE( "store view created");        
         iContactView = tmpView;
         }
     CleanupStack::PopAndDestroy();  //viewDefinition, can not pop ny name
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::DoHnadleOpenCompleteL() end"));
+    
     }
 	
 // ---------------------------------------------------------------------------
@@ -373,7 +367,7 @@
 void CVIMPSTStorageVPbkStoreHandler::ContactOperationCompleted(
     TContactOpResult /*aResult*/ )
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::ContactOperationCompleted() begin"));
+	TRACER_AUTO;
     // called when contact commit is successful
     iOperationError = KErrNone;
     if( iWait.IsStarted() )
@@ -381,7 +375,7 @@
 	    iWait.AsyncStop();	
 	    }
     TRAP_IGNORE( CommitNextPendingContactsL() );
-	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::ContactOperationCompleted() end"));
+	
 	}
 
 // ---------------------------------------------------------------------------
@@ -391,7 +385,7 @@
 void CVIMPSTStorageVPbkStoreHandler::ContactOperationFailed( 
     TContactOp /*aOpCode*/, TInt aErrorCode, TBool /*aErrorNotified*/ )
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::ContactOperationFailed() begin"));
+	TRACER_AUTO;
     // called when contact commit is unsuccessful
     iOperationError = aErrorCode;
     if( iWait.IsStarted() )
@@ -399,7 +393,7 @@
 	    iWait.AsyncStop();	
 	    }
     TRAP_IGNORE( CommitNextPendingContactsL() );
-	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::ContactOperationFailed() end"));
+	
     }    
  
  
@@ -411,10 +405,10 @@
         MVPbkContactOperationBase& /*aOperation*/,
         TInt /*aStepSize*/ )
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::StepComplete() begin"));
+	TRACER_AUTO;
     // called when batch operation call
     iOperationError = KErrNone;
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::StepComplete() end"));
+    
     }
 
 
@@ -427,10 +421,10 @@
         TInt /*aStepSize*/,
         TInt aError )
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::StepFailed() begin"));
+	TRACER_AUTO;
     // called when batch operation call
     iOperationError = aError;
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::StepFailed() end"));
+   
    	return EFalse;
     }
 
@@ -441,7 +435,7 @@
 void CVIMPSTStorageVPbkStoreHandler::OperationComplete(
         MVPbkContactOperationBase& aOperation )
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::OperationComplete() begin"));
+	TRACER_AUTO;
     // called when batch operation call for opening the multiple store
     if ( &aOperation == iContactOperation )
         {
@@ -453,7 +447,7 @@
 	    {
 	    iWait.AsyncStop();	
 	    }
-	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::OperationComplete() end"));
+	
     }   
 
 //----------------------------------------------------------------------
@@ -462,10 +456,10 @@
 void CVIMPSTStorageVPbkStoreHandler::VPbkSingleContactOperationComplete( MVPbkContactOperationBase& aOperation,
                                             				MVPbkStoreContact* aContact )
     {  
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::VPbkSingleContactOperationComplete() begin")); 
+	TRACER_AUTO;
     // called when contact details is retrived
     TRAP_IGNORE( DoHnadleSingleContactOperationCompleteL( aOperation, aContact ) );
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::VPbkSingleContactOperationComplete() end"));
+    
     }
 
 //----------------------------------------------------------------------
@@ -474,8 +468,8 @@
 void CVIMPSTStorageVPbkStoreHandler::DoHnadleSingleContactOperationCompleteL( MVPbkContactOperationBase& aOperation,
                                             								 MVPbkStoreContact* aContact )
     {  
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::DoHnadleSingleContactOperationCompleteL() begin"));
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::DoHnadleSingleContactOperationCompleteL() StoreEventType: %d"),iStoreEventType);
+	TRACER_AUTO;
+    TRACE( "StoreEventType: %d",iStoreEventType);
     // called when contact details is retrived
     if( iStoreContact )
         {
@@ -485,28 +479,28 @@
     iStoreContact = aContact ; // iStoreContact  owns thea Contact
     if( ( &aOperation == iContactOperation) && iStoreContact )
         {
-        TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::DoHnadleSingleContactOperationCompleteL() inside if (operation) "));
+        TRACE( "inside if (operation) ");
         if( iWait.IsStarted() )
 		    {
 		    iWait.AsyncStop();
 		    }
         delete iContactOperation;
         iContactOperation = NULL;
-        TRACE( T_LIT("DoHnadleSingleContactOperationCompleteL() before iCommitOperationInProgress: %d"),iCommitOperationInProgress);
+        TRACE( " before iCommitOperationInProgress: %d",iCommitOperationInProgress);
         iCommitOperationInProgress = EFalse;
-        TRACE( T_LIT("DoHnadleSingleContactOperationCompleteL()After iCommitOperationInProgress: %d"),iCommitOperationInProgress);
+        TRACE( "After iCommitOperationInProgress: %d",iCommitOperationInProgress);
 
         if( iStoreEventType != EVPbkUpdatingAvatar )
             {
-            TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::DoHnadleSingleContactOperationCompleteL() inside if (iStoreEventType != EVPbkUpdatingAvatar ) "));
+            TRACE( " inside if (iStoreEventType != EVPbkUpdatingAvatar ) ");
             if( !iLocalStore && iStoreEventType == EVPbkContactRetriving )
                 {
-                TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::DoHnadleSingleContactOperationCompleteL() EVPbkContactRetriving"));
+                TRACE( " EVPbkContactRetriving");
 		    	RetriveFieldDataAndSendEventL( *iStoreContact );
 			   }
             else 
                 {
-                TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::DoHnadleSingleContactOperationCompleteL() inside else start"));
+                TRACE( "inside else start");
                 HBufC* userId = GetContactFieldDataLC( *iStoreContact, R_VPBK_FIELD_TYPE_IMPP );
                 HBufC* firstname = GetContactFieldDataLC( *iStoreContact,R_VPBK_FIELD_TYPE_FIRSTNAME );
                 HBufC* lastname = GetContactFieldDataLC( *iStoreContact,R_VPBK_FIELD_TYPE_LASTNAME );
@@ -535,9 +529,9 @@
                     disname = KNullDesC().AllocLC();
                     }
                 HBufC8* avatarContent = GetContactBinaryFieldDataLC( *iStoreContact,R_VPBK_FIELD_TYPE_THUMBNAILPIC );
-                TRACE( T_LIT("DoHnadleSingleContactOperationCompleteL()  iStoreHandler.HandleVPbkStoreEventL: %d"), iStoreEventType);
+                TRACE( "iStoreHandler.HandleVPbkStoreEventL: %d", iStoreEventType);
                 TPtr useridPtr = userId->Des();
-                TRACE( T_LIT("DoHnadleSingleContactOperationCompleteL()  inside else UserId : %S"), &useridPtr);
+                TRACE( "inside else UserId : %S", &useridPtr);
                 TVIMPSTVPbkStoreEvent storeEvent(iStoreEventType,
                         iContactLink,
                         NULL,
@@ -546,7 +540,7 @@
                         *avatarContent);
                 iStoreHandler.HandleVPbkStoreEventL( storeEvent ) ;
                 CleanupStack::PopAndDestroy(5); // disname,lastname,firstname,userId,avatarContent 
-                TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::DoHnadleSingleContactOperationCompleteL() inside else end"));
+                TRACE( " inside else end");
                 }
             delete iAddIdInProgress;
             iAddIdInProgress = NULL;
@@ -555,16 +549,16 @@
         iOperationError = KErrNone;
         if( iStoreEventType == EVPbkContactReading && iContactView )
             {
-            TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::DoHnadleSingleContactOperationCompleteL() if after iOperationError"));
+            TRACE( " if after iOperationError");
             HandleContactViewReadyL( *iContactView );   
             }
         
         else if(!iCommitOperationInProgress )
             {
-            TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::DoHnadleSingleContactOperationCompleteL() else if after if after iOperationError"));
+            TRACE( "else if after if after iOperationError");
             CommitNextPendingContactsL();// commit only if any pending contact
             }
-        TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::DoHnadleSingleContactOperationCompleteL() end"));
+       
         }
     }
 //----------------------------------------------------------------------
@@ -573,7 +567,7 @@
 void CVIMPSTStorageVPbkStoreHandler::VPbkSingleContactOperationFailed( MVPbkContactOperationBase& aOperation,
                                                                    TInt aError)
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::VPbkSingleContactOperationFailed() begin"));
+	TRACER_AUTO;
 	if( &aOperation == iContactOperation )
         {
         delete iContactOperation;
@@ -586,7 +580,7 @@
 	    iWait.AsyncStop();	
 	    }
     TRAP_IGNORE( CommitNextPendingContactsL() );// commit only if any pending contact
-	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::VPbkSingleContactOperationFailed() begin"));
+	
     }
 // --------------------------------------------------------------------------
 // CVIMPSTStorageVPbkStoreHandler::HandleContactViewReadyL
@@ -594,19 +588,19 @@
 //
 void CVIMPSTStorageVPbkStoreHandler::HandleContactViewReadyL( MVPbkContactViewBase& aView  )
 	{
-	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::HandleContactViewReadyL() begin"));
+	TRACER_AUTO;
 	TInt contactCount = aView.ContactCountL();
-	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::HandleContactViewReadyL() begin"));
+	TRACE( "begin");
 	if( contactCount == iFetcingIndex  && iStoreEventType == EVPbkContactReading )
 		{
-		TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::HandleContactViewReadyL() reading completed") );
+		TRACE( "reading completed" );
 		iStoreEventType = EVPbkContactReadCompleted;
 		TVIMPSTVPbkStoreEvent storeEvent(iStoreEventType);
 		iStoreHandler.HandleVPbkStoreEventL( storeEvent ) ;
 		}
 	else if( iFetcingIndex < contactCount && iFetcingIndex>=0 )
 		{
-		TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::HandleContactViewReadyL() reading"));
+		TRACE( " reading");
 		const MVPbkViewContact& contact =  aView.ContactAtL( iFetcingIndex );
 		MVPbkContactLink* contactLink = contact.CreateLinkLC();
 		delete iContactLink;
@@ -616,7 +610,7 @@
 		IssueRequest();
 		iFetcingIndex++;
 		}
-	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::HandleContactViewReadyL() end"));
+	
 	}
 // --------------------------------------------------------------------------
 // CVIMPSTStorageVPbkStoreHandler::IssueRequest
@@ -624,14 +618,14 @@
 //
 void CVIMPSTStorageVPbkStoreHandler::IssueRequest()
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::IssueRequest() begin"));
+	TRACER_AUTO;
     if( !IsActive() )
 	    {
 	    TRequestStatus* status = &iStatus;
 	    User::RequestComplete( status, KErrNone );
 	    SetActive();
 	    }
-	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::IssueRequest() end"));
+	
     }
 	
 // --------------------------------------------------------------------------
@@ -640,14 +634,14 @@
 //
 void CVIMPSTStorageVPbkStoreHandler::RunL()
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::RunL() begin") );
+	TRACER_AUTO;
     if( iContactLink )
 	    {
 	    delete iContactOperation;
 	    iContactOperation = NULL;
 	    iContactOperation = iContactManager->RetrieveContactL( *iContactLink, *this );	
 	    }
-	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::RunL() end"));
+	
     }
 
 // --------------------------------------------------------------------------
@@ -656,8 +650,7 @@
 //
 void CVIMPSTStorageVPbkStoreHandler::DoCancel()
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::DoCancel() begin") );
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::DoCancel() end") );
+	TRACER_AUTO;
     }
 
 // --------------------------------------------------------------------------
@@ -666,7 +659,7 @@
 //
 TInt CVIMPSTStorageVPbkStoreHandler::RunError( TInt aError )
     {  
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::RunError()") );  
+	TRACER_AUTO;
     return aError;
     }
 
@@ -678,17 +671,17 @@
 TInt CVIMPSTStorageVPbkStoreHandler::CreateVPbkContactL(const TDesC& aUserId, 
         						 						const TDesC& aDisplayName )   
 	{
-	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::CreateVPbkContactL() begin") );
-	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::CreateVPbkContactL() aUserId = %S"), &aUserId );
+	TRACER_AUTO;
+	TRACE( "aUserId = %S", &aUserId );
 	
 	if( iAddIdInProgress && iAddIdInProgress->Compare( aUserId ) == 0 )
 		{
 		TPtr iAddIdInProgressPtr = iAddIdInProgress->Des();
-		TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::CreateVPbkContactL() iAddIdInProgressPtr = %S"), &iAddIdInProgressPtr );
-		TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::CreateVPbkContactL() already Adding") );
+		TRACE("iAddIdInProgressPtr = %S", &iAddIdInProgressPtr );
+		TRACE("already Adding" );
 		return KErrAlreadyExists;	
 		}
-	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::CreateVPbkContactL() After If") );
+	TRACE( "After If" );
 	delete iAddIdInProgress;
 	iAddIdInProgress = NULL;
 	iAddIdInProgress = aUserId.AllocL();
@@ -702,7 +695,7 @@
 			}
 		if(aUserId.Length()!= 0)
 			{
-			TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::CreateVPbkContactL() valid xsp Id") );
+			TRACE( " valid xsp Id" );
 			TInt prefixLocation = aUserId.Locate( ':' );
 			const MVPbkContactStoreProperties& storeProperties =  storedContact->ParentStore().StoreProperties();
 			const MVPbkFieldTypeList& supportedFieldTypes = storeProperties.SupportedFields();
@@ -713,7 +706,7 @@
 				const MVPbkFieldType* fieldType = &(supportedFieldTypes.FieldTypeAt(index));
 				if ( fieldType && ( fieldType->FieldTypeResId() == R_VPBK_FIELD_TYPE_IMPP ))
 					{
-					TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::CreateVPbkContactL() XSP Id-IMMP field creating") );
+					TRACE(" XSP Id-IMMP field creating" );
 					MVPbkStoreContactField* fielduri = storedContact->CreateFieldLC(*fieldType);  //2
 					// Check for prefix and remove if found
 					//append the internettelephoney field.
@@ -742,12 +735,12 @@
 						{
 						CleanupStack::PopAndDestroy(); //2 fielduri 	
 						}
-					TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::CreateVPbkContactL() XSP Id-IMMP field created") );
+					TRACE( " XSP Id-IMMP field created" );
 					}//end of if
 				else if ( fieldType &&  
 					( fieldType->FieldTypeResId() == R_VPBK_FIELD_TYPE_FIRSTNAME ))
 					{
-					TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::CreateVPbkContactL() first name field creating") );
+					TRACE( " first name field creating" );
 					HBufC* firstName = NULL;
 					
 					// if there is no display name then allocate hte user id as displayname.
@@ -784,38 +777,38 @@
 						CleanupStack::PopAndDestroy(firstName); // 3
 						}//End if (firstName)
 
-					TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::CreateVPbkContactL() first name field created") );                    
+					TRACE( "first name field created" );                    
 					}//end of if.
 				}//end of for.
-			TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::CreateVPbkContactL() iCommitOperationInProgress = %d"),iCommitOperationInProgress );
+			TRACE( "iCommitOperationInProgress = %d",iCommitOperationInProgress );
 			if( iCommitOperationInProgress )
 			    {
-			    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::CreateVPbkContactL() inside if") );
+			    TRACE("inside if" );
 			    iUnCommittedVPbkContacts.AppendL( storedContact ); //takes ownership
 			    CleanupStack::Pop(); //storedContact
 			    }
 			else
 			    {
-			    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::CreateVPbkContactL() inside else") );
+			    TRACE( "inside else");
 			    iCommitOperationInProgress = ETrue;
 			    if(iStoreContact)
 			        {
 			        delete iStoreContact;
 			        iStoreContact = NULL;
 			        }
-			    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::CreateVPbkContactL() contact fields added") );
+			    TRACE( "contact fields added" );
 			    iStoreContact = storedContact;
 			    CleanupStack::Pop(); //storedContact
 			    iStoreContact->CommitL(*this);
 			    iStoreEventType = EVPbkContactAdded;
 			    }
-			TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::CreateVPbkContactL() contact commited") );
+			TRACE( "contact commited");
 			//Start the wait untill adding of new contact is complete
 			}
 		}
     //return the added contact 
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::CreateVPbkContactL() iOperationError =%d"),iOperationError );
-	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::CreateVPbkContactL() end") );        
+    TRACE( "iOperationError =%d",iOperationError );
+	      
 	return iOperationError; 
 	}
 
@@ -825,28 +818,29 @@
 //  
 void CVIMPSTStorageVPbkStoreHandler::CommitNextPendingContactsL() 
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::CommitNextPendingContactsL() Start") );
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::CommitNextPendingContactsL() iStoreEventType = %d"),iStoreEventType );
+	
+	TRACER_AUTO;
+    TRACE("iStoreEventType = %d",iStoreEventType );
     if( !iCommitOperationInProgress && iUnCommittedVPbkContacts.Count() && iStoreEventType != EVPbkUpdatingAvatar)
         {
-        TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::CommitNextPendingContactsL() Commit next") );
+        TRACE( " Commit next" );
         iCommitOperationInProgress = ETrue;
         if(iStoreContact)
             {
             delete iStoreContact;
             iStoreContact = NULL;
             }
-        TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::CommitNextPendingContactsL() comming...") );
+        TRACE( "comming..." );
         iStoreContact = iUnCommittedVPbkContacts[0];
         iUnCommittedVPbkContacts.Remove(0);
         iUnCommittedVPbkContacts.Compress();
         iStoreContact->CommitL(*this);
         iStoreEventType = EVPbkContactSynchronizing;
-        TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::CommitNextPendingContactsL() Commit called") );
+        TRACE( " Commit called" );
         }
     else if(!iCommitOperationInProgress && iPendingAvatars.Count()  && iStoreEventType != EVPbkUpdatingAvatar)
         {
-        TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::CommitNextPendingContactsL() Commit next pending avatar") );
+        TRACE( "Commit next pending avatar" );
         TVIMPSTAvatarData avatarData = iPendingAvatars[0];
         UpdateAvatarFieldDataL( *avatarData.iContactLink, *avatarData.iAvatarContent );
         iPendingAvatars.Remove( 0 );
@@ -856,7 +850,7 @@
         avatarData.iAvatarContent = NULL;
         iPendingAvatars.Compress();
         }
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::CommitNextPendingContactsL() End") );
+    
     }
 
 // ---------------------------------------------------------------------------
@@ -865,7 +859,7 @@
 //  
 TInt CVIMPSTStorageVPbkStoreHandler::RemoveVPbkContactL(const CVPbkContactLinkArray& aContactLinkArray ) 
 	{
-	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::RemoveVPbkContactL() begin") );
+	TRACER_AUTO;
 	// text now holds the name (or first field of the contact) 
     delete iContactOperation;
     iContactOperation = NULL;
@@ -874,8 +868,8 @@
 	    {
 	    iWait.Start();	
 	    }
-	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::RemoveVPbkContactL() iOperationError=%d"),iOperationError ); 
-	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::RemoveVPbkContactL() end") );     
+	TRACE( "iOperationError=%d",iOperationError ); 
+	 
     return iOperationError;
   	}
 
@@ -885,12 +879,12 @@
 //  
 TInt CVIMPSTStorageVPbkStoreHandler::RetrieveVPbkContactL(const TDesC8& aPackedLinks) 
 	{
-	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::RetrieveVPbkContactL() begin") );   
+	TRACER_AUTO;  
 	iStoreEventType = EVPbkContactRetriving;
 	CVPbkContactLinkArray* linkArray = CVPbkContactLinkArray::NewLC(aPackedLinks, *iStores );
     // text now holds the name (or first field of the contact) 
     TInt count = linkArray->Count();
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::StoreReady() count=%d"),count );   
+    TRACE( "count=%d",count );   
     for ( TInt i=0; i<count; i++ )
 	    {
 	    delete iContactLink;
@@ -910,7 +904,7 @@
 		    }
 	    }
     CleanupStack::PopAndDestroy();//linkArray
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::RetrieveVPbkContactL() end") );   
+   
     return iOperationError;
     }
  
@@ -923,15 +917,15 @@
 TInt CVIMPSTStorageVPbkStoreHandler::UpdateAvatarFieldDataL(const MVPbkContactLink& aContactLink,
 														    const TDesC8& aAvatartData )
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::UpdateAvatarFieldDataL() begin") ); 
+	TRACER_AUTO;
   
     // local variable caz cant push member variable to cleanup stack
     MVPbkContactLink* cloneLink = aContactLink.CloneLC();
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::UpdateAvatarFieldDataL() iCommitOperationInProgress: %d"),iCommitOperationInProgress );  
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::UpdateAvatarFieldDataL() iUnCommittedVPbkContacts: %d"),iUnCommittedVPbkContacts.Count() );
+    TRACE( "iCommitOperationInProgress: %d",iCommitOperationInProgress );  
+    TRACE( "iUnCommittedVPbkContacts: %d",iUnCommittedVPbkContacts.Count() );
     if(iCommitOperationInProgress || iUnCommittedVPbkContacts.Count() || iStoreEventType == EVPbkUpdatingAvatar )
         {
-        TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::UpdateAvatarFieldDataL()Inside if") ); 
+        TRACE( "Inside if" ); 
         TVIMPSTAvatarData avatarData = {
                                        cloneLink,
                                        aAvatartData.AllocL()
@@ -941,7 +935,7 @@
         return KErrInUse;
         }
     iCommitOperationInProgress = ETrue;
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::UpdateAvatarFieldDataL()Inside after if") ); 
+    TRACE( "Inside after if" ); 
     delete iContactLink;
     iContactLink = NULL;
     iContactLink = cloneLink;
@@ -1006,16 +1000,16 @@
 				}
 	        }
 		}
-	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::UpdateAvatarFieldDataL()Inside after if(avatardata.length)") ); 
+	TRACE( "Inside after if(avatardata.length)" ); 
 	iStoreEventType = EVPbkContactChanged;
-	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::UpdateAvatarFieldDataL()Inside after if(avatardata.length ): %d"),iStoreEventType ); 
+	TRACE( "Inside after if(avatardata.length ): %d",iStoreEventType ); 
 	iStoreContact->CommitL(*this);
 	//wait for delete Avatar operation to complete.
 	if(!iWait.IsStarted() ) 
 		{
 		iWait.Start();	
 		}
-	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::UpdateAvatarFieldDataL() end") );   
+	
 	return iOperationError;
     }
 
@@ -1025,7 +1019,7 @@
 //
 TInt CVIMPSTStorageVPbkStoreHandler::RemoveAvatarFieldL(MVPbkStoreContact& aStoreContact)
 	{
-	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::RemoveAvatarFieldL() begin") );   
+	TRACER_AUTO;
 	aStoreContact.LockL(*this);
     //wait till lock operation is succeded
     if(!iWait.IsStarted() ) 
@@ -1048,8 +1042,8 @@
 		{
 		iWait.Start();	
 		}
-	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::RemoveAvatarFieldL() iOperationError =%d"),iOperationError );   
-	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::RemoveAvatarFieldL() end") );   
+	TRACE( "iOperationError =%d",iOperationError );   
+	
 	return iOperationError;	
 	}
 
@@ -1060,11 +1054,11 @@
 HBufC* CVIMPSTStorageVPbkStoreHandler::GetContactFieldDataLC(const MVPbkStoreContact& aContact,
 												    		 TInt aFieldResId ) 
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::GetContactFieldDataLC() begin") );   
+	TRACER_AUTO;
     HBufC* retValue = NULL;
     const MVPbkStoreContactFieldCollection& fieldCollection = aContact.Fields();
 	TInt fieldCount = fieldCollection.FieldCount();
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::GetContactFieldDataLC() fieldCount%d"),fieldCount );   
+    TRACE( " fieldCount%d",fieldCount );   
 	for( TInt index = 0 ; index < fieldCount ;  index++ )
 		{
 		const MVPbkStoreContactField& field = fieldCollection.FieldAt( index );
@@ -1077,13 +1071,13 @@
 				{
 				case EVPbkFieldStorageTypeText:
 					{
-					TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::GetContactFieldDataLC() Text") );   
+					TRACE(" Text" );   
 					retValue = MVPbkContactFieldTextData::Cast(fieldData).Text().AllocLC();
 					break;					
 					}
 				case EVPbkFieldStorageTypeUri:				
 					{
-					TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::GetContactFieldDataLC() Uri "));   
+					TRACE(" Uri ");   
 					retValue = MVPbkContactFieldUriData::Cast(fieldData).Text().AllocLC();
 					break;	
 					}
@@ -1091,7 +1085,7 @@
 				}//End switch
 			if( aFieldResId == R_VPBK_FIELD_TYPE_IMPP && retValue )
 				{
-				TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::GetContactFieldDataLC() IMPP fild found"));   
+				TRACE( " IMPP fild found");   
 				// TODO RAMC : Nikhil/Mukesh
 				// in case of srver contacts it also find the first valid xsp id
 				// not valid through NULL
@@ -1100,7 +1094,7 @@
 				TPtrC scheme = MVPbkContactFieldUriData::Cast(fieldData).Scheme();
 				if( scheme.Compare( *iServiceName ) == 0 )
 					{
-					TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::GetContactFieldDataLC() actual xsp Id found"));   
+					TRACE( " actual xsp Id found");   
 					// actual xsp id found break the loop and return 
 					break;	
 					}
@@ -1121,11 +1115,11 @@
 		}
 	if( !retValue )
 		{
-		TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::GetContactFieldDataLC() NULL value"));   
+		TRACE( " NULL value");   
 		// if NULL assign valid ptr
 		retValue = KNullDesC().AllocLC();	
 		}
-	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::GetContactFieldDataLC() end"));   
+	
 	return retValue;// ownership is return to caller
     }
 
@@ -1136,11 +1130,11 @@
 HBufC8* CVIMPSTStorageVPbkStoreHandler::GetContactBinaryFieldDataLC(const MVPbkStoreContact& aContact,
                                                              TInt aFieldResId ) 
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::GetContactBinaryFieldDataLC() begin") );   
+	TRACER_AUTO;  
     HBufC8* retValue = NULL;
     const MVPbkStoreContactFieldCollection& fieldCollection = aContact.Fields();
     TInt fieldCount = fieldCollection.FieldCount();
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::GetContactBinaryFieldDataLC() fieldCount%d"),fieldCount );   
+    TRACE( "fieldCount%d",fieldCount );   
     for( TInt index = 0 ; index < fieldCount ;  index++ )
         {
         const MVPbkStoreContactField& field = fieldCollection.FieldAt( index );
@@ -1153,7 +1147,7 @@
                 {
                 case EVPbkFieldStorageTypeBinary:
                     {
-                    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::GetContactBinaryFieldDataLC() Text") );
+                    TRACE( " Text" );
                     retValue = MVPbkContactFieldBinaryData::Cast(fieldData).BinaryData().AllocLC();
                     break;                  
                     }
@@ -1168,11 +1162,11 @@
         }
     if( !retValue )
         {
-        TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::GetContactBinaryFieldDataLC() NULL value"));   
+        TRACE( " NULL value");   
         // if NULL assign valid ptr
         retValue = KNullDesC8().AllocLC();   
         }
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::GetContactBinaryFieldDataLC() end"));   
+   
     return retValue;// ownership is return to caller
     }
 
@@ -1183,7 +1177,7 @@
 // ---------------------------------------------------------		
 void CVIMPSTStorageVPbkStoreHandler::RetriveFieldDataAndSendEventL(const MVPbkStoreContact& aContact ) 
 	{
-	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::RetriveFieldDataAndSendEventL() begin") );   
+	TRACER_AUTO;  
 	HBufC* retValue = NULL;
     const MVPbkStoreContactFieldCollection& fieldCollection = aContact.Fields();
 	TInt fieldCount = fieldCollection.FieldCount();
@@ -1210,13 +1204,13 @@
 				{
 			    case EVPbkFieldStorageTypeText:
                     {
-                    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::RetriveFieldDataAndSendEventL() Text") );   
+                    TRACE( "Text" );   
                     retValue = MVPbkContactFieldTextData::Cast(fieldData).Text().AllocLC();
                     break;                  
                     }
 				case EVPbkFieldStorageTypeUri:				
 					{
-					TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::RetriveFieldDataAndSendEventL() begin") ) ;   
+					TRACE( "begin" ) ;   
 					retValue = MVPbkContactFieldUriData::Cast(fieldData).Text().AllocLC();
 					break;	
 					}
@@ -1224,7 +1218,7 @@
 				}//End switch
 			if( retValue )
 				{
-				TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::RetriveFieldDataAndSendEventL() begin") );   
+				TRACE( " begin" );   
 				TVIMPSTVPbkStoreEvent storeEvent(iStoreEventType,
 									NULL,
 									NULL,
@@ -1236,7 +1230,7 @@
 				}
 			}
 		}
-	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::RetriveFieldDataAndSendEventL() begin") );   
+	 
 	}
 
 // ---------------------------------------------------------
@@ -1245,24 +1239,24 @@
 // ---------------------------------------------------------		
 TInt CVIMPSTStorageVPbkStoreHandler::RemoveAllVPbkContactsL()
 	{
-	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::RemoveAllVPbkContactsL() begin") );   
-	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::RemoveAllVPbkContactsL() before if") ); 
+	TRACER_AUTO; 
+	TRACE( " before if" ); 
 	if(iAddIdInProgress)
 	    {
 	    TPtr iAddIdInProgressPtr = iAddIdInProgress->Des();
-	    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::RemoveAllVPbkContactsL() iAddIdInProgressPtr  = %S"), &iAddIdInProgressPtr ); 
+	    TRACE( "iAddIdInProgressPtr  = %S", &iAddIdInProgressPtr ); 
 	    delete iAddIdInProgress;
 	    iAddIdInProgress = NULL;
 	    }
 	// intialize it to efalse as, somewhere it would have missed.
 	iCommitOperationInProgress = EFalse;
-	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::RemoveAllVPbkContactsL() After if") ); 
+	TRACE( " After if"); 
 	TInt count = 0;
 	if( iContactView )
 		{
 		count = iContactView->ContactCountL();	
 		}
-	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::RemoveAllVPbkContactsL() count = %d"),count) ;   
+	TRACE( "count = %d",count) ;   
 	TPtr iStoreNamePtr(iStoreName->Des() );
 	TInt index = iStoreNamePtr.Find(_L(":") );
 	if( index >= 0 && count )
@@ -1281,7 +1275,7 @@
 			TContactItemId contactId = iterator.FirstL();	
 			while(contactId != KNullContactId)
 				{
-				TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::RemoveAllVPbkContactsL() in side while") );   
+				TRACE( "in side while" );   
 				// store into iContactIds for later deletion of contacts
 				contactIds->AddL(contactId );
 				// get the next contactids
@@ -1294,7 +1288,7 @@
 			}
 		CleanupStack::PopAndDestroy( contactIds );
 		}
-	TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::RemoveAllVPbkContactsL() end") );   
+	
 	return count;	
 	}
 
@@ -1304,7 +1298,7 @@
 //
 void CVIMPSTStorageVPbkStoreHandler::ResetAndDestroyRArray()
     {
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::ResetAndDestroyRArrayL() begin") );
+	TRACER_AUTO;
     TInt count = iPendingAvatars.Count();
     while( count )
         {
@@ -1319,6 +1313,6 @@
         count = iPendingAvatars.Count();
         }
     iPendingAvatars.Reset();
-    TRACE( T_LIT("CVIMPSTStorageVPbkStoreHandler::ResetAndDestroyRArrayL() end") );
+   
     }
 // End of file
--- a/uiservicetab/vimpststorage/src/vimpststorageutils.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpststorage/src/vimpststorageutils.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -20,7 +20,7 @@
 #include "cvimpststoragemanagerfactory.h"
 #include "mvimpststorageserviceview.h"
 
-#include "vimpstdebugtrace.h"
+#include "uiservicetabtracer.h"
 #include "vimpstbuilddefinitions.h"
 
 #include <escapeutils.h>
@@ -47,6 +47,7 @@
 TInt VIMPSTStorageUtils::NeutralCompare( const TDesC& aId1,
         const TDesC& aId2, TBool aDomainNeutral )
     {
+	TRACER_AUTO;
     // points to user part of id
     TPtrC ptrId1( aId1 );
     TPtrC ptrId2( aId2 );
@@ -135,6 +136,7 @@
 //
 TPtrC VIMPSTStorageUtils::DisplayId( const TDesC& aId, TBool /*aListHiding*/ )
     {
+	TRACER_AUTO;
     TPtrC ret( aId );
 
     return ret;
--- a/uiservicetab/vimpstui/rss/vimpsterrornotes.rss	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstui/rss/vimpsterrornotes.rss	Wed Apr 14 15:46:18 2010 +0300
@@ -24,6 +24,6 @@
 RESOURCE TBUF r_qtn_chat_error_not_sup_functions    { buf = qtn_chat_error_not_sup_functions; } 
 RESOURCE TBUF r_qtn_servtab_saving_contact_failed   { buf = qtn_servtab_saving_contact_failed;}
 RESOURCE TBUF r_qtn_servtab_error_addown            { buf = qtn_servtab_error_addown; }
-
+RESOURCE TBUF r_qtn_servtab_noxsp_error             { buf = qtn_servtab_noxsp_error; }
 
 // End of File
--- a/uiservicetab/vimpstui/src/ccommandinfo.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstui/src/ccommandinfo.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -18,6 +18,7 @@
 // INCLUDE FILES
 #include <barsread.h>
 #include "ccommandinfo.h"
+#include "uiservicetabtracer.h"
 
 
 // CONSTANTS
@@ -45,6 +46,7 @@
                                     TInt32 aPluginId,
         							TInt& aNewCommandIds )
     {
+	TRACER_AUTO;
     CCommandInfo* self = new (ELeave) CCommandInfo( aPluginId );
     CleanupStack::PushL(self);
     self->ConstructL( aReader, aNewCommandIds );
@@ -74,6 +76,7 @@
 //	
 TInt32 CCommandInfo::NewCommandId() const
 	{
+	TRACER_AUTO;
 	return iNewCommandId;	
 	}
 // ----------------------------------------------------------------------------
@@ -82,6 +85,7 @@
 //
 TInt32 CCommandInfo::OldCommandId() const
 	{
+	TRACER_AUTO;
 	return iOldCommandId;	
 	}
     
--- a/uiservicetab/vimpstui/src/cvimpstuiavatarselectionhandler.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstui/src/cvimpstuiavatarselectionhandler.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -37,7 +37,7 @@
 #include    <avkon.rsg>
 #include    <caf/content.h>
 #include    <caf/manager.h> // content access
-
+#include "uiservicetabtracer.h"
 
 // ============================ MEMBER FUNCTIONS ===============================
 
@@ -60,6 +60,7 @@
 //
 void CAvatarSelectionHandler::ConstructL()
     {
+	TRACER_AUTO;
     User::LeaveIfError(iApaSession.Connect() );
 
     // create dochandler
@@ -75,6 +76,7 @@
 CAvatarSelectionHandler* CAvatarSelectionHandler::NewLC()
 
     {
+	TRACER_AUTO;
     CAvatarSelectionHandler* self = new( ELeave ) CAvatarSelectionHandler();
 
     CleanupStack::PushL(self);
@@ -150,6 +152,7 @@
 //
 void CAvatarSelectionHandler::HandleServerAppExit(TInt aReason)
     {
+	TRACER_AUTO;
     iServerAppExitReason = aReason;
     if (iWait.IsStarted() )
         {
@@ -165,6 +168,7 @@
 TBool CAvatarSelectionHandler::VerifySelectedFilesL( const MDesCArray* aSelectedFiles )
 
     {
+	TRACER_AUTO;
     if( aSelectedFiles && aSelectedFiles->MdcaCount() )
         {
         TPtrC filename( aSelectedFiles->MdcaPoint(0) ); // since muliselection is not allowed
@@ -249,6 +253,7 @@
 //
 TSize CAvatarSelectionHandler::DecodeSize(const TSize& aSize)
     {
+	TRACER_AUTO;
     // 1:1 is always valid ratio for decode scaling
     TInt lastValidRatio( 1);
     for (TInt ratio(KDecodeScaleRatioMin); ratio <= KDecodeScaleRatioMax; ratio<<= 1)
@@ -272,6 +277,7 @@
 //
 HBufC*  CAvatarSelectionHandler::HandleAvatarSelectionL(TInt aCommand )
     {
+	TRACER_AUTO;
     HBufC* selectedFile = NULL;
     switch (aCommand)
         {
@@ -352,7 +358,7 @@
 //
 void CAvatarSelectionHandler::ShowErrorL(TErrorType aErrorType)
     {
-
+	TRACER_AUTO;
     switch( aErrorType )
         {  
         case EProtected:
@@ -380,6 +386,7 @@
 //
 void CAvatarSelectionHandler::StoreMimeTypeL(const TDesC& aFilename)
     {
+	TRACER_AUTO;
     TUid dummyUid( KNullUid );
     TDataType dataType;
     User::LeaveIfError( iApaSession.AppForDocument(
--- a/uiservicetab/vimpstui/src/cvimpstuiblockview.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstui/src/cvimpstuiblockview.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -40,6 +40,7 @@
 //resource
 #include <vimpstuires.rsg>
 #include <ExtensionManagerRes.rsg>
+#include "uiservicetabtracer.h"
 
 using namespace Phonebook2;
 
@@ -72,6 +73,7 @@
 //
 void CVIMPSTUiBlockView::ConstructL()
     {
+	TRACER_AUTO;
     ViewBaseConstructL( KIMCONTACTSEXTNIMPLEMENTATIONUID, iBlockViewId );
 
     iPresenceSubService = iEngine.GetPreseceSubService();
@@ -95,6 +97,7 @@
 			    MVIMPSTEngine& aEngine ,
 			    MVIMPSTCmdHandler& aCommandHandler)
     {
+	TRACER_AUTO;
     CVIMPSTUiBlockView* self = new(ELeave) CVIMPSTUiBlockView( aMapper, 
             aContactManager,
             aBlockViewId,
@@ -127,7 +130,7 @@
 //
 void CVIMPSTUiBlockView::HandleCommandL( TInt aCommand )
     {
-	
+	TRACER_AUTO;
    	switch ( aCommand ) 
 		{
 		//Next two commands have same function
@@ -184,6 +187,7 @@
 void CVIMPSTUiBlockView::DynInitMenuPaneL( TInt aResourceId,
                                      CEikMenuPane* aMenuPane )
     {
+	TRACER_AUTO;
     //using the existing menu resource as it contains unblock item
     if( aResourceId == R_EXTENSION_MANAGER_MENU)
         {
@@ -219,7 +223,7 @@
         									TUid /*aCustomMessageId*/, 
         									const TDesC8&  /*aCustomMessage*/ )
     {
- 
+	TRACER_AUTO;
     HBufC* titleText = StringLoader::LoadLC( R_QTN_SERVTAB_TITLE_BLOCKEDLIST );
     
     //to set the icon ( context pane image) as in tabbed view
@@ -286,6 +290,7 @@
 //
 void CVIMPSTUiBlockView::UpdateNaviPaneTextL( )
 	{
+	TRACER_AUTO;
 	// Change the navigation pane from tabs to text label    
     CEikStatusPane* sp = CEikonEnv::Static()->AppUiFactory()->StatusPane();
     CAknNavigationControlContainer* np =
--- a/uiservicetab/vimpstui/src/cvimpstuiblockviewcontrol.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstui/src/cvimpstuiblockviewcontrol.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -28,6 +28,7 @@
 #include <vimpstuires.rsg>
 
 #include <MPbk2KeyEventHandler.h>
+#include "uiservicetabtracer.h"
 
 
 // ================= MEMBER FUNCTIONS =======================
@@ -55,6 +56,7 @@
 //
 void CVIMPSTUiBlockViewControl::ConstructL()
     {
+	TRACER_AUTO;
     CreateWindowL();
     iItemArray = new ( ELeave ) CDesCArrayFlat( KArrayGranularity );   
     // Create listbox
@@ -201,6 +203,7 @@
 //
 void CVIMPSTUiBlockViewControl::UpdateBlockedListL()
     {
+	TRACER_AUTO;
 	iItemArray->Reset();
 	
 	TInt granularity( iItemArray->Count() );
@@ -269,6 +272,7 @@
 //
 HBufC* CVIMPSTUiBlockViewControl::GetFocusedContactLC() const
 	{
+	TRACER_AUTO;
 	HBufC* retText = NULL;
 	TInt curIndex = iListBox->CurrentItemIndex();
 	if(KErrNotFound != curIndex)
@@ -302,6 +306,7 @@
 //
 void CVIMPSTUiBlockViewControl::SetCurrentIndex(TInt aIndex)
 	{
+	TRACER_AUTO;
 	if(aIndex>0)
 		{
 	    TInt blockedCount = iListBox->Model()->NumberOfItems();
@@ -321,6 +326,7 @@
 //
 void CVIMPSTUiBlockViewControl::UpdateCbaL()
     {
+	TRACER_AUTO;
     TInt cbaRes = R_SERVTAB_SOFTKEYS_EMPTY_EMPTY__BACK;    
     if ( !iCba ) 
 	    {
@@ -343,6 +349,7 @@
 TKeyResponse CVIMPSTUiBlockViewControl::OfferKeyEventL( const TKeyEvent& aKeyEvent,
 													TEventCode aType )
 	{
+	TRACER_AUTO;
 	if ( !aKeyEvent.iCode ) 
 	        {
 	        //The character code generated 
@@ -409,6 +416,7 @@
 //
 void CVIMPSTUiBlockViewControl::SetEmptyTextsToListboxL()
     {    
+	TRACER_AUTO;
     HBufC* emptyFinal = VIMPSTUtils::LoadResourceL(R_SERVTAB_BLOCKLIST_BKGD);
     CleanupStack::PushL(emptyFinal);
     iListBox->View()->SetListEmptyTextL( *emptyFinal );
@@ -421,7 +429,8 @@
 // ---------------------------------------------------------------------------
 //
 void CVIMPSTUiBlockViewControl::SetUpdatingTextsToListboxL()
-    {    
+    {   
+	TRACER_AUTO;
     HBufC* updating = VIMPSTUtils::LoadResourceL(R_SERVTAB_BLOCKLIST_BKGDTO);
     CleanupStack::PushL(updating);
     iListBox->View()->SetListEmptyTextL( *updating );
--- a/uiservicetab/vimpstui/src/cvimpstuibranddata.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstui/src/cvimpstuibranddata.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -24,7 +24,7 @@
 #include 	<mbsaccess.h>
 #include 	<mbselement.h>
 #include 	<cbsbitmap.h>
-#include    "vimpstdebugprint.h" 
+#include "uiservicetabtracer.h"
 
 #include    <AknIconUtils.h>
 #include    <AknIconArray.h>
@@ -55,6 +55,7 @@
 // Two-phased constructor.
 CVIMPSTUiBrandData* CVIMPSTUiBrandData::NewL(MVIMPSTEngine& aEngine)
     {
+	TRACER_AUTO;
     CVIMPSTUiBrandData* self = new (ELeave) CVIMPSTUiBrandData;
     CleanupStack::PushL( self );
     self->ConstructL(aEngine);
@@ -88,7 +89,7 @@
 // Symbian OS default constructor can leave.
 void CVIMPSTUiBrandData::ConstructL(MVIMPSTEngine& aEngine)
 	{
-	CHAT_DP( D_CHAT_LIT("CVIMPSTUiBrandData::ConstructL") );	    
+	TRACER_AUTO;
 	
 	iBrandId = HBufC8::NewL( 100 );
     TPtr8 brandIdPtr( iBrandId->Des() );    
@@ -117,13 +118,12 @@
 
 	CleanupStack::PopAndDestroy();
 	
-	CHAT_DP( D_CHAT_LIT("CVIMPSTUiBrandData::ConstructL, prepare branding access") );	    
+	TRACE(" prepare branding access" );
 	// Leaves if no brand for service, therefore trap
     PrepareBrandingAccess();
 
     
     LoadIconsL();// load the existing icons
-    CHAT_DP( D_CHAT_LIT("CVIMPSTUiBrandData::ConstructL out") );	    
     }
 
 // ---------------------------------------------------------------------------
@@ -132,7 +132,7 @@
 // 
 TInt CVIMPSTUiBrandData::PrepareBrandingAccess()
     {
-    
+	TRACER_AUTO;
     TRAPD(err, iBrandingAccess = iBrandingFactory->CreateAccessL( *iBrandId, iLanguageId ));
     
     return err;
@@ -147,7 +147,7 @@
 //
 CAknIconArray* CVIMPSTUiBrandData::LoadIconsLC( )
     {
-    CHAT_DP( D_CHAT_LIT("CVIMPSTUiBrandData::LoadIconsLC start") );	    
+	TRACER_AUTO;  
     CAknIconArray* copyArray =  new( ELeave )CAknIconArray( 4); 
     CleanupStack::PushL( copyArray );
     
@@ -164,7 +164,7 @@
         newIcon->SetBitmapsOwnedExternally( ETrue );
         copyArray->AppendL( newIcon ); // takes the ownership of newIcon
         }
-    CHAT_DP( D_CHAT_LIT("CVIMPSTUiBrandData::LoadIconsLC end") );  
+  
     return copyArray;	 // on cleanup stack	    
     }
 
@@ -176,9 +176,9 @@
 //
 CAknIconArray* CVIMPSTUiBrandData::LoadIconsL()
     {
-    CHAT_DP( D_CHAT_LIT("CVIMPSTUiBrandData::LoadIconsLC") );       
+	TRACER_AUTO;     
     //brand data is available
-    CHAT_DP( D_CHAT_LIT("CVIMPSTUiBrandData::LoadIconsLC - do load") );     
+    TRACE("do load" );     
     return LoadBrandIconsL();          
     }
 
@@ -190,59 +190,59 @@
 //
 CAknIconArray* CVIMPSTUiBrandData::LoadBrandIconsL( )
     {
-    CHAT_DP( D_CHAT_LIT("CVIMPSTUiBrandData::LoadBrandIconsLC - IN") );	    
+	TRACER_AUTO;    
     delete iIconsArray;
     iIconsArray = NULL;
     
     iIconsArray  = new( ELeave )CAknIconArray( 4);
     // array granularity is 3, because 3 icons are added to array
     
-    CHAT_DP( D_CHAT_LIT(" -> KEMbmConversationsQgnpropimfriendoff") );	    	
+    TRACE(" KEMbmConversationsQgnpropimfriendoff" );	    	
     iIconsArray->AppendL( LoadBrandBitmapL(KEMbmConversationsQgnpropimfriendoff) );//0
     		
-    CHAT_DP( D_CHAT_LIT(" -> KEMbmConversationsQgnpropimfriendon") );	    			
+    TRACE("KEMbmConversationsQgnpropimfriendon" );	    			
     iIconsArray->AppendL( LoadBrandBitmapL(KEMbmConversationsQgnpropimfriendon) );//1
     
-    CHAT_DP( D_CHAT_LIT(" -> KEMbmConversationsQgnpropimfriendaway") );	    			
+    TRACE(" KEMbmConversationsQgnpropimfriendaway" );	    			
     iIconsArray->AppendL( LoadBrandBitmapL(KEMbmConversationsQgnpropimfriendaway ) );//2
 	
-	CHAT_DP( D_CHAT_LIT(" -> KEMbmConversationsQgnpropimfriendbusy") );	    			
+    TRACE("KEMbmConversationsQgnpropimfriendbusy" );	    			
 	iIconsArray->AppendL( LoadBrandBitmapL(KEMbmConversationsQgnpropimfriendbusy ) );//3
 
-    CHAT_DP( D_CHAT_LIT(" -> KEMbmConversationsQgnpropimfriendinvisible") );	    			
+	TRACE(" KEMbmConversationsQgnpropimfriendinvisible" );	    			
     iIconsArray->AppendL( LoadBrandBitmapL(KEMbmConversationsQgnpropimfriendinvisible ) );//4
     
-    CHAT_DP( D_CHAT_LIT(" -> KEMbmConversationsQgnpropimimsg") );	    			
+    TRACE(" KEMbmConversationsQgnpropimimsg" );	    			
     iIconsArray->AppendL( LoadBrandBitmapL(KEMbmConversationsQgnpropimimsg ) );//5
     
-    CHAT_DP( D_CHAT_LIT(" -> KEMbmConversationsQgnpropimimsgnew") );	    			
+    TRACE("  KEMbmConversationsQgnpropimimsgnew" );	    			
     iIconsArray->AppendL( LoadBrandBitmapL(KEMbmConversationsQgnpropimimsgnew ) );//6
     
-    CHAT_DP( D_CHAT_LIT(" -> KEMbmConversationsQgnpropservicedefaultavatar") );	    			
+    TRACE("  KEMbmConversationsQgnpropservicedefaultavatar" );	    			
     iIconsArray->AppendL( LoadBrandBitmapL(KEMbmConversationsQgnpropservicedefaultavatar ) );//7
     
-    CHAT_DP( D_CHAT_LIT(" -> KEMbmConversationsQgnpropservicefriendrequestreceived") );	    			
+    TRACE("  KEMbmConversationsQgnpropservicefriendrequestreceived" );	    			
     iIconsArray->AppendL( LoadBrandBitmapL(KEMbmConversationsQgnpropservicefriendrequestreceived ) );//8
     
-    CHAT_DP( D_CHAT_LIT(" -> KEMbmConversationsQgnpropservicefriendrequestsent") );	    			
+    TRACE("  KEMbmConversationsQgnpropservicefriendrequestsent" );	    			
     iIconsArray->AppendL( LoadBrandBitmapL(KEMbmConversationsQgnpropservicefriendrequestsent ) );//9
     
-    CHAT_DP( D_CHAT_LIT(" -> KEMbmConversationsQgnpropserviceofffriendrequestreceived") );                  
+    TRACE(" KEMbmConversationsQgnpropserviceofffriendrequestreceived" );                  
     iIconsArray->AppendL( LoadBrandBitmapL(KEMbmConversationsQgnpropserviceofffriendrequestreceived ) );//10
     
-    CHAT_DP( D_CHAT_LIT(" -> KEMbmConversationsQgnpropserviceofffriendrequestsent") );                  
+    TRACE("  KEMbmConversationsQgnpropserviceofffriendrequestsent" );                  
     iIconsArray->AppendL( LoadBrandBitmapL(KEMbmConversationsQgnpropserviceofffriendrequestsent ) );//11
 
-    CHAT_DP( D_CHAT_LIT(" -> KEMbmConversationsQgnpropimfriendonmobile") );                  
+    TRACE("  KEMbmConversationsQgnpropimfriendonmobile" );                  
     iIconsArray->AppendL( LoadBrandBitmapL(KEMbmConversationsQgnpropimfriendonmobile ) );//12
     
-    CHAT_DP( D_CHAT_LIT(" -> KEMbmConversationsQgnservtabavatarblocked") );                  
+    TRACE(" KEMbmConversationsQgnservtabavatarblocked" );                  
     iIconsArray->AppendL( LoadBrandBitmapL(KEMbmConversationsQgnpropimuserblocked ) );//13
     
-    CHAT_DP( D_CHAT_LIT(" -> KEMbmConversationsQgnservtabavatarblocked") );                  
+    TRACE("  KEMbmConversationsQgnservtabavatarblocked" );                  
     iIconsArray->AppendL( LoadBrandBitmapL(KEMbmConversationsQgnpropimusercallforward ) );//14
 
-	CHAT_DP( D_CHAT_LIT("CVIMPSTUiBrandData::LoadBrandIconsLC - OUT") );	    
+        
     return iIconsArray;
     }
 
@@ -253,7 +253,7 @@
 //
 CGulIcon* CVIMPSTUiBrandData::LoadBrandBitmapL( const TDesC8& aId )
 	{
-    CHAT_DP( D_CHAT_LIT("CVIMPSTUiBrandData::LoadBrandBitmapL - IN") );	    
+	TRACER_AUTO;    	    
     
     CFbsBitmap* bitmap = NULL;
     CFbsBitmap* mask = NULL;
@@ -262,19 +262,19 @@
     //Fetching bitmaps from the server.
     if(!iBrandingAccess)
 	    {
-	    CHAT_DP( D_CHAT_LIT("CVIMPSTUiBrandData::LoadBrandBitmapL - create access") );	    
+    TRACE("create access" );	    
 	    PrepareBrandingAccess();	
 	    }
     TRAPD(err_bitmap, iBrandingAccess->GetBitmapL( aId, bitmap, mask ));
     if(KErrNone != err_bitmap)
     	{
-    	CHAT_DP( D_CHAT_LIT("CVIMPSTUiBrandData::LoadBrandBitmapL - err") );	    
+    TRACE(" err" );	    
         User::Leave( err_bitmap );
     	}
-    CHAT_DP( D_CHAT_LIT("CVIMPSTUiBrandData::LoadBrandBitmapL - create icon") );	    	
+    TRACE("create icon" );	    	
     CGulIcon* icon = CGulIcon::NewL(bitmap, mask);
     icon->SetBitmapsOwnedExternally( EFalse );
-    CHAT_DP( D_CHAT_LIT("CVIMPSTUiBrandData::LoadBrandBitmapL - return icon") );	    	
+    TRACE(" return icon" );	    	
     return icon;
     }
 
@@ -286,7 +286,7 @@
 CGulIcon* CVIMPSTUiBrandData::LoadDefaultBitmapL( TInt aBitmapId, TInt aMaskId, 
                                       const TDesC& aFullPath )
 	{
-    CHAT_DP( D_CHAT_LIT("CVIMPSTUiBrandData::LoadDefaultBitmapL IN") );	    
+	TRACER_AUTO;       
     
     CFbsBitmap* bitmap = NULL;
     CFbsBitmap* mask = NULL;
@@ -304,6 +304,7 @@
 //
 CAknIconArray* CVIMPSTUiBrandData::LoadOwnStatusIconsLC( )
     {
+	TRACER_AUTO;   
     //EASY WAY TO DO THINGS.. :) 
     //Fetching bitmaps from the server.
     if(!iBrandingAccess)
@@ -325,6 +326,7 @@
 //
 CAknIconArray* CVIMPSTUiBrandData::LoadBrandOwnStatusIconsLC( )
     {
+	TRACER_AUTO;   
     // array granularity is 3, because 3 icons are added to array
     CAknIconArray* icons = new( ELeave )CAknIconArray( 5);
     CleanupStack::PushL( icons );
@@ -355,6 +357,7 @@
 //
 CAknIconArray* CVIMPSTUiBrandData::LoadDefaultOwnStatusIconsLC( const TDesC& aMbmFile)
     {
+	TRACER_AUTO;   
     // array granularity is 4, because 4 icons are added to array
     CAknIconArray* icons = new( ELeave )CAknIconArray( 5);
     CleanupStack::PushL( icons );
@@ -390,7 +393,8 @@
    
 TInt CVIMPSTUiBrandData::GetBrandBitmapsL( CFbsBitmap **aBitmap, CFbsBitmap **aMask)
     {
-    CHAT_DP( D_CHAT_LIT("CVIMPSTUiBrandData::GetBrandBitmapsL") );	    
+	TRACER_AUTO;   
+    	    
     TInt error =KErrNone;
     if ( !iBrandingAccess && KErrNone != PrepareBrandingAccess())
         {
@@ -404,7 +408,7 @@
           {
           TRAP(error, iBrandingAccess->GetBitmapL( KEMbmConversationsQgnpropimfriendon, *aBitmap, *aMask ));
           }
-    CHAT_DP( D_CHAT_LIT("CVIMPSTUiBrandData::GetBrandBitmapsL returns: %d"), error );	          
+    TRACE("returns: %d", error );	          
     return error;
     }
     
@@ -416,6 +420,7 @@
 //
 HBufC* CVIMPSTUiBrandData::GetToUBrandedStringL()
 	{
+	TRACER_AUTO;   
 	HBufC* prompt= NULL;
 	if(iBrandingAccess || KErrNone == PrepareBrandingAccess())
 		{
@@ -445,6 +450,7 @@
 //
 HBufC* CVIMPSTUiBrandData::GetToUStringL()
     {
+	TRACER_AUTO;   
     HBufC* TouDes = NULL; 
     const TInt KLangBufLength = 2;
     const TInt KLeadingZero = 0;
@@ -536,6 +542,7 @@
 //
 HBufC* CVIMPSTUiBrandData::ConcatLC( TDesC& aDesc1, TDesC& aDesc2 )
    {
+	TRACER_AUTO;   
    HBufC* resultDesc = HBufC::NewLC( aDesc1.Length() + aDesc2.Length() );
    resultDesc->Des().Append( aDesc1 );
    resultDesc->Des().Append( aDesc2 );
--- a/uiservicetab/vimpstui/src/cvimpstuicontactselection.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstui/src/cvimpstuicontactselection.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -18,6 +18,7 @@
 // INCLUDE FILES
 #include "cvimpstuicontactselection.h"
 #include "cvimpstuitabbedview.h"
+#include "uiservicetabtracer.h"
 
 #include <e32base.h>
 
@@ -59,6 +60,7 @@
 //
 void CVIMPSTUiContactSelection::IssueRequest()
 	{
+	TRACER_AUTO;
 	if( IsActive() )
 		{
 		Cancel();	
--- a/uiservicetab/vimpstui/src/cvimpstuicveventlistener.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstui/src/cvimpstuicveventlistener.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -22,6 +22,7 @@
 #include "cvimpstuitabbedview.h"
 #include "imcvuiliterals.h"
 #include "vimpstui.hrh"
+#include "uiservicetabtracer.h"
 
 //system includes
 #include <avkon.hrh>
@@ -45,6 +46,7 @@
 //
 void CVIMPSTUICvEventListener::ConstructL()
     {
+	TRACER_AUTO;
     RProperty::Define(KIMCVPropertyUid, KIMCVConnectedKey, RProperty::EInt );
     RProperty::Set(KIMCVPropertyUid, KIMCVConnectedKey, EIMCVUiEventNone ); //0 reset property
     User::LeaveIfError( iProperty.Attach(KIMCVPropertyUid, KIMCVConnectedKey) );
@@ -59,6 +61,7 @@
 //
 CVIMPSTUICvEventListener* CVIMPSTUICvEventListener::NewL(CVIMPSTUiTabbedView& aTabbedView )
     {
+	TRACER_AUTO;
     CVIMPSTUICvEventListener* self = new(ELeave) CVIMPSTUICvEventListener( aTabbedView );
     CleanupStack::PushL(self);
     self->ConstructL();
@@ -81,7 +84,7 @@
 //
 void CVIMPSTUICvEventListener::RunL()
     {
-        
+	TRACER_AUTO;
     TInt eventValue = KErrNone;
     
     TInt error = RProperty::Get(KIMCVPropertyUid,KIMCVConnectedKey, eventValue  );
--- a/uiservicetab/vimpstui/src/cvimpstuidoublelistboxarray.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstui/src/cvimpstuidoublelistboxarray.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -24,7 +24,7 @@
 #include    "cvimpstuidoublelistboxtabviewcontrol.h" // tab control
 #include 	<vimpstuires.rsg>
 #include    "tvimpstenums.h"
-#include    "vimpstdebugprint.h" 
+#include "uiservicetabtracer.h"
 // platform includes
 
 #include    <AknUtils.h>
@@ -47,6 +47,7 @@
 							            CVIMPSTUiDoubleListBoxTabViewControl& aTabbedviewControl
 							            )
     {
+	TRACER_AUTO;
     CVIMPSTUiDoubleListboxArray* self = new (ELeave) CVIMPSTUiDoubleListboxArray( aItemModel, 
     								aListboxData, aListBox,aTabbedviewControl);
     								
@@ -79,7 +80,7 @@
 // Symbian OS default constructor can leave.
 void CVIMPSTUiDoubleListboxArray::ConstructL()
 	{
-	
+	TRACER_AUTO;
 	 // maximum length of icons appended to identification
     // There can be four icons (A+B and two on D-column)
     iMaxLengthOfIcons =
@@ -116,7 +117,8 @@
 //
 TPtrC16 CVIMPSTUiDoubleListboxArray::MdcaPoint( TInt aIndex ) const
 	{
-	CHAT_DP( D_CHAT_LIT("CVIMPSTUiArray::MdcaPoint: aIndex: %d"), aIndex );	    
+	TRACER_AUTO;
+	TRACE(" aIndex: %d", aIndex );	    
 	// Although this is a const method, we do change the member data.
 	// This is done because of performance
 	// -> no need to create new buffer every time.
@@ -126,13 +128,13 @@
   
     // fetch the item and process correct type    
     TVIMPSTEnums::TItem type = iItemArray.GetType(aIndex);
-    CHAT_DP( D_CHAT_LIT(" -> item type: %d"), type );	    
+    TRACE(" item type: %d", type );	    
  
     switch( type )
         {
         case TVIMPSTEnums::EOwnStatusItem:
 	        {
-	        CHAT_DP( D_CHAT_LIT(" -> own data") );	    
+	        TRACE("  own data" );	    
 	        TRAP_IGNORE( AppendOwnDataL(dataPtr,aIndex ) );
 	        break;	
 	        }	
@@ -145,12 +147,12 @@
         default:
             {
             // shouldn't be here
-            CHAT_DP( D_CHAT_LIT(" -> default") );	    
+            TRACE(" -> default" );	    
             break;
             }
         } //end outer switch
     
-    CHAT_DP( D_CHAT_LIT("CVIMPSTUiArray::MdcaPoint out") );	    
+       
     return dataPtr;
 	}
 	
@@ -166,9 +168,9 @@
                                       TInt aIndex
                                       ) const
     {    
-    CHAT_DP( D_CHAT_LIT("CVIMPSTUiArray::AppendOwnDataL" ) );		
+	TRACER_AUTO;		
     TVIMPSTEnums::TVIMPSTRegistrationState loginstate = iItemArray.GetLoginState();
-    CHAT_DP( D_CHAT_LIT("CVIMPSTUiArray::AppendOwnDataL, login state: %d" ), loginstate );		
+    TRACE("login state: %d" , loginstate );		
     TInt avtarIndex = iItemArray.OwnAvatarIndexL();
 
     if( avtarIndex )
@@ -199,7 +201,7 @@
     if (  TVIMPSTEnums::ESVCERegistered == loginstate ) 
         {
         TVIMPSTEnums::TOnlineStatus status = iItemArray.GetOnlineStatusL(aIndex);
-        CHAT_DP( D_CHAT_LIT("CVIMPSTUiArray::AppendOwnDataL, status: %d" ), status );		
+        TRACE(" status: %d" , status );		
         TPtrC statusText = iItemArray.StatusTextL( aIndex );
         if( statusText.Length()  > 0) // if status text show it
             {
@@ -265,7 +267,7 @@
         // append tab before appending icon
         aBuffer.Append( KTab );
 
-        CHAT_DP( D_CHAT_LIT("CVIMPSTUiArray::AppendOwnDataL, handle status enum: %d" ), status );		
+        TRACE(" handle status enum: %d" , status );		
         switch(status)
             {
             case TVIMPSTEnums::EOnline:
@@ -314,7 +316,7 @@
         // except in  disconnecting state show username
         if(TVIMPSTEnums::ESVCENetworkDisConnecting != loginstate )                               
             {
-            CHAT_DP( D_CHAT_LIT("CVIMPSTUiArray::AppendOwnDataL, offline state" ) );		
+			TRACE(" offline state" );		
             TPtrC userId = iItemArray.LoginUserIdFromStoreL(); 
             aBuffer.Append( VIMPSTUtils::DisplayId( userId ));
             }
--- a/uiservicetab/vimpstui/src/cvimpstuidoublelistboxtabviewcontrol.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstui/src/cvimpstuidoublelistboxtabviewcontrol.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -46,7 +46,7 @@
 #include <vimpstuires.rsg>
 
 #include <aknlayoutscalable_avkon.cdl.h>
-#include "vimpstdebugtrace.h"
+#include "uiservicetabtracer.h"
 // imlauncher
 #include <imcvlauncher.h>
 const TInt KTextLimit( 40 ); // Text-limit for find-field
@@ -86,6 +86,7 @@
 //
 void CVIMPSTUiDoubleListBoxTabViewControl::ConstructL()
     {
+	TRACER_AUTO;
     CreateWindowL();
     // register to get the call back for any array data change
     iArrayProcess.AddObserver(this);  
@@ -145,6 +146,7 @@
         CVIMPSTUiBrandData& aBrandHandler,
         MVIMPSTEngine& aEngine)
     {
+	TRACER_AUTO;
     CVIMPSTUiDoubleListBoxTabViewControl* self = NewLC(aTabbedView,aKeyEventHandler,
     			aCommandHandler, aServiceId, aBrandHandler,aEngine);
     CleanupStack::Pop(self);
@@ -162,6 +164,7 @@
         CVIMPSTUiBrandData& aBrandHandler,
         MVIMPSTEngine& aEngine)
     {
+	TRACER_AUTO;
     CVIMPSTUiDoubleListBoxTabViewControl* self =
         new (ELeave) CVIMPSTUiDoubleListBoxTabViewControl(aTabbedView,aKeyEventHandler,
         aCommandHandler, aServiceId, aBrandHandler,aEngine);
@@ -192,31 +195,31 @@
 //
 void CVIMPSTUiDoubleListBoxTabViewControl::HandleAvatarChangeL( const TDesC& aUserId ) 
     {
-    TRACE( T_LIT("CVIMPSTUiDoubleListBoxTabViewControl::HandleAvatarChangeL  Start") );
-    TRACE( T_LIT("CVIMPSTUiDoubleListBoxTabViewControl::HandleAvatarChangeL aUserId = %S "), &aUserId );
+	TRACER_AUTO;
+    TRACE( "aUserId = %S ", &aUserId );
     CFormattedCellListBoxData* listBoxData = iListBox->ItemDrawer()->ColumnData();
     TPtrC loginUserId = iArrayProcess.LoginUserIdFromStoreL();
     TInt Avindex = 0;
     CGulIcon* newIcon = NULL;
-    TRACE( T_LIT("CVIMPSTUiDoubleListBoxTabViewControl::HandleAvatarChangeL loginUserId = %S "), &loginUserId );
+    TRACE( "loginUserId = %S ", &loginUserId );
     if( KErrNone == loginUserId.Compare( aUserId ) )
         {
-        TRACE( T_LIT("CVIMPSTUiDoubleListBoxTabViewControl::HandleAvatarChangeL inside if ownuserid") );
+        TRACE( "inside if ownuserid" );
         TPtrC8 avatardata = iArrayProcess.OwnAvatarContentL();
-        TRACE( T_LIT("CVIMPSTUiDoubleListBoxTabViewControl::HandleAvatarChangeL after iArrayProcess.OwnAvatarContentL()") );
+        TRACE( "after iArrayProcess.OwnAvatarContentL()" );
         Avindex = iArrayProcess.OwnAvatarIndexL();
         if( avatardata.Length() )
             {
-            TRACE( T_LIT("CVIMPSTUiDoubleListBoxTabViewControl::HandleAvatarChangeL avatardata.Length()") );
+            TRACE( "avatardata.Length()" );
             newIcon = AvatarToIconL( avatardata );
             }
         if( newIcon ) // there is a new avatar icon 
             {
-            TRACE( T_LIT("CVIMPSTUiDoubleListBoxTabViewControl::HandleAvatarChangeL newIcon") );
+            TRACE("newIcon" );
             CArrayPtr<CGulIcon>* currentIconArray = listBoxData->IconArray();
             if( Avindex ) // if there is old icon already
                 {
-                TRACE( T_LIT("CVIMPSTUiDoubleListBoxTabViewControl::HandleAvatarChangeL Avindex ") );
+                TRACE( "Avindex " );
                 // delete the old icon compress the array and insert at the same position
                 currentIconArray->Delete( Avindex );
                 currentIconArray->Compress();
@@ -224,17 +227,17 @@
                 }
             else 
                 { 
-                TRACE( T_LIT("CVIMPSTUiDoubleListBoxTabViewControl::HandleAvatarChangeL else of Avindex ") );
+                TRACE( "else of Avindex " );
                 // if there is no old icon append at the last
                 currentIconArray->AppendL( newIcon);
                 // set the index to cenrep
-                TRACE( T_LIT("CVIMPSTUiDoubleListBoxTabViewControl::HandleAvatarChangeL currentIconArray->Count()-1 = %d "),currentIconArray->Count()-1  );
+                TRACE( " currentIconArray->Count()-1 = %d ",currentIconArray->Count()-1  );
                 iArrayProcess.SetOwnAvatarIndexL( currentIconArray->Count()-1 );
                 }
             }
         else 
             {
-            TRACE( T_LIT("CVIMPSTUiDoubleListBoxTabViewControl::HandleAvatarChangeL else of avatar got cleared.") );
+            TRACE( "else of avatar got cleared." );
             // avatar got cleared just  set the icon index to '0'
             // icon what was added still remains in the  listbox icon array
             // dont delete the old icon, because that needs to modify the whole 
@@ -246,27 +249,27 @@
         }
     else
         {
-        TRACE( T_LIT("CVIMPSTUiDoubleListBoxTabViewControl::HandleAvatarChangeL else  not own id") );
-        TRACE( T_LIT("CVIMPSTUiDoubleListBoxTabViewControl::HandleAvatarChangeL else  not own id aUserId = %S"),&aUserId );
+        TRACE( " else  not own id" );
+        TRACE( " else  not own id aUserId = %S",&aUserId );
         TInt index = iArrayProcess.GetSelectedItemIndex( aUserId );//Get the index from storage.
         
-        TRACE( T_LIT("CVIMPSTUiDoubleListBoxTabViewControl::HandleAvatarChangeL after GetSelectedItemIndex") );
+        TRACE( " after GetSelectedItemIndex" );
         TPtrC8 avatardata = iArrayProcess.AvatarContent( index );
-        TRACE( T_LIT("CVIMPSTUiDoubleListBoxTabViewControl::HandleAvatarChangeL after iArrayProcess.AvatarContent") );
+        TRACE("after iArrayProcess.AvatarContent" );
         Avindex = iArrayProcess.AvatarIndex(index);
-        TRACE( T_LIT("CVIMPSTUiDoubleListBoxTabViewControl::HandleAvatarChangeL after Avindex = %d"),Avindex );
+        TRACE( " after Avindex = %d",Avindex );
         if( avatardata.Length() )
             {
-            TRACE( T_LIT("CVIMPSTUiDoubleListBoxTabViewControl::HandleAvatarChangeL inside if avatardata.Length()") );
+            TRACE( "inside if avatardata.Length()" );
             newIcon = AvatarToIconL( avatardata );
             }
         if( newIcon ) // there is a new avatar icon 
             {
-            TRACE( T_LIT("CVIMPSTUiDoubleListBoxTabViewControl::HandleAvatarChangeL inside if newIcon") );
+            TRACE( "inside if newIcon" );
             CArrayPtr<CGulIcon>* currentIconArray = listBoxData->IconArray();
             if( Avindex ) // if there is old icon already
                 {
-                TRACE( T_LIT("CVIMPSTUiDoubleListBoxTabViewControl::HandleAvatarChangeL inside Avindex") );
+                TRACE( " inside Avindex" );
                 // delete the old icon compress the array and insert at the same position
                 currentIconArray->Delete( Avindex );
                 currentIconArray->Compress();
@@ -274,7 +277,7 @@
                 }
             else 
                 { 
-                TRACE( T_LIT("CVIMPSTUiDoubleListBoxTabViewControl::HandleAvatarChangeL inside Avindex else") );
+                TRACE( " inside Avindex else" );
                 // if there is no old icon append at the last
                 currentIconArray->AppendL( newIcon);
                 // set the index to cenrep
@@ -283,7 +286,7 @@
             }
         else 
             {
-            TRACE( T_LIT("CVIMPSTUiDoubleListBoxTabViewControl::HandleAvatarChangeL  avatar got cleared") );
+            TRACE( " avatar got cleared" );
             // avatar got cleared just  set the icon index to '0'
             // icon what was added still remains in the  listbox icon array
             // dont delete the old icon, because that needs to modify the whole 
@@ -295,7 +298,7 @@
         }
 
     iListBox->DrawNow();
-    TRACE( T_LIT("CVIMPSTUiDoubleListBoxTabViewControl::HandleAvatarChangeL  End") );
+    
     }	
 // ---------------------------------------------------------
 // CVIMPSTUiDoubleListBoxTabViewControl::HandleAddition
@@ -316,6 +319,7 @@
 //
 void CVIMPSTUiDoubleListBoxTabViewControl::HandleDeletionL(TVIMPSTEnums::TItem aType , TInt aIndex )
 	{
+	TRACER_AUTO;
 	if(iListBox)
 		{
 		iListBox->HandleItemRemovalL();  
@@ -334,6 +338,7 @@
 //
 void CVIMPSTUiDoubleListBoxTabViewControl::HandleItemAdditionL()
     {
+	TRACER_AUTO;
     if(iListBox)
   	 	{
         iListBox->HandleItemAdditionL();  
@@ -415,6 +420,7 @@
 //
 CCoeControl* CVIMPSTUiDoubleListBoxTabViewControl::ComponentControl(TInt aIndex) const
     {
+	TRACER_AUTO;
    // return iListBox;
     switch ( aIndex )
         {
@@ -449,6 +455,7 @@
 TKeyResponse CVIMPSTUiDoubleListBoxTabViewControl::OfferKeyEventL
         (const TKeyEvent& aKeyEvent,TEventCode aType)
     {
+	TRACER_AUTO;
     if ( !aKeyEvent.iCode ) 
         {
         //The character code generated 
@@ -547,6 +554,7 @@
 //
 TInt CVIMPSTUiDoubleListBoxTabViewControl::CurrentItemIndex() const
     {
+	TRACER_AUTO;
     if( !iListBox )
         {
         return KErrNotFound;
@@ -580,6 +588,7 @@
 //
 void CVIMPSTUiDoubleListBoxTabViewControl::SetCurrentItemIndex(TInt aIndex)
     {
+	TRACER_AUTO;
     if (iListBox->CurrentItemIndex() != aIndex &&
         aIndex >= 0 &&
         aIndex < iListBox->Model()->NumberOfItems() )
@@ -608,14 +617,14 @@
 void CVIMPSTUiDoubleListBoxTabViewControl::SetListEmptyTextL(TInt aResourceId)
     {
     HBufC* msgText;
-    TRACE( T_LIT("CVIMPSTUiDoubleListBoxTabViewControl:SetListEmptyTextL:Start"));  
+    TRACER_AUTO;  
     // Get Service Name from Engine , load string from resource and display.
     // This text is shown to tell the user to restart phone to get the service again.
     TPtrC serviceNamePtr(iEngine.ServiceName());
     msgText = StringLoader::LoadLC(aResourceId, serviceNamePtr, iCoeEnv);
     iListBox->View()->SetListEmptyTextL(*msgText);
-    TRACE( T_LIT("Display Text %S"), msgText );
-    TRACE( T_LIT("CVIMPSTUiDoubleListBoxTabViewControl:SetListEmptyTextL:End"));
+    TRACE("Display Text %S", msgText );
+    
     CleanupStack::PopAndDestroy(msgText);
     }
 
@@ -627,7 +636,7 @@
 void CVIMPSTUiDoubleListBoxTabViewControl::LoadBitmapsL()
     {
   
-    
+	TRACER_AUTO;
 	CFormattedCellListBoxData* listBoxData = iListBox->ItemDrawer()->ColumnData();
 	if ( !listBoxData )
 		{
@@ -703,6 +712,7 @@
 void CVIMPSTUiDoubleListBoxTabViewControl::HandleListBoxEventL(
         CEikListBox* /*aListBox*/, TListBoxEvent aEventType )
     {
+	TRACER_AUTO;
     iTabbedView.UpdateToolbarL();
     switch(aEventType)
         {
@@ -783,6 +793,7 @@
 //
 void CVIMPSTUiDoubleListBoxTabViewControl::SendMessageL()
 	{
+	TRACER_AUTO;
 //	TInt index = iListBox->CurrentItemIndex();
 	TInt index = CurrentItemIndex();        
 	if( index< 0 )
@@ -829,6 +840,15 @@
             IMCVLauncher::LaunchImConversationViewL(activeViewId, iServiceId, seletctedItem, itemName, contactLink);
             }
 	    }
+	else
+		{
+	     //When there is no XSP Id present it comes to here
+	     //Displaying a note that there is no XSP ID
+			HBufC* note = NULL;
+	        note = StringLoader::LoadLC( R_QTN_SERVTAB_NOXSP_ERROR );
+	        VIMPSTUtilsDialog::DisplayNoteDialogL( *note );
+	        CleanupStack::PopAndDestroy( note );
+		}
 	
 	}
 // ---------------------------------------------------------
@@ -839,6 +859,7 @@
 void CVIMPSTUiDoubleListBoxTabViewControl::UpdateViewL( 
 				TInt aIndex, TVIMPSTEnums::TItem aType)
     {
+	TRACER_AUTO;
     TInt index = KErrNotFound;
      if( aIndex < 0 )
     	{
@@ -907,6 +928,7 @@
 //
 void CVIMPSTUiDoubleListBoxTabViewControl::ActivateFindPaneL()
     {
+	TRACER_AUTO;
     if( !iFindbox )
         {
         // Use EAdaptiveSearch so that we can search according to columns.
@@ -948,6 +970,7 @@
 //
 void CVIMPSTUiDoubleListBoxTabViewControl::DeactivateFindPaneL()
     {
+	TRACER_AUTO;
     if( !iFindbox )
 	    {
 	    return;	
@@ -1003,6 +1026,7 @@
 //
 void CVIMPSTUiDoubleListBoxTabViewControl::SetLayout()
     {
+	TRACER_AUTO;
     const TRect rect( Rect() );
     if( iListBox && iFindPaneIsVisible )
         {
@@ -1100,7 +1124,8 @@
 // Compares the Saved Contact in iFocussedID with the contacts in the List and focuses if it is found 
 // ---------------------------------------------------------
 void CVIMPSTUiDoubleListBoxTabViewControl::SetFocusAndMakeItemVisible()
-    {  
+    { 
+	TRACER_AUTO;
     TInt count = iArrayProcess.Count();
     TInt index = CurrentItemIndex();
     if( index == count )
@@ -1146,6 +1171,7 @@
 // ------------------------------------------------------------------------
 CGulIcon* CVIMPSTUiDoubleListBoxTabViewControl::AvatarToIconL( const TDesC8& aAvatarContent )
     {
+	TRACER_AUTO;
     CGulIcon* newIcon = NULL;
     CVIMPSTEngineImageHandler* imageHandler = CVIMPSTEngineImageHandler::NewL();
     CleanupStack::PushL( imageHandler );
@@ -1185,6 +1211,7 @@
 //
 void CVIMPSTUiDoubleListBoxTabViewControl::UpdateCbaL( TBool aUseDefaultCba /*= EFalse*/ )
     {
+	TRACER_AUTO;
     TInt cbaRes = R_SERVTAB_SOFTKEYS_OPTIONS_EXIT__EMPTY;
     iCurrentCmdToExe = -1;
     if( !iCbaLock )
@@ -1367,6 +1394,7 @@
 // ---------------------------------------------------------
 void CVIMPSTUiDoubleListBoxTabViewControl::HandleAvatarDeleteL( const TDesC& aUserId )
 	{
+	TRACER_AUTO;
 	TInt index = iArrayProcess.GetSelectedItemIndex(aUserId );//Get the index from storage.
 	if(index >= 0)
 		{
--- a/uiservicetab/vimpstui/src/cvimpstuiextensionfactory.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstui/src/cvimpstuiextensionfactory.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -49,7 +49,7 @@
 #include "tvimpstconsts.h"
 #include "cvimpstuiblockview.h"
 
-#include "vimpstdebugprint.h" 
+#include "uiservicetabtracer.h"
 #include "cvimpstuimenuextension.h"
 
 // ================= MEMBER FUNCTIONS =======================
@@ -68,7 +68,7 @@
     {
     
     // Load the Resource File
-    CHAT_DP_FUNC_ENTER("CVIMPSTUiExtensionFactory::ConstructL -start");
+	TRACER_AUTO;
 	TFileName resPathWithoutDrive;
     resPathWithoutDrive.Zero();
     resPathWithoutDrive.Append( KResourceDir() );
@@ -105,7 +105,7 @@
     iMenuExtension = CVIMPSTUIMenuExtension::NewL();  
     // Get's all sevices
     CreateServicesL();
-      CHAT_DP_FUNC_DONE("CVIMPSTUiExtensionFactory::ConstructL -end");
+     
     }
 
 
@@ -115,12 +115,12 @@
 //
 CVIMPSTUiExtensionFactory* CVIMPSTUiExtensionFactory::NewL()
     {
-    	  CHAT_DP_FUNC_ENTER("CVIMPSTUiExtensionFactory::NewL -start");
+	TRACER_AUTO;
     CVIMPSTUiExtensionFactory* self = new (ELeave) CVIMPSTUiExtensionFactory;
     CleanupStack::PushL(self);
     self->ConstructL();
     CleanupStack::Pop(self);
-    CHAT_DP_FUNC_DONE("CVIMPSTUiExtensionFactory::NewL -end");
+    
     return self;
     }
 
@@ -131,7 +131,7 @@
 //
 CVIMPSTUiExtensionFactory::~CVIMPSTUiExtensionFactory()
     {
-    CHAT_DP_FUNC_ENTER("CVIMPSTUiExtensionFactory::~CVIMPSTUiExtensionFactory -start");
+	TRACER_AUTO;
     delete iEngine;
     
     iCoeEnv.DeleteResourceFile( iResourceOffset );
@@ -140,7 +140,7 @@
     CVIMPSTEngineFactory::Release();
     
     delete iMenuExtension;
-    CHAT_DP_FUNC_DONE("CVIMPSTUiExtensionFactory::~CVIMPSTUiExtensionFactory -end");
+    
     }
 
 
@@ -151,7 +151,7 @@
 //
 CxSPBaseView* CVIMPSTUiExtensionFactory::CreateViewL( TUid aViewId, CPbk2UIExtensionView& aView )
     {
-    	CHAT_DP_FUNC_ENTER("CVIMPSTUiExtensionFactory::CreateViewL-start");
+	TRACER_AUTO;
     CxSPBaseView* view = NULL;
     
     TInt oldView;
@@ -199,7 +199,7 @@
 
 			}
 	    }
-    CHAT_DP_FUNC_DONE("CVIMPSTUiExtensionFactory::CreateViewL-end");
+   
     return view;
     }
   
@@ -220,7 +220,7 @@
 //                               
 TInt CVIMPSTUiExtensionFactory::ViewInfoResource() const
 	{
-
+	TRACER_AUTO;
 	// Indicate KErrNotFound. This way static resources are not used but
     // xSP Extension Manager queries data. Exception: If IM is not
     // supported, indicate it via resource for simplicity
@@ -310,14 +310,14 @@
 //  
 void CVIMPSTUiExtensionFactory::CreateServicesL()
     {
-    CHAT_DP_FUNC_ENTER("CVIMPSTUiExtensionFactory::CreateServicesL - start");
+	TRACER_AUTO;
     // Get all available services   
     RPointerArray<MVIMPSTEngine> engines;
     
     if (iEngineFactoryInstance)
 	    {
 	    iEngineFactoryInstance->GetServiceEnginePtr(engines);      
-    CHAT_DP( D_CHAT_LIT("CreateServicesL() engines.Count(): %d"), engines.Count());
+	    TRACE("CreateServicesL() engines.Count(): %d", engines.Count());
     // iterate the service array
     for ( TInt index = 0; index < engines.Count() ; index++ )        
         {
@@ -330,7 +330,7 @@
     engines.Reset();
     engines.Close();
 	    }
-    CHAT_DP_FUNC_DONE("CVIMPSTUiExtensionFactory::CreateServicesL - end");
+  
     }	
 	
 // ---------------------------------------------------------------------------
--- a/uiservicetab/vimpstui/src/cvimpstuiextensionservice.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstui/src/cvimpstuiextensionservice.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -46,6 +46,7 @@
 #include <vimpstuires.rsg>
 #include <eikenv.h>
 #include "cvimpstuimenuextension.h"
+#include "uiservicetabtracer.h"
 
 const TInt KDefaultIconId = EMbmVimpstuiExample_msn_tab;
 const TInt KDefaultMaskId = EMbmVimpstuiExample_msn_tab_mask;
@@ -87,7 +88,8 @@
 // ---------------------------------------------------------------------------
 // 
 void CVIMPSTUIExtensionService::ConstructL(const TDesC& aServiceName)
-    {       
+    {      
+	TRACER_AUTO;
     TFileName path;    
     Dll::FileName(path); //get the location of the dll
     
@@ -236,6 +238,7 @@
         TUid aId,
         MVIMPSTEngine& aEngine ) 
     {
+	TRACER_AUTO;
     if ( !iTabbedView )
         {
         iTabbedView = CVIMPSTUiTabbedView::NewL( 
@@ -265,6 +268,7 @@
         TInt aBlockedViewId,
         MVIMPSTEngine& aEngine ) 
     {
+	TRACER_AUTO;
     if ( !iBlockedView )
         {
         iBlockedView = CVIMPSTUiBlockView::NewL( 
@@ -292,6 +296,7 @@
         TUid aId,
         MVIMPSTEngine& aEngine )
     {
+	TRACER_AUTO;
     if ( !iSearchView )
         {
         iSearchView = CVIMPSTUiSearchView::NewL( 
@@ -433,6 +438,7 @@
 // 
 void CVIMPSTUIExtensionService::SetSearchFieldsDataL( RArray<TInt>& aEnumKeysArray, RPointerArray<HBufC>& aLebelKeysArray )
     {
+	TRACER_AUTO;
     // reset all old fields and create new fields
     if( iUiFieldsArray )
 	    {
@@ -509,7 +515,7 @@
 // 
 HBufC* CVIMPSTUIExtensionService::GetSearchKeyLabelL(TVIMPSTEnums::TVIMPSTSearchKey aSearchKey ,TBool& aBasicField )  
     {
-
+	TRACER_AUTO;
     HBufC* keyText = NULL;
     aBasicField = EFalse;
     
@@ -598,6 +604,7 @@
 // 
 void CVIMPSTUIExtensionService::SortBasicFields()  
 	{
+	TRACER_AUTO;
 	TInt count = iUiFieldsArray->Count();
 	TInt index = 0;
 	if( count >2 ) // atleast there has to be 3 item for sort , first name is already on top
--- a/uiservicetab/vimpstui/src/cvimpstuilistboxmodel.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstui/src/cvimpstuilistboxmodel.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -18,6 +18,7 @@
 
 #include "cvimpstuilistboxmodel.h"
 #include "mvimpstprocessarray.h"
+#include "uiservicetabtracer.h"
 
 // ======== MEMBER FUNCTIONS ========
 
@@ -43,6 +44,7 @@
 //
 TInt CVIMPSTUiListBoxModel::NumberOfItems() const
     {
+	TRACER_AUTO;
     if( IsFilterActive() )
         {
         // Something is filtered
@@ -79,6 +81,7 @@
 //
 TInt CVIMPSTUiListBoxModel::FilteredItemIndex( TInt aVisibleItemIndex ) const
     {
+	TRACER_AUTO;
     if( !IsFilterActive() )
         {
         // Nothing is filtered
@@ -120,6 +123,7 @@
 //
 TInt CVIMPSTUiListBoxModel::VisibleItemIndex( TInt aOriginalIndex ) const
     {
+	TRACER_AUTO;
     if( !IsFilterActive() )
         {
         // Nothing is filtered
@@ -162,6 +166,7 @@
 //
 TInt CVIMPSTUiListBoxModel::CountItems() const
     {
+	TRACER_AUTO;
     TInt itemcount = 0;
     if( Filter() )
         {
@@ -199,6 +204,7 @@
 //
 TPtrC CVIMPSTUiListBoxModel::ItemAt( TInt aIndex ) const
     {
+	TRACER_AUTO;
     TInt itemcount = -1;
     if( Filter() )
         {
@@ -235,6 +241,7 @@
 //
 TBool CVIMPSTUiListBoxModel::IsContactList( TInt aIndex, RArray<TInt>& aPosArray ) const
     {
+	TRACER_AUTO;
     TInt startInd = aPosArray.Find( aIndex );
     if( KErrNotFound == startInd )
         {
--- a/uiservicetab/vimpstui/src/cvimpstuimenuextension.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstui/src/cvimpstuimenuextension.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -22,8 +22,7 @@
 #include <coemain.h>
 #include <barsread.h>
 #include <eikmenup.h>
-#include    "vimpstdebugprint.h" 
-
+#include "uiservicetabtracer.h"
 
 #include "cvimpstuimenuextension.h"
 #include "ccommandinfo.h"
@@ -40,8 +39,7 @@
 CVIMPSTUIMenuExtension::CVIMPSTUIMenuExtension( )
 : iNewCommands( EServiceTabMenuExtensionFirstFreeCommand )
     {
-    CHAT_DP_FUNC_ENTER("CVIMPSTUIMenuExtension::CVIMPSTUIMenuExtension");
-    CHAT_DP_FUNC_DONE("CVIMPSTUIMenuExtension::CVIMPSTUIMenuExtension");
+	TRACER_AUTO;
     }
 
 // ---------------------------------------------------------------------------
@@ -50,9 +48,9 @@
 // 
 void CVIMPSTUIMenuExtension::ConstructL()
     {   
-    CHAT_DP_FUNC_ENTER("CVIMPSTUIMenuExtension::ConstructL");
+	TRACER_AUTO;
     LoadPluginL( ); 
-    CHAT_DP_FUNC_DONE("CVIMPSTUIMenuExtension::ConstructL");
+    
 
     }
 
@@ -62,10 +60,10 @@
 // 
 CVIMPSTUIMenuExtension* CVIMPSTUIMenuExtension::NewL( )
     { 
-    CHAT_DP_FUNC_ENTER("CVIMPSTUIMenuExtension::NewL");
+	TRACER_AUTO;
     CVIMPSTUIMenuExtension* self = NewLC(  );
     CleanupStack::Pop(self);
-    CHAT_DP_FUNC_DONE("CVIMPSTUIMenuExtension::NewL");
+    
     return self;
     }
 
@@ -75,12 +73,12 @@
 // 
 CVIMPSTUIMenuExtension* CVIMPSTUIMenuExtension::NewLC()
     {
-    CHAT_DP_FUNC_ENTER("CVIMPSTUIMenuExtension::NewL");
+	TRACER_AUTO;
     CVIMPSTUIMenuExtension* self =
         new (ELeave) CVIMPSTUIMenuExtension(  );
     CleanupStack::PushL( self );
     self->ConstructL();
-    CHAT_DP_FUNC_DONE("CVIMPSTUIMenuExtension::NewL");
+    
     return self;
     }
 
@@ -90,7 +88,7 @@
 // 
 CVIMPSTUIMenuExtension::~CVIMPSTUIMenuExtension()
     {   
-    CHAT_DP_FUNC_ENTER("CVIMPSTUIMenuExtension::~CVIMPSTUIMenuExtension");
+	TRACER_AUTO;
     iCommandIdMap.ResetAndDestroy();
     //iCommandIdMap.Close();
     // Reset and destroy the contents of the owned arrays,
@@ -102,7 +100,7 @@
     
     // Close the ECOM interface
     REComSession::FinalClose();
-    CHAT_DP_FUNC_DONE("CVIMPSTUIMenuExtension::~CVIMPSTUIMenuExtension");
+    
     }
  
 // ----------------------------------------------------------------------------
@@ -113,19 +111,19 @@
 //
 void CVIMPSTUIMenuExtension::LoadPluginL( )
     {
-    CHAT_DP_FUNC_ENTER("CVIMPSTUIMenuExtension::LoadPluginL");
+	TRACER_AUTO;
     // plugininfo array, Owned
     RImplInfoPtrArray pluginInfo;
     iPlugins.ResetAndDestroy();
     REComSession::ListImplementationsL( KMenuCustomisationInterfaceUid,pluginInfo );
     TInt pluginCount = pluginInfo.Count();
-    CHAT_DP( D_CHAT_LIT("CVIMPSTUIMenuExtension::LoadPluginL -->plugincount: %d" ),pluginCount );      
+    TRACE("plugincount: %d" ,pluginCount );      
 
     for ( TInt pluginIndex(0); pluginIndex < pluginCount; ++pluginIndex )
         {
-        CHAT_DP( D_CHAT_LIT("Inside for loop" ) );      
+        TRACE("Inside for loop"  );      
         TUid pluginUid = pluginInfo[pluginIndex]->ImplementationUid();
-        CHAT_DP( D_CHAT_LIT("CVIMPSTUIMenuExtension::LoadPluginL -->ImplementationUid: %u" ),pluginUid.iUid );
+        TRACE("ImplementationUid: %u" ,pluginUid.iUid );
         // Creates the plugin and transfers ownership of the services
         // object to the plugin.
         CMenuExtension* plugin = NULL;
@@ -134,20 +132,20 @@
         if(KErrNone != error)
             {
             // handle the error here.
-            CHAT_DP( D_CHAT_LIT("error loading the plugin error: %d" ),error ); 
+        TRACE("error loading the plugin error: %d" ,error ); 
             }
         else
             {
-            CHAT_DP( D_CHAT_LIT("plugin loaded sucessfully" ) ); 
+        TRACE("plugin loaded sucessfully"  ); 
             //if its here its sure that plugin is not null;
             CleanupStack::PushL( plugin);
             
-            CHAT_DP( D_CHAT_LIT("before mapcommandl" ) ); 
+            TRACE("before mapcommandl"  ); 
             //map the plugin commands to servicetab commands,
             //assings the command maintained in the commandpool,
             //for more details see 
             MapCommandL(*plugin,pluginUid.iUid);
-            CHAT_DP( D_CHAT_LIT("after mapcommandl" ) ); 
+            TRACE("after mapcommandl"  ); 
             
             //add the plugin to the array
             CPluginInfo* newPlugin = new ( ELeave ) CVIMPSTUIMenuExtension::CPluginInfo( plugin, pluginUid);    
@@ -161,7 +159,7 @@
         }
     pluginInfo.ResetAndDestroy();
     pluginInfo.Close();
-    CHAT_DP_FUNC_DONE("CVIMPSTUIMenuExtension::LoadPluginL");
+    
 
     }
 
@@ -173,31 +171,30 @@
 //
 void CVIMPSTUIMenuExtension::OfferMenuPaneToPlugins(TInt aPreviousId, CEikMenuPane& aMenuPane,TUint aServiceId)
     {
-    CHAT_DP_FUNC_ENTER("CVIMPSTUIMenuExtension::OfferMenuPaneToPlugins");
-    CHAT_DP( D_CHAT_LIT("CVIMPSTUIMenuExtension::OfferMenuPaneToPlugins --> aServiceId : %u" ), aServiceId ); 
+	TRACER_AUTO;
+	TRACE(" aServiceId : %u" , aServiceId ); 
 
     iMenuPane = &aMenuPane;
     // Get the number of  plugins
     const TInt count = iPlugins.Count();
-    CHAT_DP( D_CHAT_LIT("CVIMPSTUIMenuExtension::OfferMenuPaneToPlugins --> count : %d" ), count ); 
+    TRACE(" count : %d" , count ); 
     // Loop though all the command handlers, If DynInitMenuPaneL leaves for one plugin, a plugin
     // error message will be displayed and the loop will continue with
     // the next command handler. If none of the plugins leave, there will
     // be only one TRAP used.
     for ( TInt index = 0; index < count; ++index )
         {
-        CHAT_DP( D_CHAT_LIT("inside for loop" ) ); 
+    TRACE("inside for loop"  ); 
         //trap is required if one plugin leaves then it should continue with other plugins.
         TRAPD(error,iPlugins[index]->Plugin().DynInitMenuPaneL( aPreviousId,
                                                              aMenuPane,aServiceId,*this ));
         if(KErrNone != error)
             {
             //display the appropriate error note for leaving;
-            CHAT_DP( D_CHAT_LIT("error by one of plugind dyninitmenupanel" ) ); 
+        TRACE("error by one of plugind dyninitmenupanel"  ); 
             }
       
         }
-    CHAT_DP_FUNC_DONE("CVIMPSTUIMenuExtension::OfferMenuPaneToPlugins");
 
     }
 // ----------------------------------------------------------------------------
@@ -207,11 +204,11 @@
 //
 TBool CVIMPSTUIMenuExtension::OfferHandleCommandToPlugins(TInt aCommandId)
     {
-    CHAT_DP_FUNC_ENTER("CVIMPSTUIMenuExtension::OfferHandleCommandToPlugins");
+	TRACER_AUTO;
 
      //Get the number of plugins loaded
      const TInt count = iPlugins.Count();
-     CHAT_DP( D_CHAT_LIT("CVIMPSTUIMenuExtension::OfferHandleCommandToPlugins -->count : %d" ),count ); 
+     TRACE("count : %d" ,count ); 
 
      TBool retval = EFalse;
      // Loop though all the command handlers, 
@@ -228,7 +225,7 @@
              // Report a problem with plugin.
              }
          }
-     CHAT_DP_FUNC_DONE("CVIMPSTUIMenuExtension::OfferHandleCommandToPlugins");
+     
 
      return retval;
     }
@@ -245,8 +242,7 @@
     : iPlugin( aPlugin ),
       iPluginUid( aPluginUid )
     {
-    CHAT_DP_FUNC_ENTER("CVIMPSTUIMenuExtension::CPluginInfo::CPluginInfo");
-    CHAT_DP_FUNC_DONE("CVIMPSTUIMenuExtension::CPluginInfo::CPluginInfo");
+	TRACER_AUTO;
 
     }
 // ----------------------------------------------------------------------------
@@ -257,9 +253,9 @@
 //
 CVIMPSTUIMenuExtension::CPluginInfo::~CPluginInfo() 
     {
-     CHAT_DP_FUNC_ENTER("CVIMPSTUIMenuExtension::LoadPluginL");
+	TRACER_AUTO;
      delete iPlugin;
-     CHAT_DP_FUNC_DONE("CVIMPSTUIMenuExtension::LoadPluginL");
+     
     }
     
 // ----------------------------------------------------------------------------
@@ -270,8 +266,7 @@
 //
 CMenuExtension& CVIMPSTUIMenuExtension::CPluginInfo::Plugin()
     {
-    CHAT_DP_FUNC_ENTER("CVIMPSTUIMenuExtension::CPluginInfo::Plugin");
-    CHAT_DP_FUNC_DONE("CVIMPSTUIMenuExtension::CPluginInfo::Plugin");
+	TRACER_AUTO;
      return *iPlugin;
     }
 
@@ -283,7 +278,7 @@
 // 
 void CVIMPSTUIMenuExtension::MapCommandL( CMenuExtension& aMenuExtension, TInt32  aPluginId )
     { 
-    CHAT_DP_FUNC_ENTER("CVIMPSTUIMenuExtension::MapCommandL");
+	TRACER_AUTO;
 
     TInt res = aMenuExtension.CommandInfoResource();
     if( res != KErrNotFound )
@@ -304,7 +299,7 @@
         aMenuExtension.RegisterCommandMapper( *this );
        
         }
-    CHAT_DP_FUNC_DONE("CVIMPSTUIMenuExtension::MapCommandL");
+   
                             
     }
 // ----------------------------------------------------------------------------
@@ -316,7 +311,7 @@
 TInt CVIMPSTUIMenuExtension::GetOldCommand( TInt32 aPluginId, TInt aNewCommand,
                                     TInt& aOldCommand ) const
     {
-    CHAT_DP_FUNC_ENTER("CVIMPSTUIMenuExtension::GetOldCommand");
+	TRACER_AUTO;
 
     TInt mapCount = iCommandIdMap.Count();
     TInt err( KErrNotFound );
@@ -331,7 +326,7 @@
             break;
             }
         }  
-    CHAT_DP_FUNC_DONE("CVIMPSTUIMenuExtension::GetOldCommand");
+    
 
     return err;
     }
@@ -344,7 +339,7 @@
 TInt CVIMPSTUIMenuExtension::GetNewCommand( TInt32 aPluginId, TInt aOldCommand,
                                     TInt& aNewCommand ) const
     {
-    CHAT_DP_FUNC_ENTER("CVIMPSTUIMenuExtension::GetNewCommand");
+	TRACER_AUTO;
 
     TInt mapCount = iCommandIdMap.Count();
     TInt err( KErrNotFound );
@@ -359,7 +354,7 @@
             break;
             }
         }   
-    CHAT_DP_FUNC_DONE("CVIMPSTUIMenuExtension::GetNewCommand");
+   
 
     return err; 
     }
@@ -369,6 +364,7 @@
 //
 void CVIMPSTUIMenuExtension::AddToAIWCommandMap(TInt aOriginalCommand, TInt aNewCommand)
     {
+	TRACER_AUTO;
     TAIWCommandMapTableItem *item = new TAIWCommandMapTableItem();
     item->iOriginalCmd = aOriginalCommand;
     item->iNewCmd = aNewCommand;
@@ -380,6 +376,7 @@
 //
 TInt CVIMPSTUIMenuExtension::GetNewAIWCommand(TInt aOriginalCommand)
     {
+	TRACER_AUTO;
     TInt count = iAIWCommandMap.Count();
     for( TInt i=0 ; i<count ; i++ )
         {
@@ -405,6 +402,7 @@
 //
 void CVIMPSTUIMenuExtension::SetAIWItemDimmed(TInt aCommand, TBool aHide)
     {
+	TRACER_AUTO;
     TInt cmd = GetNewAIWCommand(aCommand);
     if(cmd != KErrNotFound)
         iMenuPane->SetItemDimmed(cmd,aHide);
--- a/uiservicetab/vimpstui/src/cvimpstuisearchfieldarray.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstui/src/cvimpstuisearchfieldarray.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -27,6 +27,7 @@
 #include <eikcapc.h>
 #include <eikedwin.h>
 #include <AknUtils.h>
+#include "uiservicetabtracer.h"
 
 // --------------------------------------------------------------------------
 // CVIMPSTUiSearchFieldArray::CVIMPSTUiSearchFieldArray
@@ -78,6 +79,7 @@
 											TIMPSTSearchFieldTypes aFieldType /*= EIMAdvancedSearch*/, 
 											TVIMPSTEnums::TVIMPSTSearchKey aSearchKey/* = EVIMPSTSearchKeyUknown*/  )
     {
+	TRACER_AUTO;
     MVIMPSTUiSearchField* newField = CVIMPSTUiSearchField::NewL( aLebal, aFieldDataType, aFieldType , aSearchKey);
     
     iFieldArray.Append( newField ); // ownership to array
@@ -94,6 +96,7 @@
 											TIMPSTSearchFieldTypes aFieldType /*= EIMAdvancedSearch*/, 
 											TVIMPSTEnums::TVIMPSTSearchKey aSearchKey/* = EVIMPSTSearchKeyUknown*/ )
     {
+	TRACER_AUTO;
     MVIMPSTUiSearchField* newField = CVIMPSTUiSearchField::NewL( aLebal, aFieldDataType, aFieldType, aSearchKey );
     
     iFieldArray.InsertL( newField ,aIndex); // ownership to array
@@ -106,6 +109,7 @@
 //
 TBool CVIMPSTUiSearchFieldArray::AreAllUiFieldsEmpty() const
     {
+	TRACER_AUTO;
     const TInt count = iFieldArray.Count();
     
     for(TInt i = 0; i < count; ++i)
@@ -126,6 +130,7 @@
 //
 TBool CVIMPSTUiSearchFieldArray::AreAllUiControlsEmptyL() const
     {
+	TRACER_AUTO;
     const TInt count = iFieldArray.Count();
     
     for(TInt i = 0; i < count; ++i)
@@ -146,6 +151,7 @@
 //
 void CVIMPSTUiSearchFieldArray::ResetFieldData() 
     {
+	TRACER_AUTO;
     const TInt count = iFieldArray.Count();
    
     for(TInt i = 0; i < count; ++i)
@@ -166,6 +172,7 @@
 //
 void CVIMPSTUiSearchFieldArray::CreateUiFieldsFromArrayL(MVIMPSTSearchUiBuilder& aUiBuilder )
 	{
+	TRACER_AUTO;
 	iUiBuilder = NULL; 
 	iUiBuilder = &aUiBuilder;
 	
@@ -185,6 +192,7 @@
 //
 void CVIMPSTUiSearchFieldArray::CreateUiFieldsL(MVIMPSTUiSearchField& aField )
 	{
+	TRACER_AUTO;
 	switch( aField.FieldDataType() )
 		{
 
@@ -251,6 +259,7 @@
 //
 void CVIMPSTUiSearchFieldArray::SetFocusL(TInt aFieldIndex )
     {
+	TRACER_AUTO;
     if (aFieldIndex >= 0 && aFieldIndex < iFieldArray.Count() && iUiBuilder )
         {
         MVIMPSTUiSearchField& field = At( aFieldIndex);
@@ -266,6 +275,7 @@
 //
 TPtrC CVIMPSTUiSearchFieldArray::GetFirstEnteredFieldDataL()
     {
+	TRACER_AUTO;
     const TInt count = iFieldArray.Count();
     
     for(TInt i = 0; i < count; ++i)
@@ -287,6 +297,7 @@
 //
 void CVIMPSTUiSearchFieldArray::GetSearchKeyDataL(RArray<TVIMPSTSearchKeyData>& aKeyDataArray )
     {
+	TRACER_AUTO;
     const TInt count = iFieldArray.Count();
     TPtrC dataPtr(KNullDesC );
     for(TInt i = 0; i < count; ++i)
--- a/uiservicetab/vimpstui/src/cvimpstuisearchquerydialog.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstui/src/cvimpstuisearchquerydialog.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -33,6 +33,7 @@
 #include <barsread.h>
 #include <aknnotewrappers.h>
 #include <hlplch.h>
+#include "uiservicetabtracer.h"
 
 
 
@@ -88,6 +89,7 @@
 //
 void CVIMPSTUiSearchQueryDialog::ConstructL()
     {
+	TRACER_AUTO;
     CAknDialog::ConstructL(R_SEARCH_EDITOR_MENUBAR);
     
     StoreTitlePaneTextL();
@@ -109,6 +111,7 @@
 //
 void CVIMPSTUiSearchQueryDialog::ExecuteLD()
     {
+	TRACER_AUTO;
     CleanupStack::PushL( this );
 
     // Set status pane layout to the Phonebook 2 one
@@ -129,6 +132,7 @@
 TKeyResponse CVIMPSTUiSearchQueryDialog::OfferKeyEventL
         ( const TKeyEvent& aKeyEvent, TEventCode aType )
     {
+	TRACER_AUTO;
     TKeyResponse ret(EKeyWasNotConsumed);
  
     ret = CAknForm::OfferKeyEventL( aKeyEvent, aType );
@@ -184,6 +188,7 @@
 //
 TBool CVIMPSTUiSearchQueryDialog::OkToExitL( TInt aKeycode )
     {
+	TRACER_AUTO;
    TBool ret = EFalse;
    switch( aKeycode )
 	   {
@@ -279,6 +284,7 @@
 //
 inline void CVIMPSTUiSearchQueryDialog::ConstructContextMenuL()
     {
+	TRACER_AUTO;
     CEikMenuBar* newMenuBar = new ( ELeave ) CEikMenuBar();
     CleanupStack::PushL( newMenuBar );
     newMenuBar->ConstructL
@@ -295,6 +301,7 @@
 //
 inline void CVIMPSTUiSearchQueryDialog::ConstructNaviPaneL()
     {
+	TRACER_AUTO;
     CEikStatusPane* statusPane = iEikonEnv->AppUiFactory()->StatusPane();
     if (statusPane && statusPane->PaneCapabilities
             ( TUid::Uid( EEikStatusPaneUidNavi ) ).IsPresent() )
@@ -405,6 +412,7 @@
 //    
 void CVIMPSTUiSearchQueryDialog::UpdateCbasL()
     {
+	TRACER_AUTO;
     if ( !AreAllControlsEmptyL() )
         {
         if ( iCbaCommandSet != R_AVKON_SOFTKEYS_OK_CANCEL__OK )
@@ -432,6 +440,7 @@
 //    
 void CVIMPSTUiSearchQueryDialog::SetCbaCommandSetL( TInt aResourceId )
     {
+	TRACER_AUTO;
     CEikButtonGroupContainer& cba = ButtonGroupContainer();
     cba.SetCommandSetL( aResourceId );
     iCbaCommandSet = aResourceId;
@@ -452,6 +461,7 @@
 //
 void CVIMPSTUiSearchQueryDialog::ShowSearchUiFieldsL()
     {
+	TRACER_AUTO;
     TInt count = iUiFieldArray.Count();
     for( TInt i = 0; i< count; i++ )
 	    {
@@ -478,6 +488,7 @@
 //
 TBool CVIMPSTUiSearchQueryDialog::IsBasicFieldAvailableL()
     {
+	TRACER_AUTO;
     TInt count = iUiFieldArray.Count();
     for( TInt i = 0; i< count; i++ )
 	    {
--- a/uiservicetab/vimpstui/src/cvimpstuisearchview.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstui/src/cvimpstuisearchview.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -78,6 +78,7 @@
 #include <avkon.hrh>
 #include <eikspane.h>
 #include <StringLoader.h>
+#include "uiservicetabtracer.h"
 
 // help launch
 #include <hlplch.h>
@@ -118,6 +119,7 @@
 //
 void CVIMPSTUiSearchView::ConstructL()
     {
+	TRACER_AUTO;
     ViewBaseConstructL( KIMCONTACTSEXTNIMPLEMENTATIONUID, iSearchViewId ); 
     
     //Get SearchMgr
@@ -201,7 +203,7 @@
 //
 void CVIMPSTUiSearchView::HandleCommandL( TInt aCommand )
     {
-	
+	TRACER_AUTO;
    	switch ( aCommand ) 
 		{
 		//Next two commands have same function
@@ -298,6 +300,7 @@
 void CVIMPSTUiSearchView::DynInitMenuPaneL( TInt aResourceId,
 									 CEikMenuPane* aMenuPane )
 	{
+	TRACER_AUTO;
     if( aResourceId == R_EXTENSION_MANAGER_MENU)
 	    {
 	    //add search view menu items 
@@ -362,6 +365,7 @@
         									TUid /*aCustomMessageId*/, 
         									const TDesC8&  /*aCustomMessage*/ )
     {
+	TRACER_AUTO;
     // the title pane is set to " Basic Search" 
     // which is same as Search Form s  title pane text 
  
@@ -422,6 +426,7 @@
 //
 void CVIMPSTUiSearchView::DoDeactivate()
 	{
+	TRACER_AUTO;
 	// set this flag to Efalse because  user cant initiate a search from search view
 	iSearchInitiated = EFalse;
  	if (iContainer)
@@ -471,7 +476,7 @@
 void CVIMPSTUiSearchView::CommandFinishedL(
                 const MVIMPSTCmd& aCommand )
 {
-
+	TRACER_AUTO;
 	//handle the observer for commands issues through HandleCommandL()
 	
 	switch (aCommand.CommandId())
@@ -535,6 +540,7 @@
 //
 TBool CVIMPSTUiSearchView::HideAddToContactsL() const
 	{
+	TRACER_AUTO;
 	TBool hide(ETrue);
 	TInt curIndex = iContainer->ListBox()->CurrentItemIndex();
 	if( curIndex >=0)
@@ -556,6 +562,7 @@
 //
 void CVIMPSTUiSearchView:: SearchContactsL()
 	{
+	TRACER_AUTO;
 	if( iContainer )
 		{
 		iContainer->UpdateCbaL( ETrue );	
@@ -645,6 +652,7 @@
 //
 void CVIMPSTUiSearchView::UpdateNaviPaneTextL( )
 	{
+	TRACER_AUTO;
 	// Change the navigation pane from tabs to text label    
     CEikStatusPane* sp = CEikonEnv::Static()->AppUiFactory()->StatusPane();
     CAknNavigationControlContainer* np =
@@ -703,6 +711,7 @@
 //
 void CVIMPSTUiSearchView::LaunchHelpL( const TDesC& aContext )
     {
+	TRACER_AUTO;
     CArrayFix< TCoeHelpContext >* cntx = new( ELeave ) CArrayFixFlat< TCoeHelpContext >( KHelpContextSize );
     CleanupStack::PushL( cntx );
 
@@ -720,6 +729,7 @@
 //
 TInt CVIMPSTUiSearchView::SearchCallbackL(TAny* aInstance)
     {
+	TRACER_AUTO;
     static_cast<CVIMPSTUiSearchView*> (aInstance)->SearchContactsL();
     return 0; // ignored by CAsychCallBack
     }
--- a/uiservicetab/vimpstui/src/cvimpstuisearchviewcontrol.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstui/src/cvimpstuisearchviewcontrol.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -27,7 +27,7 @@
 #include "cvimpstuisearchview.h"
 #include "vimpstui.hrh"
 #include "vimpstutilsdialog.h"
-#include    "vimpstdebugprint.h" 
+#include "uiservicetabtracer.h"
 // imlauncher
 #include <imcvlauncher.h>
 
@@ -225,6 +225,7 @@
 void CVIMPSTUiSearchViewControl::HandleListBoxEventL( CEikListBox* /*aListBox*/,
 												 TListBoxEvent aEventType )
     {
+	TRACER_AUTO;
     switch(aEventType)
         {
 
@@ -288,6 +289,7 @@
 // ---------------------------------------------------------
 void CVIMPSTUiSearchViewControl::OpenConversationL(const TDesC& aContactId )
 	{
+	TRACER_AUTO;
 	MVIMPSTProcessArray& arrayProcess = iCommandHandler.GetProcessInterface();
 	TInt indexInTabbedView = arrayProcess.FindContactIndexL( aContactId );
 	TInt result = EAknSoftkeyOk;
@@ -336,6 +338,7 @@
 //
 void CVIMPSTUiSearchViewControl::SizeChanged()
 	{
+	TRACER_AUTO;
 	if ( iListBox )
         {
         iListBox->SetRect(Rect());
@@ -381,6 +384,7 @@
 TKeyResponse CVIMPSTUiSearchViewControl::OfferKeyEventL( const TKeyEvent& aKeyEvent,
 													TEventCode aType )
 	{
+	TRACER_AUTO;
 	TKeyResponse result = EKeyWasNotConsumed;
 
     // Offer key event first to the key event handler
@@ -422,7 +426,7 @@
 //
 void CVIMPSTUiSearchViewControl::UpdateListBoxL(RArray<TVIMPSTSearchData> aSerachData)
     {
-	
+	TRACER_AUTO;
 	TInt granularity( iItemArray->Count() );
 	++granularity;
 	
@@ -487,6 +491,7 @@
 //
 HBufC* CVIMPSTUiSearchViewControl::GetFocusedContactLC() const
 	{
+	TRACER_AUTO;
 	HBufC* retText=NULL;
 	TInt curIndex = iListBox->CurrentItemIndex();
     TPtrC ptr= iItemArray->MdcaPoint(curIndex);
@@ -508,6 +513,7 @@
 //
 void CVIMPSTUiSearchViewControl::ClearListBoxContents()
     {
+	TRACER_AUTO;
 	iItemArray->Reset();
     TRAPD( err, iListBox->HandleItemRemovalL() );
     if( err != KErrNone )
@@ -523,6 +529,7 @@
 //
 void CVIMPSTUiSearchViewControl::UpdateCbaL( TBool  aUseDefaultCba /*= EFalse*/ )
     {
+	TRACER_AUTO;
     TInt cbaRes = R_SERVTAB_SOFTKEYS_OPTIONS_BACK__EMPTY;
     iCurrentCmdToExe = -1;
     TInt index = KErrNotFound;
@@ -547,20 +554,20 @@
 		{
 		if(iSearchView.HideAddToContactsL())
 		    {			
-		    CHAT_DP( D_CHAT_LIT("CVIMPSTUiDoubleListboxArray::HideAddToContactsL after" ) );		
+		   TRACE(" after"  );		
 		    HBufC* contactId = GetFocusedContactLC();
 		    TInt curIndex = iCommandHandler.GetProcessInterface().FindContactIndexL(*contactId); 
 		    TVIMPSTEnums::TOnlineStatus onlinestatus = iCommandHandler.GetProcessInterface().GetOnlineStatusL(curIndex);   
 		    CleanupStack::PopAndDestroy(contactId);
 		    if( TVIMPSTEnums::EPending == onlinestatus )
 		        {
-		        CHAT_DP( D_CHAT_LIT("CVIMPSTUiDoubleListboxArray::EPending in" ) );		
+		        TRACE(" EPending in"  );		
 		        cbaRes = R_SERVTAB_SOFTKEYS_OPTIONS_BACK__EMPTY;
 		        iCurrentCmdToExe = -1;    
 		        }
 		    else
 		        {
-		        CHAT_DP( D_CHAT_LIT("CVIMPSTUiDoubleListboxArray::ESearchOpenConversation" ) );		
+		        TRACE("ESearchOpenConversation"  );		
 		        cbaRes = R_SERVTAB_SOFTKEYS_OPTION_SEARCH_OPENCONV__BACK;
 		        iCurrentCmdToExe = ESearchOpenConversation;    
 		        }
--- a/uiservicetab/vimpstui/src/cvimpstuisinglelistboxarray.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstui/src/cvimpstuisinglelistboxarray.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -32,6 +32,7 @@
 #include    <AknIconArray.h>
 #include    <eikclbd.h>
 #include    <AknsConstants.h>
+#include "uiservicetabtracer.h"
 
 #include    <vimpstui.mbg>
 
@@ -43,6 +44,7 @@
 							            CVIMPSTUiSingleStyleListBox& aListBox
 							            )
     {
+	TRACER_AUTO;
     CVIMPSTUiSingleListboxArray* self = new (ELeave) CVIMPSTUiSingleListboxArray( aItemModel, 
     								aListboxData, aListBox);
     								
@@ -73,7 +75,7 @@
 // Symbian OS default constructor can leave.
 void CVIMPSTUiSingleListboxArray::ConstructL()
 	{
-	
+	TRACER_AUTO;
 	 // maximum length of icons appended to identification
     // There can be four icons (A+B and two on D-column)
     iMaxLengthOfIcons =
@@ -107,6 +109,7 @@
 //
 TPtrC16 CVIMPSTUiSingleListboxArray::MdcaPoint( TInt aIndex ) const
 	{
+	TRACER_AUTO;
 	// Although this is a const method, we do change the member data.
 	// This is done because of performance
 	// -> no need to create new buffer every time.
@@ -146,6 +149,7 @@
                                       TInt aIndex
                                       ) const
     {
+	TRACER_AUTO;
     // A-column
      aBuffer.Append( KEmptyIconA );
     // B-column
--- a/uiservicetab/vimpstui/src/cvimpstuisinglelistboxtabviewcontrol.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstui/src/cvimpstuisinglelistboxtabviewcontrol.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -31,7 +31,7 @@
 #include "mvimpstengine.h"
 #include "cvimpststoragemanagerfactory.h"
 #include "mvimpststorageserviceview.h"
-#include "vimpstdebugtrace.h"
+
 // system include
 #include 	<aknenv.h>
 #include	<aknlists.h>
@@ -48,6 +48,7 @@
 
 #include    <MVPbkContactStoreListObserver.h>
 #include    "mvimpstenginepresencesubservice.h"
+#include "uiservicetabtracer.h"
 
 #include <aknlayoutscalable_avkon.cdl.h>
 // imlauncher
@@ -93,6 +94,7 @@
 //
 void CVIMPSTUiSingleListBoxTabViewControl::ConstructL()
     {
+	TRACER_AUTO;
     CreateWindowL();
    
     // register to get the call back for any array data change
@@ -154,6 +156,7 @@
         CVIMPSTUiBrandData& aBrandHandler,
         MVIMPSTEngine& aEngine)
     {
+	TRACER_AUTO;
     CVIMPSTUiSingleListBoxTabViewControl* self = NewLC(aTabbedView,aKeyEventHandler,
     			aCommandHandler, aServiceId, aBrandHandler,aEngine);
     CleanupStack::Pop(self);
@@ -171,6 +174,7 @@
         CVIMPSTUiBrandData& aBrandHandler,
         MVIMPSTEngine& aEngine)
     {
+	TRACER_AUTO;
     CVIMPSTUiSingleListBoxTabViewControl* self =
         new (ELeave) CVIMPSTUiSingleListBoxTabViewControl(aTabbedView,aKeyEventHandler,
         aCommandHandler, aServiceId, aBrandHandler,aEngine);
@@ -517,14 +521,14 @@
 void CVIMPSTUiSingleListBoxTabViewControl::SetListEmptyTextL(TInt aResourceId)
     {
     HBufC* msgText;
-    TRACE( T_LIT("CVIMPSTUiSingleListBoxTabViewControl:SetListEmptyTextL:Start"));    
+    TRACER_AUTO;    
     // Get Service Name from Engine , load string from resource and display.
     // This text is shown to tell the user to restart phone to get the service again.
     TPtrC serviceNamePtr(iEngine.ServiceName());
     msgText = StringLoader::LoadLC(aResourceId, serviceNamePtr, iCoeEnv);
     iListBox->View()->SetListEmptyTextL(*msgText);
-    TRACE( T_LIT("Display Text %S"), msgText );
-    TRACE( T_LIT("CVIMPSTUiSingleListBoxTabViewControl:SetListEmptyTextL:End"));
+    TRACE( "Display Text %S", msgText );
+    
     CleanupStack::PopAndDestroy(msgText);
     }
 
@@ -643,11 +647,13 @@
 	{
 	TInt index = CurrentItemIndex();   
 	TPtrC seletctedItem = iArrayProcess.GetItemUserId(index) ;
-	if( index< 0 || !(seletctedItem.Length()) )
+	if( index< 0 )
 		{
-		// return if item not found or there is no user id.
+		// return if item not found.
 		return;	
 		}
+      if(seletctedItem.Length())
+		{
    // No need to check for the presence of the contact as in singleline 
    // list box there is no presence, hence directly open the ocnversation view.
     TVwsViewId activeViewId;
@@ -656,6 +662,16 @@
     iArrayProcess.ResetPendingMsg( index );
     // imlauncher call for luanching the conversationview with seletced user id
     IMCVLauncher::LaunchImConversationViewL(activeViewId, iServiceId, seletctedItem );  
+		}
+	else
+		{
+	      //When there is no XSP Id present it comes to here
+		//Displaying a note that there is no XSP ID
+	      HBufC* note = NULL;
+	      note = StringLoader::LoadLC( R_QTN_SERVTAB_NOXSP_ERROR );
+	      VIMPSTUtilsDialog::DisplayNoteDialogL( *note );
+		CleanupStack::PopAndDestroy( note );
+		}
 	}
 // ---------------------------------------------------------
 // CVIMPSTUiSingleListBoxTabViewControl::UpdateViewL
@@ -665,6 +681,7 @@
 void CVIMPSTUiSingleListBoxTabViewControl::UpdateViewL( 
 				TInt aIndex, TVIMPSTEnums::TItem aType)
     {
+	TRACER_AUTO;
     TInt index = KErrNotFound;
     if( aIndex < 0 )
     	{
@@ -733,6 +750,7 @@
 //
 void CVIMPSTUiSingleListBoxTabViewControl::ActivateFindPaneL()
     {
+	TRACER_AUTO;
     if( !iFindbox )
         {
         iFindbox = CAknSearchField::NewL( *this,
@@ -767,6 +785,7 @@
 //
 void CVIMPSTUiSingleListBoxTabViewControl::DeactivateFindPaneL()
     {
+	TRACER_AUTO;
     if( !iFindbox )
 	    {
 	    return;	
@@ -987,6 +1006,7 @@
 //
 void CVIMPSTUiSingleListBoxTabViewControl::UpdateCbaL( TBool aUseDefaultCba /*= EFalse*/ )
     {
+	TRACER_AUTO;
     TInt cbaRes = R_SERVTAB_SOFTKEYS_OPTIONS_EXIT__EMPTY;
     iCurrentCmdToExe = -1;
     if( !iCbaLock )
--- a/uiservicetab/vimpstui/src/cvimpstuisinglestylelistbox.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstui/src/cvimpstuisinglestylelistbox.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -19,6 +19,7 @@
 #include "cvimpstuisinglestylelistbox.h"
 #include "cvimpstuilistboxmodel.h"
 #include <aknlists.h>
+#include "uiservicetabtracer.h"
 
 // ======== MEMBER FUNCTIONS ========
 
@@ -45,6 +46,7 @@
 //
 void CVIMPSTUiSingleStyleListBox::SetContactListModelL(MVIMPSTProcessArray& aContactListModel )
     {
+	TRACER_AUTO;
     if ( iModel )
         {
         static_cast<CVIMPSTUiListBoxModel*>(iModel)->SetContactListModel( aContactListModel );
--- a/uiservicetab/vimpstui/src/cvimpstuitabbedview.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstui/src/cvimpstuitabbedview.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -91,7 +91,7 @@
 #include <ccafactory.h>
 #include <mccaconnection.h>
 
-#include "vimpstdebugprint.h"
+#include "uiservicetabtracer.h"
 
 //AIW - VOIP
 #include <aiwdialdataext.h>
@@ -1478,6 +1478,7 @@
 // --------------------------------------------------------------------------
 void CVIMPSTUiTabbedView::ShowErrorNoteL(TInt aError )
 	{
+	TRACER_AUTO;
 	HBufC* textResource = NULL;
 	switch( aError)
 		{
@@ -1633,6 +1634,7 @@
 //
 void CVIMPSTUiTabbedView::AddContactL( const TInt aResouceId, const TDesC& aUserId )
     {
+	TRACER_AUTO;
     MVIMPSTStorageServiceView* storage = CVIMPSTStorageManagerFactory::ContactListInterfaceL(iServiceId);    
     if (storage)
         {
@@ -1741,6 +1743,7 @@
 //
 void CVIMPSTUiTabbedView::CreateOrLinkToPhoneBookL(TInt aCommand )
 	{
+	TRACER_AUTO;
 	TInt index = CurrentItemIndex();
 	if( index <= 0 )
 		{
@@ -1787,6 +1790,7 @@
 //
 void CVIMPSTUiTabbedView::EditContactL()
     {
+	TRACER_AUTO;
     MVIMPSTStorageServiceView* storage = CVIMPSTStorageManagerFactory::ContactListInterfaceL(iServiceId);    
     if (storage)
         {        
@@ -1834,6 +1838,7 @@
 // --------------------------------------------------------------------------
 void CVIMPSTUiTabbedView::AddContactL(RPointerArray<HBufC> aContacts)
     {
+	TRACER_AUTO;
     TInt count = aContacts.Count();
 
     switch( count )
@@ -1892,6 +1897,7 @@
 //
 void CVIMPSTUiTabbedView::CopyToPhoneBookL()
     {
+	TRACER_AUTO;
     TInt index = CurrentItemIndex();
 
     TPtrC name( KNullDesC );
@@ -1922,6 +1928,7 @@
 //
 void CVIMPSTUiTabbedView:: DeleteContactL()
     {
+	TRACER_AUTO;
     TInt index = CurrentItemIndex();
     HBufC* deletePrompt = NULL;
     TPtrC name( KNullDesC );
@@ -1966,6 +1973,7 @@
 //
 void CVIMPSTUiTabbedView::ChangeStatusProcessL()
     {
+	TRACER_AUTO;
     if( iEngine.ServiceState() )
         {
         // Check variation
@@ -2191,7 +2199,7 @@
 //
 CAknIconArray* CVIMPSTUiTabbedView::LoadOwnStatusIconsL()
     {
-
+	TRACER_AUTO;
     CAknIconArray* icons = iBrandHandler->LoadOwnStatusIconsLC();
     CleanupStack::Pop( icons );
     return icons;
@@ -2205,6 +2213,7 @@
 TInt CVIMPSTUiTabbedView::AskStatusMessageL( TVIMPSTEnums::TOnlineStatus aStatus,
         TBool aUpdateToNetwork )
     {
+	TRACER_AUTO;
     CDesCArray* statusMessages = new( ELeave )CDesCArrayFlat(4);
     CleanupStack::PushL( statusMessages );
 
@@ -2287,6 +2296,7 @@
 //
 void CVIMPSTUiTabbedView::ReadStatusMessagesL( CDesCArray& aArray, TVIMPSTEnums::TOnlineStatus aStatus)
     {
+	TRACER_AUTO;
     RBuf buffer;
     buffer.CreateL( RProperty::KMaxPropertySize );
     CleanupClosePushL( buffer );
@@ -2368,7 +2378,7 @@
 
 void CVIMPSTUiTabbedView::WriteStatusMessagesL( MDesCArray& aArray, TVIMPSTEnums::TOnlineStatus aStatus )
     {
-
+	TRACER_AUTO;
     TPtrC firstLine = aArray.MdcaPoint( 0 );
     TInt countOfMessages( 0 );
     TInt arrayCount( aArray.MdcaCount() );
@@ -2442,6 +2452,7 @@
 //
 void CVIMPSTUiTabbedView::ChangeOwnAvatarL(const TDesC& aFileName, const TDesC8& aMimeType )
 	{
+	TRACER_AUTO;
 	MVIMPSTProcessArray& arrayprocess = iCommandHandler.GetProcessInterface();
 	TAvatarData avatarData;
 	avatarData.iStatus = arrayprocess.GetOnlineStatusL(0);
@@ -2467,6 +2478,7 @@
 //
 void CVIMPSTUiTabbedView:: SearchContactsL()
 	{
+	TRACER_AUTO;
 	CVIMPSTUiSearchFieldArray& fieldArray = iExtensionService.GetSearchFieldArray(); 
 
 	if( !fieldArray.Count() )
@@ -2497,6 +2509,7 @@
 // 
 void CVIMPSTUiTabbedView::LaunchViewL( TInt aViewId )
     {
+	TRACER_AUTO;
 
     CPbk2ViewState* state = CPbk2ViewState::NewLC( );
 
@@ -2518,6 +2531,7 @@
 //
 void CVIMPSTUiTabbedView::CreateToolBarL()
     {
+	TRACER_AUTO;
     if ( AknLayoutUtils::PenEnabled() )
         {
         TInt resourceId = 0;
@@ -2564,6 +2578,7 @@
 //
 void CVIMPSTUiTabbedView::UpdateToolbarL()
     {
+	TRACER_AUTO;
     if ( AknLayoutUtils::PenEnabled() && iFixedToolbar && iContainer )    
         {
         TInt currentItemIndex = iContainer->CurrentItemIndex();        
@@ -2699,6 +2714,7 @@
 //        
 void CVIMPSTUiTabbedView::OfferToolbarEventL( TInt aCommand )
     {
+	TRACER_AUTO;
     if ( AknLayoutUtils::PenEnabled() )
         {
         switch( aCommand )
@@ -2754,6 +2770,7 @@
 // 
 void CVIMPSTUiTabbedView::ProcessFriendRequestL()
     {
+	TRACER_AUTO;
     TInt index = CurrentItemIndex();    
     if( index <= 0 )
         {
@@ -2893,7 +2910,8 @@
 // ---------------------------------------------------------
 //
 void CVIMPSTUiTabbedView::ShowURLQueryL( )
-    {    
+    {   
+	TRACER_AUTO;
     // Open browser with the specified URL
     RBuf buffer;
     buffer.CreateL( RProperty::KMaxPropertySize );
@@ -2926,6 +2944,7 @@
 //
 void CVIMPSTUiTabbedView::LoginL()
     {
+	TRACER_AUTO;
     TBool IsPasswordSet = iEngine.IsPasswordAvailableL();
 
     if(iUserId)
@@ -2985,6 +3004,7 @@
 //
 TBool CVIMPSTUiTabbedView::IsURLQueryToBeShownL()
     {
+	TRACER_AUTO;
     TBool urlQueryShown = EFalse;
     
     RBuf buffer;
@@ -3013,6 +3033,7 @@
 //
 void CVIMPSTUiTabbedView::ShowUseExistingOrCreateNewMenuL( TInt& aMenuChoise )
     {
+	TRACER_AUTO;
     TInt rvalue( KErrGeneral );
 
     CAknSinglePopupMenuStyleListBox* accountList =
@@ -3074,6 +3095,7 @@
 //
 TInt CVIMPSTUiTabbedView::ShowNewUpdateQueryL()
     {
+	TRACER_AUTO;
     TInt retValue( KErrCancel );
 
     CAknSinglePopupMenuStyleListBox* selectionList =
@@ -3126,6 +3148,7 @@
 //
 void CVIMPSTUiTabbedView::ShowLoginDialogL( TDes& aUserName, TDes& aPassword )
     {
+	TRACER_AUTO;
     HBufC* userName = HBufC::NewLC( KUsernameMaxLength );
     HBufC* passWord = HBufC::NewLC( KPasswordMaxLength );
 
@@ -3196,6 +3219,7 @@
 //
 void CVIMPSTUiTabbedView::CloseConversationL()
     {
+	TRACER_AUTO;
     TInt index = CurrentItemIndex();    
     if( index <= 0 )
         {
@@ -3230,6 +3254,7 @@
 //
 void CVIMPSTUiTabbedView::HandleServerAppExit( TInt /*aReason*/ )
     {
+	TRACER_AUTO;
     TInt error = KErrNone;
     TRAPD(leaveErr,error = ShowTermsofuseL());
     if(KErrNone == error && KErrNone == leaveErr)
@@ -3245,6 +3270,7 @@
 //
 TInt CVIMPSTUiTabbedView::ShowTermsofuseL()
     {
+	TRACER_AUTO;
     TInt retVal = KErrNone;
     // get the  ETOUDlgOff if its set don't show TOU dialog else show TOU 
     TInt termsOfUseDisabled = KErrNone;
@@ -3272,6 +3298,7 @@
 //
 void CVIMPSTUiTabbedView::MakeVoipCallL()
     {
+	TRACER_AUTO;
     // making voip call will take in three steps
     // pop up the selection dialog
     // select adress
@@ -3319,6 +3346,7 @@
 // ---------------------------------------------------------
 void CVIMPSTUiTabbedView::ExecuteAiwCallL( const TDesC& aSelectedAddress )
 	{
+	TRACER_AUTO;
 	//aSelectedAdress will be an xsp id of format "ServiceName:UserId"
 	//here we need to truncate the servicename and pass only the UserId
     //Find if aSelectedAdress of type "ServiceName:UserId"
@@ -3369,6 +3397,7 @@
 
 void CVIMPSTUiTabbedView::LaunchHelpL( const TDesC& aContext )
     {
+	TRACER_AUTO;
     CArrayFix< TCoeHelpContext >* cntx = new( ELeave ) CArrayFixFlat< TCoeHelpContext >( KHelpContextSize );
     CleanupStack::PushL( cntx );
 
@@ -3395,6 +3424,7 @@
 //
 TBool CVIMPSTUiTabbedView::CancelLoginSupportedL()
     {
+	TRACER_AUTO;
     TInt cancelNotSupported(KErrNone);
     TBool returnValue = ETrue;
     // read from the cenrep settings 
@@ -3414,6 +3444,7 @@
 //
 TBool CVIMPSTUiTabbedView::ChangeConnectionSupportedL()
     {
+	TRACER_AUTO;
     TInt changeConnectionSupported(KErrNone);
     TBool returnValue = ETrue;
     // read from the cenrep settings 
@@ -3436,6 +3467,7 @@
         CAiwGenericParamList& aEventParamList,
         const CAiwGenericParamList& /* aInParamList */)
 	{
+	TRACER_AUTO;
 	TInt result = 0;
 		if( (aCmdId == KAiwCmdSelect) && (aEventId == KAiwEventCompleted && iSelectedAction == ECreateXSPCall ))
 			{
@@ -3527,6 +3559,7 @@
 //
 void CVIMPSTUiTabbedView::BlockContactL(TBool aBlock /* = EFalse */)
     {
+	TRACER_AUTO;
     TInt index = CurrentItemIndex();
     if(iContainer)
         {
@@ -3581,6 +3614,7 @@
 // --------------------------------------------------------------------------
 void CVIMPSTUiTabbedView::ShowBlockedContactListL()
 	{
+	TRACER_AUTO;
 	if(!iIsToolBarHidden)
 	    {
 	    ShowHideFixedToolbarL(EFalse);
@@ -3600,7 +3634,8 @@
 // --------------------------------------------------------------------------
 void CVIMPSTUiTabbedView::HandleContactSelectionCompleteL()
 	{
-	 CHAT_DP_FUNC_ENTER("CVIMPSTUiTabbedView::HandleContactSelectionCompleteL");
+	TRACER_AUTO;
+	
 	 if( iWaitNote )
 	        {
 	        delete iWaitNote;
@@ -3612,7 +3647,7 @@
 
         if ( iSelectedData.iPackedLinks )                     //add the selected contact to the service tab
             {
-            CHAT_DP_FUNC_DP("CVIMPSTUiTabbedView","process contact");
+            TRACE("process contact");
             if( iSelectedAction == CVIMPSTUiTabbedView::EInvitAcceptCreateNew )
                    {
                  iCommandHandler.HandleCommandL( ECmdProcessAcceptedContactNew, this, (TAny*)&iSelectedData );
@@ -3629,7 +3664,7 @@
         //invitation has been accepted using update existing contact
         // updation is successful
         // send accepted request to command/engine/server   
-        CHAT_DP_FUNC_DP("HandleSessionContextEventL","frnrequest accepted");
+        TRACE("frnrequest accepted");
         iCommandHandler.HandleCommandL(EFriendAccpeted, this, iFriendRequestId );
         }
      else if(  iSelectedAction == CVIMPSTUiTabbedView::EContactCreateNew ||  iSelectedAction == CVIMPSTUiTabbedView::EContactAddFromContacts)
@@ -3652,7 +3687,7 @@
 
          if ( iSelectedData.iPackedLinks )                     //add the selected contact to the service tab
              {
-             CHAT_DP_FUNC_DP("CVIMPSTUiTabbedView","process contact");
+           TRACE("process contact");
              if( iSelectedAction == CVIMPSTUiTabbedView::EContactCreateNew )
                  {
                  iCommandHandler.HandleCommandL( ECmdProcessSelectedContactNew, this, (TAny*)&iSelectedData );
@@ -3682,7 +3717,7 @@
 		 iQueryResult = NULL;	
 		 }
     iSelectedAction = KErrNotFound;  // This is to clear the previous selected action.
-    CHAT_DP_FUNC_DONE("CVIMPSTUiTabbedView::HandleContactSelectionCompleteL");  
+      
 	}
 
 // --------------------------------------------------------------------------
@@ -3703,7 +3738,7 @@
     below code need to remove and new API will be called.
     ***************************************************************************************
     */
-        
+	TRACER_AUTO; 
     _LIT(KStartupParams, "ACTION=4 SERID=");
     _LIT8(KStartupParams8, "ACTION=4 SERID=");
     //Take CSC UID (In future if this UID change , we also need to change it otherwise we will not be able
@@ -3755,6 +3790,7 @@
 
 void CVIMPSTUiTabbedView::ReInitializeServiceHandlerL()
     {
+	TRACER_AUTO;
     if(iIsServiceHandleReSet )
         {
         if(iServiceHandler)
@@ -3776,6 +3812,7 @@
 
 void CVIMPSTUiTabbedView::LaunchFetchDialogL()
     {
+	TRACER_AUTO;
     iSelectedAction = EContactAddFromContacts;
     MVIMPSTStorageServiceView* storage = CVIMPSTStorageManagerFactory::ContactListInterfaceL( iEngine.ServiceId() ) ;
     TBool localStore = EFalse;
@@ -3807,6 +3844,7 @@
 
 void CVIMPSTUiTabbedView::ExecuteSingleItemFetchL( TAiwSingleEntrySelectionDataV2 aData )
     {
+	TRACER_AUTO;
     if(iAiwParamList)
            {
            delete iAiwParamList;
@@ -3833,6 +3871,7 @@
 // --------------------------------------------------------------------------
 void CVIMPSTUiTabbedView::ExecuteMultipleItemFetchL( TAiwMultipleEntrySelectionDataV2 aData )
     {
+	TRACER_AUTO;
     if(iAiwParamList)
         {
         delete iAiwParamList;
--- a/uiservicetab/vimpstui/src/cvimpstuitermsofusedialoghandler.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstui/src/cvimpstuitermsofusedialoghandler.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -22,6 +22,7 @@
 #include "cvimpstsettingsstore.h"
 #include <vimpstuires.rsg>
 #include <avkon.hrh>
+#include "uiservicetabtracer.h"
 
 
 
@@ -39,6 +40,7 @@
         TInt& aServiceId,
         HBufC* aToUMsg/* = NULL*/)
     {   
+	TRACER_AUTO;
     // Show Terms of Use, return KErrCancel if user does not accept them,
     // otherwise continue
     if ( !DisplayTermsOfUseAndQueryLD(aToUMsg) )
@@ -63,6 +65,7 @@
 //
 TBool CVIMPSTUiTermsOfUseDialogHandler::DisplayTermsOfUseAndQueryLD(HBufC* aToUMsg/* = NULL*/)
     {
+	TRACER_AUTO;
     TInt retVal = EAknSoftkeyCancel;    
     CVIMPSTUiTermsOfUseDlg* dlg = CVIMPSTUiTermsOfUseDlg::NewLC(  );
     dlg->SetToUMsgL(aToUMsg);
--- a/uiservicetab/vimpstui/src/cvimpstuitermsofusedlg.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstui/src/cvimpstuitermsofusedlg.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -55,6 +55,7 @@
 
 #include    <StringLoader.h>
 #include    "vimpstui.hrh"
+#include "uiservicetabtracer.h"
 const TInt KTextMargin = 100;  // normal text margin in twips
 const TInt KSpaceBefore = 10;  // space before each paragraph (twips)
 const TInt KPixelsBetweenLines = 5; // pixels between text lines
@@ -106,7 +107,7 @@
 //
 void CVIMPSTUiTermsOfUseDlg::ConstructL( )
     {
-    
+	TRACER_AUTO;
     iBgContext = CAknsBasicBackgroundControlContext::NewL( 
         KAknsIIDQsnBgAreaMainMessage, Rect(), ETrue );
     
@@ -160,7 +161,8 @@
 // ---------------------------------------------------------
 //
 void CVIMPSTUiTermsOfUseDlg::PreLayoutDynInitL()
-	{						
+	{
+	TRACER_AUTO;
 	CAknDialog::PreLayoutDynInitL();
     AknsUtils::RegisterControlPosition( this );
     
@@ -203,6 +205,7 @@
 //
 void CVIMPSTUiTermsOfUseDlg::PostLayoutDynInitL()
     {
+	TRACER_AUTO;
     CAknDialog::PostLayoutDynInitL();
     
    
@@ -273,6 +276,7 @@
 TKeyResponse CVIMPSTUiTermsOfUseDlg::OfferKeyEventL( const TKeyEvent& aKeyEvent,
                                                    TEventCode aType )
 	{
+	TRACER_AUTO;
     if( aType != EEventKey )
         {
         return EKeyWasNotConsumed;
@@ -328,7 +332,7 @@
 
 void CVIMPSTUiTermsOfUseDlg::HandleScrollEventL(CEikScrollBar* aScrollBar, TEikScrollEvent aEventType)
     {
-
+	TRACER_AUTO;
     if( !aScrollBar )
         {
         return ;
@@ -457,6 +461,7 @@
 //
 void CVIMPSTUiTermsOfUseDlg::SetNewTitleTextL()
     {
+	TRACER_AUTO;
     CAknTitlePane* title = GetTitlePaneInstanceL();
     
     // Store old one
@@ -488,6 +493,7 @@
 //
 CAknTitlePane* CVIMPSTUiTermsOfUseDlg::GetTitlePaneInstanceL() const
     {
+	TRACER_AUTO;
     CAknTitlePane* title = static_cast< CAknTitlePane* >
         ( CEikonEnv::Static()->AppUiFactory()->StatusPane()->ControlL(
                                         TUid::Uid( EEikStatusPaneUidTitle ) ) );
@@ -506,6 +512,7 @@
 //
 void CVIMPSTUiTermsOfUseDlg::RestoreTitlePaneTextL() const
     {
+	TRACER_AUTO;
     CAknTitlePane* title = GetTitlePaneInstanceL();
 
     if ( iOldTitleText )
@@ -535,6 +542,7 @@
 //
 void CVIMPSTUiTermsOfUseDlg::UpdateCbaL()
     {
+	TRACER_AUTO;
     TInt cbaRes = R_CNUI_TERMS_OF_USE_DIALOG_CBA;  
     CEikButtonGroupContainer* cba = CEikButtonGroupContainer::Current();
     cba->SetCommandSetL( cbaRes );
@@ -548,6 +556,7 @@
 //
 void CVIMPSTUiTermsOfUseDlg::UpdateTextColorL()
     {
+	TRACER_AUTO;
     if( !iEditor )
         {
         return;
--- a/uiservicetab/vimpstui/src/cvimpstuiviewmanager.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstui/src/cvimpstuiviewmanager.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -26,6 +26,7 @@
 #include "cvimpstuiextensionviewinfo.h"
 #include "cvimpstuiextensionfactory.h"
 #include "cvimpstuimenuextension.h"
+#include "uiservicetabtracer.h"
 
 
 
@@ -108,7 +109,7 @@
     TInt aTabbedViewId,TInt aSearchViewId,TInt aBlockedViewId ,CVIMPSTUIMenuExtension& aMenuExtension )
     {    
     
-    
+	TRACER_AUTO;
     CVIMPSTUIExtensionService* service =
         CVIMPSTUIExtensionService::NewL( 
             aServiceId,
--- a/uiservicetab/vimpstutils/src/cvimpstengineaimagehandler.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstutils/src/cvimpstengineaimagehandler.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -18,7 +18,7 @@
 // INCLUDE FILES
 #include "cvimpstengineimagehandler.h"
 
-#include "vimpstdebugprint.h"
+#include "uiservicetabtracer.h"
 #include "tvimpstenums.h"
 
 
@@ -37,11 +37,11 @@
 // ---------------------------------------------------------
 EXPORT_C CVIMPSTEngineImageHandler* CVIMPSTEngineImageHandler::NewL()
     {
-    CHAT_DP_FUNC_ENTER("CVIMPSTEngineImageHandler::NewL");
+	TRACER_AUTO;
     CVIMPSTEngineImageHandler* self = 
     CVIMPSTEngineImageHandler::NewLC( );
     CleanupStack::Pop( self );
-    CHAT_DP_FUNC_DONE("CVIMPSTEngineImageHandler::NewL");
+    
     return self;
     }
 
@@ -51,12 +51,12 @@
 // ---------------------------------------------------------
 EXPORT_C CVIMPSTEngineImageHandler* CVIMPSTEngineImageHandler::NewLC( )
     {
-    CHAT_DP_FUNC_ENTER("CVIMPSTEngineImageHandler::NewLC");
+	TRACER_AUTO;
     CVIMPSTEngineImageHandler* self = new (ELeave) 
     CVIMPSTEngineImageHandler();
     CleanupStack::PushL( self );
     self->ConstructL();
-    CHAT_DP_FUNC_DONE("CVIMPSTEngineImageHandler::NewLC");
+    
     return self;
     }
 
@@ -73,24 +73,24 @@
 // ---------------------------------------------------------
 void CVIMPSTEngineImageHandler::ConstructL()
     {
-    CHAT_DP_FUNC_ENTER("CVIMPSTEngineImageHandler::ConstructL start");
+	TRACER_AUTO;
     iProcessor = CVimpstImageProcessor::NewL(this);
     iFormat.iSettings.iQualityFactor = KQUALITYFACTOR;
     iFormat.iSettings.iSampleScheme = TMdaJpgSettings::TColorSampling(TMdaJpgSettings::EColor420);
-    CHAT_DP_FUNC_ENTER("CVIMPSTEngineImageHandler::ConstructL end");
+    
     }
 // ---------------------------------------------------------
 // CVIMPSTEngineImageHandler::~CVIMPSTEngineImageHandler
 // ---------------------------------------------------------
 CVIMPSTEngineImageHandler::~CVIMPSTEngineImageHandler()
     {
-    CHAT_DP_FUNC_ENTER("CVIMPSTEngineImageHandler::~CVIMPSTEngineAvatarExtention");
+	TRACER_AUTO;
     delete iProcessor;
     if(iToDesc)
         {
         delete iToDesc;
         }
-    CHAT_DP_FUNC_DONE("CVIMPSTEngineImageHandler::~CVIMPSTEngineAvatarExtention");
+   
     }
 
 // ------------------------------------------------------------------------
@@ -99,7 +99,7 @@
 // ------------------------------------------------------------------------
 void CVIMPSTEngineImageHandler::HandleProcessingCompleteL( TInt aStatus )  
     {
-	CHAT_DP_FUNC_ENTER("CVIMPSTEngineImageHandler::HandleProcessingCompleteL start");
+	TRACER_AUTO;
     if (!aStatus)
         {
         iContent = iProcessor->GetContentData();
@@ -109,7 +109,7 @@
         {
         iWait.AsyncStop();  
         }
-    CHAT_DP_FUNC_ENTER("CVIMPSTEngineImageHandler::HandleProcessingCompleteL end");
+    
     }
 // ------------------------------------------------------------------------
 // CVIMPSTEngineImageHandler::ProcessImageFromFileL
@@ -118,10 +118,10 @@
 EXPORT_C HBufC8* CVIMPSTEngineImageHandler::ProcessImageFromFileL(const TDesC& aFilename ,
         const  TDesC8& aMimetype)
     {
-    CHAT_DP_FUNC_ENTER("CVIMPSTEngineImageHandler::ProcessImageFromFileL start");
+	TRACER_AUTO;
     if(aFilename.Length())
         {
-        CHAT_DP_FUNC_ENTER("CVIMPSTEngineImageHandler::ProcessFromFileL called");
+        TRACE(" called");
         iProcessor->ProcessFromFileL( aFilename , aMimetype);
         if( ! iWait.IsStarted() )
             {
@@ -130,7 +130,7 @@
             iWait.Start();
             }
         }
-    CHAT_DP_FUNC_ENTER("CVIMPSTEngineImageHandler::ProcessImageFromFileL end");
+    
     return iContent;
     }
 // ------------------------------------------------------------------------
@@ -139,10 +139,10 @@
 // ------------------------------------------------------------------------
 EXPORT_C HBufC8* CVIMPSTEngineImageHandler::ProcessImageFromDataL( const TDesC8& aImageData , const TDesC8& aMimeType)
     {
-    CHAT_DP_FUNC_ENTER("CVIMPSTEngineImageHandler::ProcessImageFromDataL start");
+	TRACER_AUTO;
     if(aImageData.Length())
         {
-        CHAT_DP_FUNC_ENTER("CVIMPSTEngineImageHandler::ProcessImageFromDataL called");
+        TRACE("ProcessImageFromDataL called");
         TInt err =  iProcessor->ProcessFromDataL( aImageData , aMimeType);
         if(KErrNone != err)
            {
@@ -156,7 +156,7 @@
             iWait.Start();
             }
         }
-    CHAT_DP_FUNC_ENTER("CVIMPSTEngineImageHandler::ProcessImageFromDataL end");
+    
     return iContent;
     }
 // ------------------------------------------------------------------------
@@ -166,7 +166,7 @@
 EXPORT_C HBufC8* CVIMPSTEngineImageHandler::ProcessFromBitmapL( CFbsBitmap& aBitMap )
     {
 
-    CHAT_DP_FUNC_ENTER("CVIMPSTEngineImageHandler::ProcessFromBitmapL start");
+	TRACER_AUTO;
 
     //bitmap to desc
     const TSize size = aBitMap.SizeInPixels();
@@ -196,7 +196,7 @@
         }
     User::LeaveIfError(iError);//CreateL is a asynch call.leave if error in creating 
 
-    CHAT_DP_FUNC_ENTER("CVIMPSTEngineImageHandler::ProcessImageFromDataL end");
+    
     return iBuf;
     }
 // ------------------------------------------------------------------------
@@ -205,13 +205,13 @@
 // ------------------------------------------------------------------------
 void CVIMPSTEngineImageHandler::MiuoCreateComplete(TInt aError)
     {
-    CHAT_DP_FUNC_ENTER("CVIMPSTEngineImageHandler::MiuoCreateComplete start");
+	TRACER_AUTO;
     iError = aError;
     if(iWait.IsStarted() )   
         {
         iWait.AsyncStop();  
         }
-    CHAT_DP_FUNC_ENTER("CVIMPSTEngineImageHandler::MiuoCreateComplete end");
+    
 
     }
 // ------------------------------------------------------------------------
@@ -220,13 +220,13 @@
 // ------------------------------------------------------------------------
 void CVIMPSTEngineImageHandler::MiuoOpenComplete(TInt aError)
     {
-    CHAT_DP_FUNC_ENTER("CVIMPSTEngineImageHandler::MiuoOpenComplete start");
+	TRACER_AUTO;
     iError = aError;
     if(iWait.IsStarted() )   
         {
         iWait.AsyncStop();  
         }
-    CHAT_DP_FUNC_ENTER("CVIMPSTEngineImageHandler::MiuoOpenComplete end");
+    
 
     }
 // ------------------------------------------------------------------------
@@ -235,13 +235,13 @@
 // ------------------------------------------------------------------------
 void CVIMPSTEngineImageHandler::MiuoConvertComplete(TInt aError)
     {
-    CHAT_DP_FUNC_ENTER("CVIMPSTEngineImageHandler::MiuoConvertComplete start");
+	TRACER_AUTO;
     iError = aError;
     if(iWait.IsStarted() )   
         {
         iWait.AsyncStop();  
         }
-    CHAT_DP_FUNC_ENTER("CVIMPSTEngineImageHandler::MiuoConvertComplete end");
+    
 
     }
 // CVIMPSTEngineImageHandler::Bitmap
@@ -249,6 +249,7 @@
 // ------------------------------------------------------------------------    
 EXPORT_C CFbsBitmap& CVIMPSTEngineImageHandler::Bitmap()
     {
+	TRACER_AUTO;
     return iProcessor->Bitmap();
     }    
 
--- a/uiservicetab/vimpstutils/src/cvimpstimageprocessor.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstutils/src/cvimpstimageprocessor.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -22,7 +22,7 @@
 #include <bitmaptransforms.h>
 #include <s32file.h>
 #include <e32cmn.h>
-#include "vimpstdebugprint.h"
+#include "uiservicetabtracer.h"
 // CONSTANTS
 const TInt KChatCustomBitmapWidth =  65;
 const TInt KChatCustomBitmapHeight = 65;
@@ -64,6 +64,7 @@
 //-----------------------------------------------------------------------------
 CVimpstImageProcessor* CVimpstImageProcessor::NewL( MCAImageProcessObserver* aObserver)
     {
+	TRACER_AUTO;
     CVimpstImageProcessor* self =
     new ( ELeave ) CVimpstImageProcessor(aObserver);
     CleanupStack::PushL( self );
@@ -88,6 +89,7 @@
 //-----------------------------------------------------------------------------
 void CVimpstImageProcessor::RunL()
     {
+	TRACER_AUTO;
     TInt status = iStatus.Int();    
 
     if(!status)
@@ -124,7 +126,7 @@
                     }
                 else
                     {
-                    CHAT_DP_FUNC_ENTER("CVimpstImageProcessor::RunL completed ");
+                    TRACE("RunL completed ");
                     CompleteRequestL();
                     }
                 break;
@@ -138,7 +140,7 @@
         }
     else
         {
-        CHAT_DP_FUNC_ENTER("CVimpstImageProcessor::RunL completed ");
+        TRACE("RunL completed ");
         CompleteRequestL();
         }
 
@@ -149,6 +151,7 @@
 //-----------------------------------------------------------------------------
 void CVimpstImageProcessor::ConvertImageToBitmapL()
     {
+	TRACER_AUTO;
     TSize origSize( iImageDecoder->FrameInfo().iOverallSizeInPixels );
     ScaleSize( origSize, iTargetSize );
     TBool fullyScaleable( iImageDecoder->FrameInfo().iFlags & TFrameInfo::EFullyScaleable );
@@ -170,6 +173,7 @@
 //-----------------------------------------------------------------------------
 void CVimpstImageProcessor::ScaleBitmapL()
     {
+	TRACER_AUTO;
     TSize currentSize( iBitmap ? iBitmap->SizeInPixels() : iTargetSize );
 
     if( currentSize != iTargetSize )
@@ -246,6 +250,7 @@
 //-----------------------------------------------------------------------------
 TInt CVimpstImageProcessor::ProcessFromDataL( const TDesC8& aImageData , const TDesC8& aMimeType)
     {
+	TRACER_AUTO;
     TInt err = KErrNone;
     if ( aMimeType.Length())
         {
@@ -278,13 +283,13 @@
 //-----------------------------------------------------------------------------
 void CVimpstImageProcessor::ProcessFromFileL( const TDesC& aFileName , const TDesC8& aMimeType)
     {
-    CHAT_DP_FUNC_ENTER("CVimpstImageProcessor::ProcessFromFileL start");
+	TRACER_AUTO;
     iMimeType = aMimeType.AllocL();
     iImageDecoder = NULL;
     iImageDecoder = CImageDecoder::FileNewL(iFs, aFileName, *iMimeType );
     iProcessingState = EConvertImageDatatoBitmap;
     RunL();
-    CHAT_DP_FUNC_ENTER("CVimpstImageProcessor::ProcessFromFileL end ");
+    
     }
 
 //-----------------------------------------------------------------------------
@@ -332,6 +337,7 @@
 TSize CVimpstImageProcessor::DecodeSize( const TSize& aSize, const TSize& aTargetSize,
         TBool aAnyRatio )
     {
+	TRACER_AUTO;
     if( aAnyRatio || aSize == aTargetSize )
         {
         // decoder can scale to any ratio or the size is already correct
--- a/uiservicetab/vimpstutils/src/vimpstutils.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstutils/src/vimpstutils.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -21,6 +21,7 @@
 #include "StringLoader.h"
 //#include "vimpstdebugprint.h" //TODO: for later use
 #include <coemain.h>
+#include "uiservicetabtracer.h"
 
 // CONSTANTS
 // TODO: For later use
@@ -39,6 +40,7 @@
 //
 EXPORT_C TPtrC VIMPSTUtils::DisplayId( const TDesC& aId, TBool /*aListHiding*/ )
     {
+	TRACER_AUTO;
     TPtrC ret( aId );
     
     //TODO: Modify the function body when it is required later 
@@ -87,6 +89,7 @@
 // 
 EXPORT_C HBufC* VIMPSTUtils::LoadResourceL( TInt aResourceId )
 	{
+	TRACER_AUTO;
 	CCoeEnv* env = CCoeEnv::Static();
 	HBufC* ret = NULL;
 	if(env)
@@ -108,6 +111,7 @@
 // 
 EXPORT_C HBufC* VIMPSTUtils::LoadResourceL( TInt aResourceId , const TDesC& aPrompt)
     {
+	TRACER_AUTO;
     CCoeEnv* env = CCoeEnv::Static();
     HBufC* ret = NULL;
     if(env)
@@ -129,6 +133,7 @@
 //
 EXPORT_C HBufC* VIMPSTUtils::CombineStringFromResourceLC( TInt aResourceId1, TInt aResourceId2 )
 	{
+	TRACER_AUTO;
 	// empty texts
     _LIT ( KPSUIEmptyStringHeader, "%S\n%S" );
     HBufC* emptyText = CCoeEnv::Static()->AllocReadResourceLC( 
--- a/uiservicetab/vimpstutils/src/vimpstutilsdialog.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstutils/src/vimpstutilsdialog.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -26,7 +26,7 @@
 #include    <vimpstuires.rsg>
 #include 	<AknQueryDialog.h>
 
-
+#include "uiservicetabtracer.h"
 
 
 // ---------------------------------------------------------
@@ -38,6 +38,7 @@
         const TInt aButtonsResourceId, /*= R_AVKON_SOFTKEYS_EMPTY*/
         const CAknNoteDialog::TTimeout& aTimeout /*= CAknNoteDialog::EShortTimeout*/ )
 	{
+	TRACER_AUTO;
 	// CodeScanner warning ignored because CS does not
     // notice that PrepareLC puts the dialog to cleanupstack
     CAknNoteDialog* dlg = new ( ELeave ) CAknNoteDialog( // CSI: 35 # See comment above
@@ -63,6 +64,7 @@
 EXPORT_C TInt VIMPSTUtilsDialog::DisplayErrorNoteL( const TDesC& aText, 
 													TBool aSoftkeyOk /*= EFalse*/ )
 	{
+	TRACER_AUTO;
 	//TODO : Modify the function body when required later
 	if( aSoftkeyOk )
 	    {
@@ -90,6 +92,7 @@
 EXPORT_C TInt VIMPSTUtilsDialog::DisplayQueryDialogL( TInt aDialogResourceId, 
             											const TDesC& aPrompt )
 	{
+	TRACER_AUTO;
 	CAknQueryDialog* dlg = new (ELeave) CAknQueryDialog(
 											CAknQueryDialog::ENoTone );
 	if( aPrompt != KNullDesC )
@@ -118,6 +121,7 @@
         TInitialSelectionMode aSelectionMode /* = ESelectAll */,
         TBool aDomainSelectionQuery /* = EFalse */ )
     {
+	TRACER_AUTO;
     // CodeScanner warning ignored because CS does not
     // notice that PrepareLC puts the dialog to cleanupstack
     CAknTextQueryDialog* dlg = CVIMPSTUtilsTextQueryDialog::NewL( aDataText, // CSI: 35 # See comment above
@@ -173,6 +177,7 @@
         const TBool /*aIsOnlySelect  = EFalse */ )
 
     {
+	TRACER_AUTO;
     CAknListQueryDialog* dlg = new (ELeave) CAknListQueryDialog( 
                                                     aSelectedIndex );
     dlg->PrepareLC( aDialogResourceId );
--- a/uiservicetab/vimpstutils/src/vimpstutilsnotemapper.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstutils/src/vimpstutilsnotemapper.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -23,6 +23,7 @@
 #include <vimpstuires.rsg>
 #include <StringLoader.h>
 #include <eikenv.h>
+#include "uiservicetabtracer.h"
 
 
 
@@ -33,6 +34,7 @@
 //
 EXPORT_C void VIMPSTUtilsNoteMapper::ShowNoteL( const TInt aErrorCode, const TDesC& aAdditionalData )
 	{
+	TRACER_AUTO;
 	TBool ignoreAdditionalData( EFalse ); // Some logical strings are without parameters...
 	TBool errorNote( ETrue );
 	TBool defaultNote( EFalse );
--- a/uiservicetab/vimpstutils/src/vimpstutilstextquerydialog.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstutils/src/vimpstutilstextquerydialog.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -19,6 +19,7 @@
 
 // INCLUDE FILES
 #include "vimpstutilstextquerydialog.h"
+#include "uiservicetabtracer.h"
 
 
 // ============================ MEMBER FUNCTIONS ===============================
@@ -49,6 +50,7 @@
                                               TBool aLeftSoftkeyAlwaysVisible /*= ETrue*/,
                                               TBool aDomainSelectionQuery /*= EFalse*/ )
     {
+	TRACER_AUTO;
     CVIMPSTUtilsTextQueryDialog* self = new( ELeave ) CVIMPSTUtilsTextQueryDialog( 
                                                             aDataText, aTone,
                                                             aLeftSoftkeyAlwaysVisible,
@@ -72,6 +74,7 @@
 //
 EXPORT_C void CVIMPSTUtilsTextQueryDialog::UpdateLeftSoftKeyL()
     {
+	TRACER_AUTO;
     if ( iLeftSoftkeyAlwaysVisible )
         {
         // do nothing so the left softkey is always visible
@@ -91,6 +94,7 @@
 EXPORT_C TKeyResponse CVIMPSTUtilsTextQueryDialog::OfferKeyEventL( const TKeyEvent& aKeyEvent, 
                                          TEventCode aType )
     {
+	TRACER_AUTO;
     TInt oldLen = 0;
     CEikEdwin* edwin = NULL;
     // If this is launched after domain selection query
@@ -135,6 +139,7 @@
 //
 EXPORT_C TBool CVIMPSTUtilsTextQueryDialog::OkToExitL( TInt aButtonId )
     {
+	TRACER_AUTO;
     if ( aButtonId == EAknSoftkeyExit && iDomainSelectionQuery )
         {
         return ETrue;
--- a/uiservicetab/vimpstutils/src/vimpstutilswaitnote.cpp	Wed Mar 31 21:14:49 2010 +0300
+++ b/uiservicetab/vimpstutils/src/vimpstutilswaitnote.cpp	Wed Apr 14 15:46:18 2010 +0300
@@ -21,6 +21,7 @@
 #include    "vimpstutilswaitnote.h"
 
 #include    <vimpstuires.rsg>
+#include "uiservicetabtracer.h"
 
 // ============================ MEMBER FUNCTIONS ===============================
 
@@ -44,6 +45,7 @@
         					  TBool aCanBeCanceledByUser,
         					  MVIMPSTUtilsWaitNoteObserver* aObserver )
     {
+	TRACER_AUTO;
 	// don't give dialog pointer as a parameter because
 	// it gets invalid after deletion of this instance
 	iWaitDialog = new( ELeave )CAknWaitDialog( NULL, aShowImmediately );
@@ -73,6 +75,7 @@
         								  TBool aCanBeCanceledByUser /*= EFalse*/,
         								  MVIMPSTUtilsWaitNoteObserver* aObserver /*= NULL*/ )
     {
+	TRACER_AUTO;
     CVIMPSTUtilsWaitNote* self = ShowWaitNoteLC(aText,aShowImmediately,aCanBeCanceledByUser,aObserver);
     CleanupStack::Pop( self );
     return self;
@@ -88,6 +91,7 @@
         								  TBool aCanBeCanceledByUser /*= EFalse*/,
         								  MVIMPSTUtilsWaitNoteObserver* aObserver /*= NULL*/ )
     {
+	TRACER_AUTO;
     CVIMPSTUtilsWaitNote* self = new( ELeave ) CVIMPSTUtilsWaitNote();
     CleanupStack::PushL( self );
     self->ConstructL( aText, aShowImmediately, aCanBeCanceledByUser, aObserver );
@@ -104,6 +108,7 @@
         								  TBool aCanBeCanceledByUser /*= EFalse*/,
         								  MVIMPSTUtilsWaitNoteObserver* aObserver /*= NULL*/ )
     {
+	TRACER_AUTO;
 	CVIMPSTUtilsWaitNote* self = new( ELeave ) CVIMPSTUtilsWaitNote();
     CleanupStack::PushL( self );
 
@@ -124,6 +129,7 @@
         								 TBool aCanBeCanceledByUser /*= EFalse*/,
         								 MVIMPSTUtilsWaitNoteObserver* aObserver /*= NULL*/ )
     {
+	TRACER_AUTO;
 	CVIMPSTUtilsWaitNote* self = ShowWaitNoteLC( aTextResource,
 	                                    aShowImmediately,
 	                                    aCanBeCanceledByUser,
@@ -151,6 +157,7 @@
 //
 EXPORT_C void CVIMPSTUtilsWaitNote::DialogDismissedL( TInt aButtonId )
     {
+	TRACER_AUTO;
     iWaitDialog = NULL;
     if( iObserver )
         {
@@ -166,6 +173,7 @@
 //
 EXPORT_C void CVIMPSTUtilsWaitNote::DismissDialog()
 	{
+	TRACER_AUTO;
 	if( iWaitDialog )
         {
         iWaitDialog->SetCallback( NULL );