--- a/uiservicetab/vimpstcmdprocess/tsrc/vimpstcmdprocess_utest/data/function coverage/indexD40.html Wed Sep 15 11:57:55 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,1949 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html><head>
-<title>CTC++ Coverage Report</title>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-<meta name="keyword" content="CTC++, Testwell, Test Coverage Analyzer">
-<meta name="date" content="Tue Oct 6 16:27:11 2009">
-<meta name="generator" content="Testwell CTC++ add-on utility ctc2html v2.4">
-<link rel="stylesheet" type="text/css" href="ctc.css">
-<link rel="contents" href="index.html">
-</head>
-<body text="#150040" bgcolor="#ffffff" link="#000088" vlink="#007788">
-<span class="head1">CTC++ Coverage Report - </span>
-<span class="head2">Execution Profile</span>
-<span class="head3"> #40/43</span><br><br>
-<span class="black"><a href="indexF.html" target="_top">Directory Summary</a> | <a href="index.html" target="_top">Files Summary</a> | <a href="indexB1.html" target="_top">Functions Summary</a> | <a href="indexD1.html">Execution Profile</a><br>
-To files: <a href="indexD1.html">First</a> | <a href="indexD39.html">Previous</a> | <a href="indexD41.html">Next</a> | <a href="indexD43.html">Last</a> | <a href="indexA.html#a40">Index</a> | <a href="indexD40.html" target="_top">No Index</a></span><br><br>
-<span class="black"><strong>File: \meco_domain\conversations\uiservicetab\vimpstcmdprocess\src\cvimpstprocessarray.cpp</strong></span><br>
-<span class="black"><strong>Instrumentation mode: </strong>function</span><br>
-<span class="black"><strong>TER: </strong></span><span class="red">87 % ( 47/ 54)</span><br><br>
-<table cellspacing="0">
-<tr><td align="right" class="black"><strong>Start/</strong> </td><td align="right" class="black"><strong>End/</strong> </td><td> </td><td> </td><td> </td></tr>
-<tr><td align="right" class="black"><strong>True</strong> </td><td align="right" class="black"><strong>False</strong> </td><td align="right" class="black"><strong>-</strong></td><td align="right" class="black"> <a href="indexD40.html#ut1" title="First untested"><strong>Line</strong></a> </td><td class="black"><strong>Source</strong></td></tr>
-<tr><td colspan="5"><hr></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1 </td><td class="black_source">/*</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 2 </td><td class="black_source"> * ===========================================================================</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 3 </td><td class="black_source"> * Name : cvimpstprocessarray.cpp</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 4 </td><td class="black_source"> * Part of : IMUiServiceTab/vimpstcmdprocess</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 5 </td><td class="black_source"> * Description : </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 6 </td><td class="black_source"> * Version : %version: 68.1.31 %</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 7 </td><td class="black_source"> *</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 8 </td><td class="black_source"> * Copyright © 2008 Nokia. All rights reserved.</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 9 </td><td class="black_source"> * This material, including documentation and any related computer</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 10 </td><td class="black_source"> * programs, is protected by copyright controlled by Nokia. All</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 11 </td><td class="black_source"> * rights are reserved. Copying, including reproducing, storing,</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 12 </td><td class="black_source"> * adapting or translating, any or all of this material requires the</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 13 </td><td class="black_source"> * prior written consent of Nokia. This material also contains</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 14 </td><td class="black_source"> * confidential information which may not be disclosed to others</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 15 </td><td class="black_source"> * without the prior written consent of Nokia.</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 16 </td><td class="black_source"> * ============================================================================</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 17 </td><td class="black_source"> */</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 18 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 19 </td><td class="black_source">// INCLUDE FILES</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 20 </td><td class="black_source">#include <coemain.h></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 21 </td><td class="black_source">#include "vimpstdebugprint.h" </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 22 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 23 </td><td class="black_source">#include "cvimpstprocessarray.h"</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 24 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 25 </td><td class="black_source">#include "mvimpstprocessarrayobserver.h"</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 26 </td><td class="black_source">#include "cvimpststoragemanagerfactory.h"</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 27 </td><td class="black_source">#include "mvimpststorageserviceview.h"</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 28 </td><td class="black_source">#include "TVIMPSTEnums.h"</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 29 </td><td class="black_source">#include "cvimpstprocessarrayitem.h"</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 30 </td><td class="black_source">#include "mvimpststorageitemmodel.h"</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 31 </td><td class="black_source">#include "tvimpstconsts.h"</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 32 </td><td class="black_source">#include "mvimpststoragecontactlist.h"</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 33 </td><td class="black_source">#include "mvimpststoragevpbkstorehandler.h"</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 34 </td><td class="black_source">#include "mvimpstengine.h"</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 35 </td><td class="black_source">#include "cvimpstprocessfriendrequestitem.h"</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 36 </td><td class="black_source">#include "mvimpstenginesubservice.h"</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 37 </td><td class="black_source">#include <mvpbkfieldtype.h></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 38 </td><td class="black_source">#include <mvpbkcontactfielduridata.h></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 39 </td><td class="black_source">#include <MVPbkContactFieldTextData.h></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 40 </td><td class="black_source">//rsg file for resource id</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 41 </td><td class="black_source">#include <vimpstuires.rsg></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 42 </td><td class="black_source">#include "vimpstutils.h"</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 43 </td><td class="black_source">#include <mvpbkcontactlink.h></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 44 </td><td class="black_source">#include <vpbkeng.rsg></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 45 </td><td class="black_source">#include "mvimpstengineimsubservice.h"</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 46 </td><td class="black_source">#include "mvimpstenginepresencesubservice.h"</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 47 </td><td class="black_source">#include "vimpstdebugtrace.h"</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 48 </td><td class="black_source">#include <APGTASK.H> </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 49 </td><td class="black_source">#include "imcvuiparams.h"</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 50 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 51 </td><td class="black_source">// --------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 52 </td><td class="black_source">// CVIMPSTProcessArray::CIMArrayProcess</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 53 </td><td class="black_source">// --------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 54 </td><td class="black_source">//</td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a388"></a>126 </td><td align="right" class="black_profile">126 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 55 </td><td class="black_source">CVIMPSTProcessArray::CVIMPSTProcessArray( MVIMPSTEngine& aEngine)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 56 </td><td class="black_source">:iOwnDataIndex(KOwnDataIndex),</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 57 </td><td class="black_source">iContactListIndex(KOwnDataIndex),</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 58 </td><td class="black_source">iEngine(aEngine)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 59 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 60 </td><td class="black_source"> iServiceId = iEngine.ServiceId();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 61 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 62 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 63 </td><td class="black_source">// --------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 64 </td><td class="black_source">// CVIMPSTProcessArray::~CVIMPSTProcessArray</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 65 </td><td class="black_source">// --------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 66 </td><td class="black_source">//</td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a389"></a>46 </td><td align="right" class="black_profile">46 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 67 </td><td class="black_source">CVIMPSTProcessArray::~CVIMPSTProcessArray()</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 68 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 69 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::~CVIMPSTProcessArray Start") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 70 </td><td class="black_source"> if(iContactInterface)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 71 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 72 </td><td class="black_source"> iContactInterface->RemoveObserver( this ); </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 73 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 74 </td><td class="black_source"> iItemArray.ResetAndDestroy();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 75 </td><td class="black_source"> iItemArray.Close();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 76 </td><td class="black_source"> iUnKnownContactArray.Close();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 77 </td><td class="black_source"> iAddRequestArray.Close();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 78 </td><td class="black_source"> </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 79 </td><td class="black_source"> if(iData)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 80 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 81 </td><td class="black_source"> delete iData;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 82 </td><td class="black_source"> iData = NULL;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 83 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 84 </td><td class="black_source"> //Get IM SubService </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 85 </td><td class="black_source"> MVIMPSTEngineSubService* subService1 = </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 86 </td><td class="black_source"> (iEngine.SubService(TVIMPSTEnums::EIM));</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 87 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 88 </td><td class="black_source"> if(subService1)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 89 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 90 </td><td class="black_source"> MVIMPSTEngineIMSubService& imSubService = </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 91 </td><td class="black_source"> MVIMPSTEngineIMSubService::Cast (*subService1);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 92 </td><td class="black_source"> imSubService.UnRegisterChatObserver(this);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 93 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 94 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 95 </td><td class="black_source"> //subscribe for ownpresencechangeevent </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 96 </td><td class="black_source"> MVIMPSTEngineSubService* subService = </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 97 </td><td class="black_source"> (iEngine.SubService(TVIMPSTEnums::EPresence));</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 98 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 99 </td><td class="black_source"> if(subService)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 100 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 101 </td><td class="black_source"> MVIMPSTEnginePresenceSubService& presence = </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 102 </td><td class="black_source"> MVIMPSTEnginePresenceSubService::Cast (*subService);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 103 </td><td class="black_source"> presence.UnRegisterPresenceEventObserver(this);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 104 </td><td class="black_source"> } </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 105 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 106 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::~CVIMPSTProcessArray End") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 107 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 108 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 109 </td><td class="black_source">// --------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 110 </td><td class="black_source">// CVIMPSTProcessArray::NewL</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 111 </td><td class="black_source">// --------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 112 </td><td class="black_source">//</td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a390"></a>126 </td><td align="right" class="black_profile">0 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 113 </td><td class="black_source">CVIMPSTProcessArray* CVIMPSTProcessArray::NewL(</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 114 </td><td class="black_source"> MVIMPSTEngine& aEngine)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 115 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 116 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::NewL Start") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 117 </td><td class="black_source"> CVIMPSTProcessArray* self = new(ELeave) CVIMPSTProcessArray(aEngine);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 118 </td><td class="black_source"> CleanupStack::PushL(self);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 119 </td><td class="black_source"> self->ConstructL();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 120 </td><td class="black_source"> CleanupStack::Pop(self);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 121 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::NewL End") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 122 </td><td class="black_source"> return self;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 123 </td><td class="black_source"> </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 124 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 125 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 126 </td><td class="black_source">// --------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 127 </td><td class="black_source">// CVIMPSTProcessArray::ConstructL</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 128 </td><td class="black_source">// --------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 129 </td><td class="black_source">//</td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a391"></a>126 </td><td align="right" class="black_profile">126 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 130 </td><td class="black_source">void CVIMPSTProcessArray::ConstructL()</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 131 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 132 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::ConstructL Start") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 133 </td><td class="black_source"> iContactInterface = CVIMPSTStorageManagerFactory::ContactListInterfaceL(iServiceId);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 134 </td><td class="black_source"> if(iContactInterface)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 135 </td><td class="black_source"> { </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 136 </td><td class="black_source"> iContactInterface->AddObserverL( this );// listen these events.. </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 137 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 138 </td><td class="black_source"> HBufC* unnamed = VIMPSTUtils::LoadResourceL( R_SERVTAB_UNNAMED );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 139 </td><td class="black_source"> if( unnamed )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 140 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 141 </td><td class="black_source"> CleanupStack::PushL( unnamed );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 142 </td><td class="black_source"> iContactInterface->SetUnnamedTextL(unnamed); // takes ownership</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 143 </td><td class="black_source"> CleanupStack::Pop( unnamed ); </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 144 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 145 </td><td class="black_source"> iContactListModel = CVIMPSTStorageManagerFactory::ItemModelInterfaceL(iServiceId);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 146 </td><td class="black_source"> iLoginState = iEngine.ServiceState();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 147 </td><td class="black_source"> //Get IM SubService </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 148 </td><td class="black_source"> MVIMPSTEngineSubService* subService1 =(iEngine.SubService(TVIMPSTEnums::EIM));</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 149 </td><td class="black_source"> if(subService1)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 150 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 151 </td><td class="black_source"> MVIMPSTEngineIMSubService& imSubService = </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 152 </td><td class="black_source"> MVIMPSTEngineIMSubService::Cast (*subService1);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 153 </td><td class="black_source"> imSubService.RegisterChatObserver(this);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 154 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 155 </td><td class="black_source"> iData = HBufC::NewL(512);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 156 </td><td class="black_source"> iAddRequestArray.Reset();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 157 </td><td class="black_source"> iUnKnownContactArray.Reset();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 158 </td><td class="black_source"> //subscribe for ownpresencechangeevent</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 159 </td><td class="black_source"> MVIMPSTEngineSubService* subService = </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 160 </td><td class="black_source"> (iEngine.SubService(TVIMPSTEnums::EPresence));</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 161 </td><td class="black_source"> if(subService)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 162 </td><td class="black_source"> { </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 163 </td><td class="black_source"> MVIMPSTEnginePresenceSubService& presence = </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 164 </td><td class="black_source"> MVIMPSTEnginePresenceSubService::Cast (*subService);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 165 </td><td class="black_source"> presence.RegisterPresenceEventObserverL(this); </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 166 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 167 </td><td class="black_source"> ResetArray();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 168 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::ConstructL end") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 169 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 170 </td><td class="black_source">// --------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 171 </td><td class="black_source">// CVIMPSTProcessArray::HandleStorageChangeL</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 172 </td><td class="black_source">// --------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 173 </td><td class="black_source">//</td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a392"></a>28 </td><td align="right" class="black_profile">28 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 174 </td><td class="black_source">void CVIMPSTProcessArray::HandleStorageChangeL( TVIMPSTEnums::TVIMPSTStorgaeEventType aEventType,</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 175 </td><td class="black_source"> MVIMPSTStorageContactList* /*aList*/, </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 176 </td><td class="black_source"> MVIMPSTStorageContact* aContact,</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 177 </td><td class="black_source"> TInt aContactIndex )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 178 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 179 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL Function Start") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 180 </td><td class="black_source"> // 0th index OwnItem + unknow contacts + add request</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 181 </td><td class="black_source"> aContactIndex = aContactIndex + 1 + iUnKnownContactArray.Count() + iAddRequestArray.Count();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 182 </td><td class="black_source"> </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 183 </td><td class="black_source"> switch( aEventType )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 184 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 185 </td><td class="black_source"> case TVIMPSTEnums::EStorageContactReadComplete:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 186 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 187 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageContactReadComplete Start") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 188 </td><td class="black_source"> if(iProcessObservers)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 189 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 190 </td><td class="black_source"> /* passing 0 so that the focus is on owndata item */</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 191 </td><td class="black_source"> iProcessObservers->HandleAdditionL(TVIMPSTEnums::EOwnStatusItem, 0 ); // focus own item</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 192 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 193 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageContactReadComplete End") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 194 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 195 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 196 </td><td class="black_source"> case TVIMPSTEnums::EStorageContactFetchComplete:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 197 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 198 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageContactFetchComplete Start") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 199 </td><td class="black_source"> TRACE( T_LIT("HandleStorageChangeL EStorageContactFetchComplete iItemArray Count: %d"), iItemArray.Count() );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 200 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 201 </td><td class="black_source"> if(iProcessObservers)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 202 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 203 </td><td class="black_source"> /* passing 0 so that the focus is on owndata item */</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 204 </td><td class="black_source"> iProcessObservers->HandleAdditionL(TVIMPSTEnums::EOwnStatusItem, 0 ); // focus own item</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 205 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 206 </td><td class="black_source"> if(TVIMPSTEnums::ESVCEUpdatingContacts == iLoginState ||</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 207 </td><td class="black_source"> TVIMPSTEnums::ESVCERegistered == iLoginState)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 208 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 209 </td><td class="black_source"> iFetchCompleted = ETrue;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 210 </td><td class="black_source"> GetAndCreateOpenChatListL();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 211 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 212 </td><td class="black_source"> </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 213 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageContactFetchComplete End") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 214 </td><td class="black_source"> break; </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 215 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 216 </td><td class="black_source"> case TVIMPSTEnums::EStorageContactReading:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 217 </td><td class="black_source"> case TVIMPSTEnums::EStorageContactFetching:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 218 </td><td class="black_source"> case TVIMPSTEnums::EStorageContactSynchronizing:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 219 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 220 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageContactFetching/EStorageContactFetching Start") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 221 </td><td class="black_source"> /*</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 222 </td><td class="black_source"> * This event occurs whenever we have contacts added to contactlist. This happens in the following scenarios</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 223 </td><td class="black_source"> * 1. At the time of login, when we fetch contacts, contact-by-contact is added to the storage. so we get this event.</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 224 </td><td class="black_source"> * 2. When we add a contact manually (either from phonebook, or manu adding etc.. ) we get this callback.</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 225 </td><td class="black_source"> */</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 226 </td><td class="black_source"> TRACE( T_LIT("contactindex = %d"),aContactIndex );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 227 </td><td class="black_source"> CVIMPSTProcessContactItem* contactItem = CVIMPSTProcessContactItem::NewL (const_cast<TDesC&>(aContact->Name() ),</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 228 </td><td class="black_source"> const_cast<TDesC&>(aContact->UserId() ),</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 229 </td><td class="black_source"> aContact->ContactLink() );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 230 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 231 </td><td class="black_source"> /* All the time the index should be less than the item array's count, but during the fetch of contacts from cdb file to the view, </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 232 </td><td class="black_source"> * if we havent got a contactviewready, and during that if I get contactaddition, before getting contactFetchComplete, we should keep </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 233 </td><td class="black_source"> * appending the items to the array for display, once we get the entire list, its sorted anyway while insertion, and when presence occurs</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 234 </td><td class="black_source"> * the contacts are re-sorted. </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 235 </td><td class="black_source"> */</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 236 </td><td class="black_source"> TRACE( T_LIT("itemarraycount = %d"),iItemArray.Count() );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 237 </td><td class="black_source"> if (aContactIndex >= iItemArray.Count() )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 238 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 239 </td><td class="black_source"> TRACE( T_LIT("append contact item %d"), contactItem);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 240 </td><td class="black_source"> iItemArray.Append(contactItem);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 241 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 242 </td><td class="black_source"> else</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 243 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 244 </td><td class="black_source"> TRACE( T_LIT("Insert at index = %d"), aContactIndex);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 245 </td><td class="black_source"> iItemArray.Insert(contactItem, aContactIndex );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 246 </td><td class="black_source"> } </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 247 </td><td class="black_source"> if(iProcessObservers)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 248 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 249 </td><td class="black_source"> /* passing 0 so that the focus is on owndata item */</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 250 </td><td class="black_source"> iProcessObservers->HandleAdditionL(TVIMPSTEnums::EOwnStatusItem, 0);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 251 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 252 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageContactFetching/EStorageContactFetching End") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 253 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 254 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 255 </td><td class="black_source"> case TVIMPSTEnums::EStorageEventContactAddition:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 256 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 257 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageEventContactAddition Start") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 258 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 259 </td><td class="black_source"> TBool removed = RemoveFromUnknonOrInvitationListL( aContact->UserId(), EFalse );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 260 </td><td class="black_source"> if( removed )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 261 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 262 </td><td class="black_source"> aContactIndex = aContactIndex - 1; // one contact is removed from iUnknownContactArray </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 263 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 264 </td><td class="black_source"> /*</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 265 </td><td class="black_source"> * This event occurs whenever we have contacts added to contactlist. This happens in the following scenarios</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 266 </td><td class="black_source"> * 1. At the time of login, when we fetch contacts, contact-by-contact is added to the storage. so we get this event.</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 267 </td><td class="black_source"> * 2. When we add a contact manually (either from phonebook, or manu adding etc.. ) we get this callback.</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 268 </td><td class="black_source"> */</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 269 </td><td class="black_source"> TPtrC userId = aContact->UserId();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 270 </td><td class="black_source"> TRACE( T_LIT("contactindex = %d"),aContactIndex );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 271 </td><td class="black_source"> CVIMPSTProcessContactItem* contactItem = CVIMPSTProcessContactItem::NewL (aContact->Name() ,</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 272 </td><td class="black_source"> userId,</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 273 </td><td class="black_source"> aContact->ContactLink() );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 274 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 275 </td><td class="black_source"> /* All the time the index should be less than the item array's count, but during the fetch of contacts from cdb file to the view, </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 276 </td><td class="black_source"> * if we havent got a contactviewready, and during that if I get contactaddition, before getting contactFetchComplete, we should keep </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 277 </td><td class="black_source"> * appending the items to the array for display, once we get the entire list, its sorted anyway while insertion, and when presence occurs</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 278 </td><td class="black_source"> * the contacts are re-sorted. </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 279 </td><td class="black_source"> */</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 280 </td><td class="black_source"> TRACE( T_LIT("itemarraycount = %d"),iItemArray.Count() );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 281 </td><td class="black_source"> if (aContactIndex >= iItemArray.Count() )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 282 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 283 </td><td class="black_source"> TRACE( T_LIT("append contact item = %d"), contactItem);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 284 </td><td class="black_source"> iItemArray.Append(contactItem);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 285 </td><td class="black_source"> } </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 286 </td><td class="black_source"> else</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 287 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 288 </td><td class="black_source"> TRACE( T_LIT("Insert at index = %d"), aContactIndex);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 289 </td><td class="black_source"> iItemArray.Insert(contactItem, aContactIndex );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 290 </td><td class="black_source"> } </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 291 </td><td class="black_source"> // check if pending message exist</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 292 </td><td class="black_source"> if( TVIMPSTEnums::ESVCERegistered == iLoginState && userId.Length() )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 293 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 294 </td><td class="black_source"> if( IsConversationExistL( userId ) )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 295 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 296 </td><td class="black_source"> contactItem->SetConversationOpen(ETrue);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 297 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 298 </td><td class="black_source"> if( IsUnreadMessageExistsL( userId ) )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 299 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 300 </td><td class="black_source"> contactItem->SetMsgPending(ETrue);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 301 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 302 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 303 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 304 </td><td class="black_source"> if(iProcessObservers)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 305 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 306 </td><td class="black_source"> /* passing aContactIndex so that the focus is on owndata item */</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 307 </td><td class="black_source"> iProcessObservers->HandleAdditionL(TVIMPSTEnums::EContactItem, aContactIndex );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 308 </td><td class="black_source"> } </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 309 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageEventContactAddition End") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 310 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 311 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 312 </td><td class="black_source"> case TVIMPSTEnums::EStorageEventContactDelete:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 313 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 314 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageEventContactDelete Start") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 315 </td><td class="black_source"> TRACE( T_LIT("contactindex = %d"),aContactIndex );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 316 </td><td class="black_source"> TRACE( T_LIT("itemarraycount = %d"),iItemArray.Count() );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 317 </td><td class="black_source"> if( aContactIndex < iItemArray.Count() )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 318 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 319 </td><td class="black_source"> MVIMPSTProcessArrayItem* deletedItem = iItemArray[ aContactIndex ]; </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 320 </td><td class="black_source"> TRACE( T_LIT("contact removed in item array of index = %d"),aContactIndex );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 321 </td><td class="black_source"> iItemArray.Remove (aContactIndex);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 322 </td><td class="black_source"> delete deletedItem;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 323 </td><td class="black_source"> iItemArray.Compress();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 324 </td><td class="black_source"> TRACE( T_LIT("contactindex = %d"),aContactIndex );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 325 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 326 </td><td class="black_source"> if(iProcessObservers)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 327 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 328 </td><td class="black_source"> iProcessObservers->HandleDeletionL(TVIMPSTEnums::EContactItem, aContactIndex);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 329 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 330 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageEventContactDelete End") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 331 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 332 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 333 </td><td class="black_source"> case TVIMPSTEnums::EStorageAvatarChange:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 334 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 335 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageAvatarChange Start") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 336 </td><td class="black_source"> ResetArray();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 337 </td><td class="black_source"> if(iProcessObservers && aContact )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 338 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 339 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageAvatarChange inside if") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 340 </td><td class="black_source"> TPtrC aUserId = aContact->UserId();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 341 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageAvatarChange aUserId = %S"), &aUserId );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 342 </td><td class="black_source"> iProcessObservers->HandleAvatarChangeL( aContact->UserId() );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 343 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 344 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageAvatarChange End") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 345 </td><td class="black_source"> break; </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 346 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 347 </td><td class="black_source"> case TVIMPSTEnums::EStorageOwnPresenceChange:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 348 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 349 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageAvatarChange Start") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 350 </td><td class="black_source"> if(iProcessObservers)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 351 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 352 </td><td class="black_source"> /* passing index as 0, so thta focus remains at the owndata item */</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 353 </td><td class="black_source"> iProcessObservers->HandleAdditionL(TVIMPSTEnums::EOwnStatusItem, KErrNotFound );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 354 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 355 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageAvatarChange End") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 356 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 357 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 358 </td><td class="black_source"> case TVIMPSTEnums::EStorageMultiplePresenceChange:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 359 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 360 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageAvatarChange Start") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 361 </td><td class="black_source"> // mostly this will get called after just login and fetch time</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 362 </td><td class="black_source"> ResetArray();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 363 </td><td class="black_source"> if(iProcessObservers )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 364 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 365 </td><td class="black_source"> iProcessObservers->HandleAdditionL(TVIMPSTEnums::EContactItem, KErrNotFound );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 366 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 367 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageAvatarChange End") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 368 </td><td class="black_source"> break; </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 369 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 370 </td><td class="black_source"> case TVIMPSTEnums::EStoragePresenceChange:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 371 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 372 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStoragePresenceChange Start") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 373 </td><td class="black_source"> /* </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 374 </td><td class="black_source"> * After Sort we get the new index... So first we need to remove the contact from the old position, </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 375 </td><td class="black_source"> * and then re-insert it at the correct obtained position (newIndex in this case)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 376 </td><td class="black_source"> */</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 377 </td><td class="black_source"> TRACE( T_LIT("contactindex = %d"),aContactIndex );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 378 </td><td class="black_source"> TRACE( T_LIT("itemarraycount = %d"),iItemArray.Count() );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 379 </td><td class="black_source"> if( aContactIndex < iItemArray.Count() )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 380 </td><td class="black_source"> { </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 381 </td><td class="black_source"> TInt newIndex = iContactListModel->IndexOfContact( aContact );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 382 </td><td class="black_source"> TRACE( T_LIT("new index = %d"),newIndex );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 383 </td><td class="black_source"> CVIMPSTProcessContactItem* newItem = CVIMPSTProcessContactItem::NewL(const_cast<TDesC&>(aContact->Name() ),</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 384 </td><td class="black_source"> const_cast<TDesC&>(aContact->UserId() ),</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 385 </td><td class="black_source"> aContact->ContactLink() );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 386 </td><td class="black_source"> MVIMPSTProcessArrayItem* oldItem = iItemArray[ aContactIndex ]; </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 387 </td><td class="black_source"> TRACE( T_LIT("contact removed in item array of index = %d"),aContactIndex );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 388 </td><td class="black_source"> iItemArray.Remove(aContactIndex );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 389 </td><td class="black_source"> delete oldItem;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 390 </td><td class="black_source"> iItemArray.Compress();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 391 </td><td class="black_source"> // Add it in the new index</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 392 </td><td class="black_source"> newIndex = newIndex + 1 + iUnKnownContactArray.Count()+ iAddRequestArray.Count();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 393 </td><td class="black_source"> if (newIndex >= iItemArray.Count())</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 394 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 395 </td><td class="black_source"> TRACE( T_LIT("append contact item = %d"), newIndex);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 396 </td><td class="black_source"> iItemArray.Append (newItem);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 397 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 398 </td><td class="black_source"> else</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 399 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 400 </td><td class="black_source"> TRACE( T_LIT("Insert at index = %d"), newItem);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 401 </td><td class="black_source"> iItemArray.Insert (newItem, newIndex);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 402 </td><td class="black_source"> } </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 403 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 404 </td><td class="black_source"> if(iProcessObservers )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 405 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 406 </td><td class="black_source"> iProcessObservers->HandleAdditionL(TVIMPSTEnums::EContactItem, KErrNotFound );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 407 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 408 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStoragePresenceChange End") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 409 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 410 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 411 </td><td class="black_source"> case TVIMPSTEnums::EStorageEventOwnUserChanged:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 412 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 413 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageEventOwnUserChanged Start") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 414 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL start Event = %d"),aEventType );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 415 </td><td class="black_source"> ResetArray();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 416 </td><td class="black_source"> if(iProcessObservers )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 417 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 418 </td><td class="black_source"> iProcessObservers->HandleDeletionL(TVIMPSTEnums::EOwnStatusItem, 0 ); // focus own item</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 419 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 420 </td><td class="black_source"> if( aContact )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 421 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 422 </td><td class="black_source"> iProcessObservers->HandleAvatarChangeL( aContact->UserId() );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 423 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 424 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 425 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageEventOwnUserChanged End") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 426 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 427 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 428 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 429 </td><td class="black_source"> case TVIMPSTEnums::EStorageAllContactRemoved:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 430 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 431 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageAllContactRemoved Start") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 432 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageAllContactRemoved count = %d"), iItemArray.Count() );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 433 </td><td class="black_source"> ResetArray();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 434 </td><td class="black_source"> if(iProcessObservers )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 435 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 436 </td><td class="black_source"> iProcessObservers->HandleDeletionL(TVIMPSTEnums::EOwnStatusItem, 0 ); // focus own item</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 437 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 438 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageAllContactRemoved End") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 439 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 440 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 441 </td><td class="black_source"> case TVIMPSTEnums::EStorageEventContactChange: </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 442 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 443 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageEventContactChange Start") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 444 </td><td class="black_source"> // display name is changed ,might be contact is re-arranged</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 445 </td><td class="black_source"> TRACE( T_LIT("contactindex = %d"),aContactIndex );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 446 </td><td class="black_source"> TRACE( T_LIT("itemarraycount = %d"),iItemArray.Count() );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 447 </td><td class="black_source"> if( aContactIndex < iItemArray.Count() )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 448 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 449 </td><td class="black_source"> CVIMPSTProcessContactItem* newItem = CVIMPSTProcessContactItem::NewL(const_cast<TDesC&>(aContact->Name() ),</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 450 </td><td class="black_source"> const_cast<TDesC&>(aContact->UserId() ),</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 451 </td><td class="black_source"> aContact->ContactLink() );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 452 </td><td class="black_source"> </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 453 </td><td class="black_source"> MVIMPSTProcessArrayItem* oldItem = iItemArray[ aContactIndex ];</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 454 </td><td class="black_source"> TRACE( T_LIT("contact removed in item array of index = %d"),aContactIndex );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 455 </td><td class="black_source"> // set the conversation open flag from old contact, as only the display name would have changed.</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 456 </td><td class="black_source"> newItem->SetConversationOpen(oldItem->IsConversationOpen());</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 457 </td><td class="black_source"> newItem->SetMsgPending( oldItem->IsMsgPending() );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 458 </td><td class="black_source"> iItemArray.Remove(aContactIndex );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 459 </td><td class="black_source"> delete oldItem;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 460 </td><td class="black_source"> iItemArray.Compress();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 461 </td><td class="black_source"> TRACE( T_LIT("Insert at index = %d"), aContactIndex);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 462 </td><td class="black_source"> TInt newIndex = iContactListModel->IndexOfContact( aContact );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 463 </td><td class="black_source"> // Add it in the new index</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 464 </td><td class="black_source"> newIndex = newIndex + 1 + iUnKnownContactArray.Count() + iAddRequestArray.Count();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 465 </td><td class="black_source"> if (newIndex >= iItemArray.Count())</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 466 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 467 </td><td class="black_source"> TRACE( T_LIT("append contact item = %d"), newIndex);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 468 </td><td class="black_source"> iItemArray.Append (newItem);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 469 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 470 </td><td class="black_source"> else</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 471 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 472 </td><td class="black_source"> TRACE( T_LIT("Insert at index = %d"), newItem);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 473 </td><td class="black_source"> iItemArray.Insert(newItem, newIndex);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 474 </td><td class="black_source"> } </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 475 </td><td class="black_source"> // inform the cv about the display name changes</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 476 </td><td class="black_source"> if(aContact && aContact->UserId().Length() && newItem->IsConversationOpen())</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 477 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 478 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageEventContactChange "));</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 479 </td><td class="black_source"> TApaTaskList taskList( CCoeEnv::Static()->WsSession() );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 480 </td><td class="black_source"> TApaTask task( taskList.FindApp( KConversationViewAppUid ) );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 481 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 482 </td><td class="black_source"> if ( task.Exists() )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 483 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 484 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageEventContactChange:task exists"));</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 485 </td><td class="black_source"> // packing of data ,passed to conversation view</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 486 </td><td class="black_source"> TPckgBuf< TIMCVUiParams > params;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 487 </td><td class="black_source"> params().iBuddyId = aContact->UserId();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 488 </td><td class="black_source"> params().iBuddyName = aContact->Name();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 489 </td><td class="black_source"> params().iServiceId = iServiceId;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 490 </td><td class="black_source"> params().iUpdate = ETrue;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 491 </td><td class="black_source"> task.SendMessage( </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 492 </td><td class="black_source"> TUid::Uid( KUidApaMessageSwitchOpenFileValue ), params );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 493 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 494 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 495 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 496 </td><td class="black_source"> if(iProcessObservers )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 497 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 498 </td><td class="black_source"> iProcessObservers->HandleAdditionL(TVIMPSTEnums::EContactItem, aContactIndex );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 499 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 500 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageEventContactChange End") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 501 </td><td class="black_source"> break; </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 502 </td><td class="black_source"> } </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 503 </td><td class="black_source"> case TVIMPSTEnums::EStorageEventUserIdPostChange:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 504 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 505 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageEventUserIdPostChange Start") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 506 </td><td class="black_source"> TRACE( T_LIT("contactindex = %d"),aContactIndex );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 507 </td><td class="black_source"> TRACE( T_LIT("itemarraycount = %d"),iItemArray.Count() );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 508 </td><td class="black_source"> if( aContactIndex < iItemArray.Count() )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 509 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 510 </td><td class="black_source"> CVIMPSTProcessContactItem* newItem = CVIMPSTProcessContactItem::NewL(const_cast<TDesC&>(aContact->Name() ),</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 511 </td><td class="black_source"> const_cast<TDesC&>(aContact->UserId() ),</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 512 </td><td class="black_source"> aContact->ContactLink() );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 513 </td><td class="black_source"> MVIMPSTProcessArrayItem* oldItem = iItemArray[ aContactIndex ];</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 514 </td><td class="black_source"> TRACE( T_LIT("contact removed in item array of index = %d"),aContactIndex );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 515 </td><td class="black_source"> iItemArray.Remove(aContactIndex );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 516 </td><td class="black_source"> delete oldItem;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 517 </td><td class="black_source"> iItemArray.Compress();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 518 </td><td class="black_source"> TRACE( T_LIT("Insert at index = %d"), aContactIndex);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 519 </td><td class="black_source"> iItemArray.InsertL (newItem, aContactIndex);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 520 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 521 </td><td class="black_source"> if(iProcessObservers )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 522 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 523 </td><td class="black_source"> iProcessObservers->HandleAdditionL(TVIMPSTEnums::EContactItem, aContactIndex );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 524 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 525 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL EStorageEventUserIdPostChange End") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 526 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 527 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 528 </td><td class="black_source"> default:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 529 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 530 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL Event default") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 531 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 532 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 533 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 534 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::HandleStorageChangeL Function End") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 535 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 536 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 537 </td><td class="black_source">// --------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 538 </td><td class="black_source">// CVIMPSTProcessArray::AddObserver</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 539 </td><td class="black_source">// --------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 540 </td><td class="black_source">//</td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a393"></a>6 </td><td align="right" class="black_profile">6 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 541 </td><td class="black_source">void CVIMPSTProcessArray::AddObserver( MVIMPSTProcessArrayObserver* aObserver ) </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 542 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 543 </td><td class="black_source"> iProcessObservers = aObserver;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 544 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 545 </td><td class="black_source">// --------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 546 </td><td class="black_source">// CVIMPSTProcessArray::RemoveObserver</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 547 </td><td class="black_source">// --------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 548 </td><td class="black_source">//</td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="red_profile"><a name="a394"></a>0 </td><td align="right" class="black_profile">0 </td><td align="right" class="red_profile">-</td><td align="right" class="red_profile"> <a name="ut1" href="indexD40.html#ut2">549</a> </td><td class="red_source">void CVIMPSTProcessArray::RemoveObserver( ) </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 550 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 551 </td><td class="black_source"> iProcessObservers = NULL;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 552 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 553 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 554 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 555 </td><td class="black_source">// CVIMPSTProcessArray::GetItemNameTextL</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 556 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 557 </td><td class="black_source"></td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a395"></a>4 </td><td align="right" class="black_profile">0 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 558 </td><td class="black_source">TPtrC CVIMPSTProcessArray::GetItemNameText(TInt aIndex)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 559 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 560 </td><td class="black_source"> TVIMPSTEnums::TItem itemtype = GetType( aIndex );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 561 </td><td class="black_source"> MVIMPSTProcessArrayItem* arrayItem = NULL;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 562 </td><td class="black_source"> /* Codescanner warning is ignored, since Bound check is done </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 563 </td><td class="black_source"> * inside the GetType()</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 564 </td><td class="black_source"> * method*/</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 565 </td><td class="black_source"> switch(itemtype)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 566 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 567 </td><td class="black_source"> case TVIMPSTEnums::EOwnStatusItem:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 568 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 569 </td><td class="black_source"> MVIMPSTProcessArrayItem *arrayItem = (MVIMPSTProcessArrayItem *)iItemArray[aIndex];</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 570 </td><td class="black_source"> return arrayItem->GetItemUserId(); // no name for own user </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 571 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 572 </td><td class="black_source"> case TVIMPSTEnums::EContactListItem:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 573 </td><td class="black_source"> case TVIMPSTEnums::EContactItem:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 574 </td><td class="black_source"> { </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 575 </td><td class="black_source"> arrayItem = (MVIMPSTProcessArrayItem *)iItemArray[aIndex];</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 576 </td><td class="black_source"> break; </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 577 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 578 </td><td class="black_source"> case TVIMPSTEnums::EFriendRequestItem:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 579 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 580 </td><td class="black_source"> arrayItem = (MVIMPSTProcessArrayItem *)iItemArray[aIndex];</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 581 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 582 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 583 </td><td class="black_source"> case TVIMPSTEnums::EUnknonContactItem:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 584 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 585 </td><td class="black_source"> arrayItem = (MVIMPSTProcessArrayItem *)iItemArray[aIndex];</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 586 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 587 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 588 </td><td class="black_source"> case TVIMPSTEnums::EInvalid:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 589 </td><td class="black_source"> default:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 590 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 591 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 592 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 593 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 594 </td><td class="black_source"> if( arrayItem )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 595 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 596 </td><td class="black_source"> return arrayItem->GetItemNameText(); </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 597 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 598 </td><td class="black_source"> return KNullDesC();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 599 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 600 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 601 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 602 </td><td class="black_source">// CVIMPSTProcessArray::GetItemUserId</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 603 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 604 </td><td class="black_source"></td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a396"></a>12 </td><td align="right" class="black_profile">0 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 605 </td><td class="black_source">TPtrC CVIMPSTProcessArray::GetItemUserId(TInt aIndex)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 606 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 607 </td><td class="black_source"> TVIMPSTEnums::TItem itemtype = GetType( aIndex );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 608 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 609 </td><td class="black_source"> /* Codescanner warning is ignored, since Bound check is done </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 610 </td><td class="black_source"> * inside the GetType()</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 611 </td><td class="black_source"> * method*/</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 612 </td><td class="black_source"> switch(itemtype) </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 613 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 614 </td><td class="black_source"> case TVIMPSTEnums::EContactItem:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 615 </td><td class="black_source"> case TVIMPSTEnums::EFriendRequestItem:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 616 </td><td class="black_source"> case TVIMPSTEnums::EUnknonContactItem:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 617 </td><td class="black_source"> case TVIMPSTEnums::EOwnStatusItem:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 618 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 619 </td><td class="black_source"> MVIMPSTProcessArrayItem *arrayItem = (MVIMPSTProcessArrayItem *)iItemArray[aIndex];</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 620 </td><td class="black_source"> return arrayItem->GetItemUserId(); // no name for own user </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 621 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 622 </td><td class="black_source"> default:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 623 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 624 </td><td class="black_source"> return KNullDesC(); </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 625 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 626 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 627 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 628 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 629 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 630 </td><td class="black_source">// CVIMPSTProcessArray::ContactLink</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 631 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 632 </td><td class="black_source"></td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a397"></a>2 </td><td align="right" class="black_profile">0 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 633 </td><td class="black_source">MVPbkContactLink* CVIMPSTProcessArray::ContactLink(TInt aIndex)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 634 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 635 </td><td class="black_source"> TVIMPSTEnums::TItem itemtype = GetType( aIndex );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 636 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 637 </td><td class="black_source"> /* Codescanner warning is ignored, since Bound check is done </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 638 </td><td class="black_source"> * inside the GetType()</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 639 </td><td class="black_source"> * method*/</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 640 </td><td class="black_source"> switch(itemtype)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 641 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 642 </td><td class="black_source"> case TVIMPSTEnums::EOwnStatusItem:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 643 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 644 </td><td class="black_source"> return NULL; </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 645 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 646 </td><td class="black_source"> case TVIMPSTEnums::EContactListItem:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 647 </td><td class="black_source"> case TVIMPSTEnums::EContactItem:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 648 </td><td class="black_source"> { </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 649 </td><td class="black_source"> MVIMPSTProcessArrayItem *arrayItem = (MVIMPSTProcessArrayItem *)iItemArray[aIndex];</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 650 </td><td class="black_source"> return arrayItem->ContactLink(); </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 651 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 652 </td><td class="black_source"> case TVIMPSTEnums::EInvalid:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 653 </td><td class="black_source"> default:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 654 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 655 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 656 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 657 </td><td class="black_source"> return NULL;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 658 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 659 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 660 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 661 </td><td class="black_source">// CVIMPSTProcessArray::Count</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 662 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 663 </td><td class="black_source"></td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="red_profile"><a name="a398"></a>0 </td><td align="right" class="black_profile">0 </td><td align="right" class="red_profile">-</td><td align="right" class="red_profile"> <a name="ut2" href="indexD40.html#ut3">664</a> </td><td class="red_source">TInt CVIMPSTProcessArray::Count() const</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 665 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 666 </td><td class="black_source"> // return the total count here.</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 667 </td><td class="black_source"> return iItemArray.Count() ;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 668 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 669 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 670 </td><td class="black_source">// CVIMPSTProcessArray::IsSubServiceSupportedL</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 671 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 672 </td><td class="black_source"></td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a399"></a>8 </td><td align="right" class="black_profile">0 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 673 </td><td class="black_source">TBool CVIMPSTProcessArray::IsSubServiceSupportedL(TVIMPSTEnums::SubServiceType aType ) const</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 674 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 675 </td><td class="black_source"> return iEngine.IsSubServiceSupportedL(aType );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 676 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 677 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 678 </td><td class="black_source">// CVIMPSTProcessArray::GetType</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 679 </td><td class="black_source">// Get the type from engine and return the type</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 680 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 681 </td><td class="black_source"></td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a400"></a>32 </td><td align="right" class="black_profile">0 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 682 </td><td class="black_source">TVIMPSTEnums::TItem CVIMPSTProcessArray::GetType(TInt aIndex) const</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 683 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 684 </td><td class="black_source"> TInt itemArrayCount = iItemArray.Count();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 685 </td><td class="black_source"> if(itemArrayCount <=0 || (aIndex < 0 || aIndex >= itemArrayCount) )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 686 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 687 </td><td class="black_source"> return TVIMPSTEnums::EInvalid;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 688 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 689 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 690 </td><td class="black_source"> else if(itemArrayCount>0)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 691 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 692 </td><td class="black_source"> TInt index = aIndex <= 0 ? 0 : aIndex;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 693 </td><td class="black_source"> MVIMPSTProcessArrayItem* item = iItemArray[ index ]; </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 694 </td><td class="black_source"> return item->Type();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 695 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 696 </td><td class="black_source"> else</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 697 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 698 </td><td class="black_source"> return TVIMPSTEnums::EInvalid;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 699 </td><td class="black_source"> } </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 700 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 701 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 702 </td><td class="black_source">// CVIMPSTProcessArray::FillItemL</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 703 </td><td class="black_source">// Fill up the complete array one item at a time</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 704 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 705 </td><td class="black_source"></td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a401"></a>134 </td><td align="right" class="black_profile">134 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 706 </td><td class="black_source">void CVIMPSTProcessArray::FillItemL()</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 707 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 708 </td><td class="black_source"> TInt count = 0;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 709 </td><td class="black_source"> if(iContactListModel)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 710 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 711 </td><td class="black_source"> count = iContactListModel->Count();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 712 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 713 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 714 </td><td class="black_source"> // the index is starting from 1, because we already added owndata item to the list.......</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 715 </td><td class="black_source"> for ( TInt index = 0; index < count ; index++)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 716 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 717 </td><td class="black_source"> // fetch the item and process correct type</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 718 </td><td class="black_source"> MVIMPSTStorageItemModel::SItem item = iContactListModel->Item( index );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 719 </td><td class="black_source"> switch( item.iType )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 720 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 721 </td><td class="black_source"> case MVIMPSTStorageItemModel::EContactList:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 722 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 723 </td><td class="black_source"> case MVIMPSTStorageItemModel::EContactItem:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 724 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 725 </td><td class="black_source"> // contact item</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 726 </td><td class="black_source"> // add this items to contact item -- CONTACT </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 727 </td><td class="black_source"> // create an object of this type and append this to the rpointerarray</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 728 </td><td class="black_source"> MVIMPSTStorageContact* contact = item.iContact; </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 729 </td><td class="black_source"> TPtrC userId = contact->UserId();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 730 </td><td class="black_source"> CVIMPSTProcessContactItem* contactItem = </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 731 </td><td class="black_source"> CVIMPSTProcessContactItem::NewL(contact->Name(),</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 732 </td><td class="black_source"> userId ,</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 733 </td><td class="black_source"> contact->ContactLink() );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 734 </td><td class="black_source"> TInt otherCount = 1 + iUnKnownContactArray.Count() + iAddRequestArray.Count();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 735 </td><td class="black_source"> contactItem->SetItemIndex(index + otherCount );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 736 </td><td class="black_source"> //append this to the array</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 737 </td><td class="black_source"> iItemArray.AppendL(contactItem);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 738 </td><td class="black_source"> if( TVIMPSTEnums::ESVCERegistered == iLoginState &&</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 739 </td><td class="black_source"> TVIMPSTEnums::EBlocked != contact->OnlineStatus() && userId.Length() )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 740 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 741 </td><td class="black_source"> if( IsUnreadMessageExistsL( userId ) )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 742 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 743 </td><td class="black_source"> contactItem->SetMsgPending(ETrue);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 744 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 745 </td><td class="black_source"> if( IsConversationExistL( userId ) )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 746 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 747 </td><td class="black_source"> contactItem->SetConversationOpen(ETrue);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 748 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 749 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 750 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 751 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 752 </td><td class="black_source"> default:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 753 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 754 </td><td class="black_source"> // the call shouldn't be here</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 755 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 756 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 757 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 758 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 759 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 760 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 761 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 762 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 763 </td><td class="black_source">// CVIMPSTProcessArray::FillOwnDataL</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 764 </td><td class="black_source">// FillOwnDataL implementation</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 765 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 766 </td><td class="black_source">// fill the owndata at the begining of array.....</td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a402"></a>136 </td><td align="right" class="black_profile">0 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 767 </td><td class="black_source">TBool CVIMPSTProcessArray::FillOwnDataL()</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 768 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 769 </td><td class="black_source"> TBool ownDataAdded = EFalse;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 770 </td><td class="black_source"> TPtr dataPtr = iData->Des(); </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 771 </td><td class="black_source"> // Check whether the user has logged in before, if has</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 772 </td><td class="black_source"> // then dont update anything just return </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 773 </td><td class="black_source"> //check if its logged in or not.</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 774 </td><td class="black_source"> // 1. if not logged in append </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 775 </td><td class="black_source"> switch(iLoginState)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 776 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 777 </td><td class="black_source"> case TVIMPSTEnums::ESVCERegistered:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 778 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 779 </td><td class="black_source"> TPtrC userId = iContactInterface->OwnContactL().UserId();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 780 </td><td class="black_source"> dataPtr.Copy(userId);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 781 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 782 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 783 </td><td class="black_source"> case TVIMPSTEnums::ESVCENetworkConnecting:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 784 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 785 </td><td class="black_source"> HBufC* tempStr = VIMPSTUtils::LoadResourceL( R_QTN_SERVTAB_LOGGING_LIST_ITEM );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 786 </td><td class="black_source"> if(tempStr)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 787 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 788 </td><td class="black_source"> dataPtr.Copy(*tempStr); </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 789 </td><td class="black_source"> delete tempStr; </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 790 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 791 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 792 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 793 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 794 </td><td class="black_source"> case TVIMPSTEnums::ESVCEUpdatingContacts:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 795 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 796 </td><td class="black_source"> HBufC* tempStr = VIMPSTUtils::LoadResourceL( R_QTN_SERVTAB_UPDATING_LIST_ITEM );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 797 </td><td class="black_source"> if(tempStr)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 798 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 799 </td><td class="black_source"> dataPtr.Copy(*tempStr); </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 800 </td><td class="black_source"> delete tempStr; </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 801 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 802 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 803 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 804 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 805 </td><td class="black_source"> case TVIMPSTEnums::ESVCEWaitingForNetwork:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 806 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 807 </td><td class="black_source"> HBufC* tempStr = KNetworkError().AllocL();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 808 </td><td class="black_source"> if(tempStr)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 809 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 810 </td><td class="black_source"> dataPtr.Copy(*tempStr); </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 811 </td><td class="black_source"> delete tempStr; </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 812 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 813 </td><td class="black_source"> break; </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 814 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 815 </td><td class="black_source"> case TVIMPSTEnums::ESVCENetworkDisConnecting:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 816 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 817 </td><td class="black_source"> HBufC* tempStr = NULL;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 818 </td><td class="black_source"> if ( iEngine.IsSubServiceSupportedL(TVIMPSTEnums::EPresence) ) </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 819 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 820 </td><td class="black_source"> // if presence enabled use double line listbox string</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 821 </td><td class="black_source"> tempStr= VIMPSTUtils::LoadResourceL( R_QTN_SERVTAB_LOGGINGOUT_LIST_ITEM );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 822 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 823 </td><td class="black_source"> else</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 824 </td><td class="black_source"> { </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 825 </td><td class="black_source"> // if presence is not enabled use single line listbox string</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 826 </td><td class="black_source"> tempStr= VIMPSTUtils::LoadResourceL( R_QTN_SERVTAB_SINGLE_LINE_LOGGINGOUT_LIST_ITEM );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 827 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 828 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 829 </td><td class="black_source"> if(tempStr)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 830 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 831 </td><td class="black_source"> dataPtr.Copy(*tempStr); </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 832 </td><td class="black_source"> delete tempStr;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 833 </td><td class="black_source"> } </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 834 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 835 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 836 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 837 </td><td class="black_source"> case TVIMPSTEnums::ESVCENotRegistered:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 838 </td><td class="black_source"> default:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 839 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 840 </td><td class="black_source"> HBufC* str = NULL;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 841 </td><td class="black_source"> if ( iEngine.SubService( TVIMPSTEnums::EPresence) ) </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 842 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 843 </td><td class="black_source"> // if presence enabled use double line listbox string</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 844 </td><td class="black_source"> str = VIMPSTUtils::LoadResourceL( R_QTN_SERVTAB_LOGIN_LIST_ITEM );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 845 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 846 </td><td class="black_source"> else</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 847 </td><td class="black_source"> { </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 848 </td><td class="black_source"> // if presence is not enabled use single line listbox string</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 849 </td><td class="black_source"> // get the username from settings</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 850 </td><td class="black_source"> TPtrC ownUserId = iContactInterface->OwnContactL().UserId();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 851 </td><td class="black_source"> if ( ownUserId.Length() )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 852 </td><td class="black_source"> { </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 853 </td><td class="black_source"> // if username is available then show with login item</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 854 </td><td class="black_source"> // remove domain part and give it to resource laoder</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 855 </td><td class="black_source"> str= VIMPSTUtils::LoadResourceL( R_QTN_SERVTAB_SINGLE_LINE_LOGIN_LIST_ITEM_WITH_USERNAME , VIMPSTUtils::DisplayId( ownUserId ) );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 856 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 857 </td><td class="black_source"> else</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 858 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 859 </td><td class="black_source"> // this condition occures when there is allocated memory for username with NO data (length =0 )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 860 </td><td class="black_source"> // just make sure "no memory leak" without depending on the Function LoginUserNameFromSettingsL()</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 861 </td><td class="black_source"> // since that would return the allocated memory without Data (length=0 ) </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 862 </td><td class="black_source"> // just show login item since no username is available in the settings</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 863 </td><td class="black_source"> str= VIMPSTUtils::LoadResourceL( R_QTN_SERVTAB_SINGLE_LINE_LOGIN_LIST_ITEM );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 864 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 865 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 866 </td><td class="black_source"> if( str )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 867 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 868 </td><td class="black_source"> dataPtr.Copy(*str); </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 869 </td><td class="black_source"> delete str; </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 870 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 871 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 872 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 873 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 874 </td><td class="black_source"> if( iItemArray.Count() )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 875 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 876 </td><td class="black_source"> // own item is already exist delete it before adding a fresh one</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 877 </td><td class="black_source"> MVIMPSTProcessArrayItem* arrayItem = iItemArray[ 0 ]; // should be own data</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 878 </td><td class="black_source"> if( arrayItem->Type() == TVIMPSTEnums::EOwnStatusItem )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 879 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 880 </td><td class="black_source"> iItemArray.Remove(0); //iItemArray takes ownership of owndataItem, do not delete here</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 881 </td><td class="black_source"> delete arrayItem;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 882 </td><td class="black_source"> iItemArray.Compress();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 883 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 884 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 885 </td><td class="black_source"> //common code for all the above cases to update the owndata item to list at index 0</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 886 </td><td class="black_source"> CVIMPSTProcessOwnDataItem* owndataItem = CVIMPSTProcessOwnDataItem::NewL(*iData);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 887 </td><td class="black_source"> owndataItem->SetItemIndex(0);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 888 </td><td class="black_source"> //append this to the array</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 889 </td><td class="black_source"> iItemArray.InsertL( owndataItem,0 ); //iItemArray takes ownership of owndataItem, do not delete here</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 890 </td><td class="black_source"> iContactListIndex = 0;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 891 </td><td class="black_source"> ownDataAdded = ETrue; </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 892 </td><td class="black_source"> return ownDataAdded;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 893 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 894 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 895 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 896 </td><td class="black_source">// CVIMPSTProcessArray::FillArrayL</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 897 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 898 </td><td class="black_source"></td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a403"></a>134 </td><td align="right" class="black_profile">134 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 899 </td><td class="black_source">void CVIMPSTProcessArray::FillArrayL()</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 900 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 901 </td><td class="black_source"> if(FillOwnDataL() )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 902 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 903 </td><td class="black_source"> // then fill the conversations..or open chats.... </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 904 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 905 </td><td class="black_source"> else</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 906 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 907 </td><td class="black_source"> iContactListIndex = 0; // we have not added any thing to main array..so index is zero...</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 908 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 909 </td><td class="black_source"> FillUnknownContactsL(); //will fill all unknown contact from iUnknownContactArray to iItemArray.</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 910 </td><td class="black_source"> FillAddRequestDataL();//will fill all requests from iAddRequestArray to iItemArray.</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 911 </td><td class="black_source"> FillItemL(); </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 912 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 913 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 914 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 915 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 916 </td><td class="black_source">// CVIMPSTProcessArray::ResetArray</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 917 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 918 </td><td class="black_source"></td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a404"></a>134 </td><td align="right" class="black_profile">134 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 919 </td><td class="black_source">void CVIMPSTProcessArray::ResetArray()</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 920 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 921 </td><td class="black_source"> RemoveUnKnownContacts(); //will remove all the unknown contacts from iItemArray.</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 922 </td><td class="black_source"> RemoveAddRequestData();//will remove all the requests from iItemArray.</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 923 </td><td class="black_source"> iItemArray.ResetAndDestroy();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 924 </td><td class="black_source"> TRAPD( err, FillArrayL());</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 925 </td><td class="black_source"> if ( err != KErrNone )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 926 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 927 </td><td class="black_source"> CActiveScheduler::Current()->Error( err );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 928 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 929 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 930 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 931 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 932 </td><td class="black_source">// CVIMPSTProcessArray::SetLoginState</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 933 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 934 </td><td class="black_source"></td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a405"></a>2 </td><td align="right" class="black_profile">2 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 935 </td><td class="black_source">void CVIMPSTProcessArray::SetLoginStateL(TVIMPSTEnums::TVIMPSTRegistrationState aLoginState)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 936 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 937 </td><td class="black_source"> iLoginState = aLoginState;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 938 </td><td class="black_source"> if(aLoginState != TVIMPSTEnums::ESVCERegistered )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 939 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 940 </td><td class="black_source"> iFetchCompleted = EFalse;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 941 </td><td class="black_source"> RemoveUnKnownContacts();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 942 </td><td class="black_source"> RemoveAddRequestData();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 943 </td><td class="black_source"> iUnKnownContactArray.ResetAndDestroy();// delete all items</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 944 </td><td class="black_source"> iUnKnownContactArray.Reset();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 945 </td><td class="black_source"> iAddRequestArray.ResetAndDestroy();// delete all items</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 946 </td><td class="black_source"> iAddRequestArray.Reset();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 947 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 948 </td><td class="black_source"> FillOwnDataL(); // this will change the own item based on connection status</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 949 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 950 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 951 </td><td class="black_source">// CVIMPSTProcessArray::GetLoginState</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 952 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 953 </td><td class="black_source"></td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a406"></a>2 </td><td align="right" class="black_profile">0 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 954 </td><td class="black_source">TVIMPSTEnums::TVIMPSTRegistrationState CVIMPSTProcessArray::GetLoginState()</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 955 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 956 </td><td class="black_source"> return iLoginState;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 957 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 958 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 959 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 960 </td><td class="black_source">// CVIMPSTProcessArray::GetOnlineStatus</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 961 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 962 </td><td class="black_source"></td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a407"></a>2 </td><td align="right" class="black_profile">0 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 963 </td><td class="black_source">TVIMPSTEnums::TOnlineStatus CVIMPSTProcessArray::GetOnlineStatusL(TInt aIndex)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 964 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 965 </td><td class="black_source"> TVIMPSTEnums::TItem itemtype = GetType( aIndex );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 966 </td><td class="black_source"> TVIMPSTEnums::TOnlineStatus status = TVIMPSTEnums::EUnknown;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 967 </td><td class="black_source"> switch(itemtype)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 968 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 969 </td><td class="black_source"> case TVIMPSTEnums::EOwnStatusItem:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 970 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 971 </td><td class="black_source"> if( iContactInterface )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 972 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 973 </td><td class="black_source"> status = iContactInterface->OwnContactL().OnlineStatus();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 974 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 975 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 976 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 977 </td><td class="black_source"> case TVIMPSTEnums::EContactItem:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 978 </td><td class="black_source"> { </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 979 </td><td class="black_source"> MVIMPSTStorageContact* contact = iContactInterface->FindContactByUserId( GetItemUserId(aIndex) );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 980 </td><td class="black_source"> if(contact)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 981 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 982 </td><td class="black_source"> status = contact->OnlineStatus();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 983 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 984 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 985 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 986 </td><td class="black_source"> case TVIMPSTEnums::EInvalid:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 987 </td><td class="black_source"> default:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 988 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 989 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 990 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 991 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 992 </td><td class="black_source"> return status;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 993 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 994 </td><td class="black_source">//-----------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 995 </td><td class="black_source">//CVIMPSTProcessArray::StatusText</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 996 </td><td class="black_source">//-----------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 997 </td><td class="black_source">// </td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a408"></a>2 </td><td align="right" class="black_profile">0 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 998 </td><td class="black_source">const TDesC& CVIMPSTProcessArray::StatusTextL(TInt aIndex ) </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 999 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1000 </td><td class="black_source"> TVIMPSTEnums::TItem itemtype = GetType( aIndex );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1001 </td><td class="black_source"> switch(itemtype)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1002 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1003 </td><td class="black_source"> case TVIMPSTEnums::EOwnStatusItem:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1004 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1005 </td><td class="black_source"> if( iContactInterface )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1006 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1007 </td><td class="black_source"> return iContactInterface->OwnContactL().StatusText(); </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1008 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1009 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1010 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1011 </td><td class="black_source"> case TVIMPSTEnums::EContactItem:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1012 </td><td class="black_source"> { </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1013 </td><td class="black_source"> MVIMPSTStorageContact* contact = iContactInterface->FindContactByUserId(GetItemUserId(aIndex));</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1014 </td><td class="black_source"> if(contact && contact->StatusText().Length() )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1015 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1016 </td><td class="black_source"> // KStatusMsgMaxLenght is the max length of the status message shown</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1017 </td><td class="black_source"> // make sure that it copies only that much</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1018 </td><td class="black_source"> return contact->StatusText();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1019 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1020 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1021 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1022 </td><td class="black_source"> case TVIMPSTEnums::EInvalid:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1023 </td><td class="black_source"> default:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1024 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1025 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1026 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1027 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1028 </td><td class="black_source"> return KNullDesC;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1029 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1030 </td><td class="black_source">//-----------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1031 </td><td class="black_source">//CVIMPSTProcessArray::RemoveFromUnknonOrInvitationListL</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1032 </td><td class="black_source">//-----------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1033 </td><td class="black_source">//</td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a409"></a>2 </td><td align="right" class="black_profile">0 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 1034 </td><td class="black_source">TBool CVIMPSTProcessArray::RemoveFromUnknonOrInvitationListL( const TDesC& aAddedUserId ,TBool aBlocked )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1035 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1036 </td><td class="black_source"> TBool found = RemoveFromUnknonListL( aAddedUserId );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1037 </td><td class="black_source"> if( !found )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1038 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1039 </td><td class="black_source"> found = RemoveFromInvitationListL( aAddedUserId );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1040 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1041 </td><td class="black_source"> //Get IM SubService </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1042 </td><td class="black_source"> if( aBlocked && found && aAddedUserId.Length() )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1043 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1044 </td><td class="black_source"> MVIMPSTEngineSubService* subService = </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1045 </td><td class="black_source"> (iEngine.SubService(TVIMPSTEnums::EIM));</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1046 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1047 </td><td class="black_source"> if(subService )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1048 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1049 </td><td class="black_source"> MVIMPSTEngineIMSubService& imSubService = </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1050 </td><td class="black_source"> MVIMPSTEngineIMSubService::Cast (*subService);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1051 </td><td class="black_source"> imSubService.CloseConversationL( aAddedUserId );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1052 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1053 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1054 </td><td class="black_source"> return found;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1055 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1056 </td><td class="black_source">//-----------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1057 </td><td class="black_source">//CVIMPSTProcessArray::RemoveFromUnknonListL</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1058 </td><td class="black_source">//-----------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1059 </td><td class="black_source">//</td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a410"></a>4 </td><td align="right" class="black_profile">0 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 1060 </td><td class="black_source">TBool CVIMPSTProcessArray::RemoveFromUnknonListL( const TDesC& aAddedUserId )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1061 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1062 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::RemoveFromUnknonListL start ") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1063 </td><td class="black_source"> TPtrC addedUserId = VIMPSTUtils::DisplayId( aAddedUserId );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1064 </td><td class="black_source"> TBool found = EFalse;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1065 </td><td class="black_source"> TInt count = iUnKnownContactArray.Count();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1066 </td><td class="black_source"> CVIMPSTProcessUnknownContactItem* unknownItem = NULL;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1067 </td><td class="black_source"> TInt index = KErrNotFound;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1068 </td><td class="black_source"> TInt itemIndex = KErrNotFound;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1069 </td><td class="black_source"> // check in unknon array</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1070 </td><td class="black_source"> for(index = 0 ; index < count ; index++)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1071 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1072 </td><td class="black_source"> unknownItem = iUnKnownContactArray[index];</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1073 </td><td class="black_source"> TPtrC contactId = VIMPSTUtils::DisplayId( unknownItem->GetItemUserId() );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1074 </td><td class="black_source"> if( addedUserId.Compare( contactId ) == 0 )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1075 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1076 </td><td class="black_source"> itemIndex = iItemArray.Find(unknownItem);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1077 </td><td class="black_source"> if( itemIndex > -1 )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1078 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1079 </td><td class="black_source"> found = ETrue;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1080 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1081 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1082 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1083 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::RemoveFromUnknonListL for ends") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1084 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1085 </td><td class="black_source"> if( found )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1086 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1087 </td><td class="black_source"> iItemArray.Remove(itemIndex);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1088 </td><td class="black_source"> iUnKnownContactArray.Remove( index );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1089 </td><td class="black_source"> delete unknownItem;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1090 </td><td class="black_source"> unknownItem = NULL;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1091 </td><td class="black_source"> iItemArray.Compress();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1092 </td><td class="black_source"> iUnKnownContactArray.Compress();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1093 </td><td class="black_source"> if( iProcessObservers )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1094 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1095 </td><td class="black_source"> // this is to refresh the list box</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1096 </td><td class="black_source"> // KErrNotFound , focus remain at same position</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1097 </td><td class="black_source"> iProcessObservers->HandleDeletionL(TVIMPSTEnums::EUnknonContactItem, KErrNotFound );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1098 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1099 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1100 </td><td class="black_source"> TRACE( T_LIT("CVIMPSTProcessArray::RemoveFromUnknonListL end ") );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1101 </td><td class="black_source"> return found;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1102 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1103 </td><td class="black_source">//-----------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1104 </td><td class="black_source">//CVIMPSTProcessArray::RemoveFromInvitationListL</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1105 </td><td class="black_source">//-----------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1106 </td><td class="black_source">//</td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a411"></a>2 </td><td align="right" class="black_profile">0 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 1107 </td><td class="black_source">TBool CVIMPSTProcessArray::RemoveFromInvitationListL( const TDesC& aAddedUserId )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1108 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1109 </td><td class="black_source"> TPtrC addedUserId = VIMPSTUtils::DisplayId( aAddedUserId );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1110 </td><td class="black_source"> TBool found = EFalse;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1111 </td><td class="black_source"> TInt index = KErrNotFound;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1112 </td><td class="black_source"> TInt itemIndex = KErrNotFound;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1113 </td><td class="black_source"> // item not foun in unknown list</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1114 </td><td class="black_source"> // check in invitation item array</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1115 </td><td class="black_source"> TInt count = iAddRequestArray.Count();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1116 </td><td class="black_source"> CVIMPSTProcessFriendRequestItem* requestItem = NULL;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1117 </td><td class="black_source"> for(index = 0 ; index < count ; index++)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1118 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1119 </td><td class="black_source"> requestItem = iAddRequestArray[index];</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1120 </td><td class="black_source"> TPtrC contactId = VIMPSTUtils::DisplayId( requestItem->GetItemUserId() );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1121 </td><td class="black_source"> if( addedUserId.Compare( contactId ) == 0 )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1122 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1123 </td><td class="black_source"> itemIndex = iItemArray.Find(requestItem);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1124 </td><td class="black_source"> if( itemIndex > -1 )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1125 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1126 </td><td class="black_source"> found = ETrue;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1127 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1128 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1129 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1130 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1131 </td><td class="black_source"> if( found )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1132 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1133 </td><td class="black_source"> iItemArray.Remove(itemIndex);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1134 </td><td class="black_source"> iAddRequestArray.Remove( index );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1135 </td><td class="black_source"> delete requestItem;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1136 </td><td class="black_source"> requestItem = NULL;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1137 </td><td class="black_source"> iItemArray.Compress();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1138 </td><td class="black_source"> iAddRequestArray.Compress();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1139 </td><td class="black_source"> if( iProcessObservers )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1140 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1141 </td><td class="black_source"> // this is to refresh the list box</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1142 </td><td class="black_source"> // KErrNotFound , focus remain at same position</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1143 </td><td class="black_source"> iProcessObservers->HandleDeletionL(TVIMPSTEnums::EFriendRequestItem, KErrNotFound );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1144 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1145 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1146 </td><td class="black_source"> return found;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1147 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1148 </td><td class="black_source">//-----------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1149 </td><td class="black_source">//CVIMPSTProcessArray::MapContactListPositions</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1150 </td><td class="black_source">//-----------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1151 </td><td class="black_source">//</td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="red_profile"><a name="a412"></a>0 </td><td align="right" class="black_profile">0 </td><td align="right" class="red_profile">-</td><td align="right" class="red_profile"> <a name="ut3" href="indexD40.html#ut4">1152</a> </td><td class="red_source">void CVIMPSTProcessArray::MapContactListPositions(RArray<TInt>& aPos )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1153 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1154 </td><td class="black_source"> // add conversation also this list ..and return..</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1155 </td><td class="black_source"> RArray<TInt> listPos; </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1156 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1157 </td><td class="black_source"> // iContactListModel->MapContactListPositions(listPos);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1158 </td><td class="black_source"> TInt positionIndex = 0;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1159 </td><td class="black_source"> // if count is more than 0..fill the maparray...</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1160 </td><td class="black_source"> if(iItemArray.Count() + iContactListIndex > 0) </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1161 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1162 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1163 </td><td class="black_source"> TInt count = listPos.Count();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1164 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1165 </td><td class="black_source"> for(TInt posIndex = 0; posIndex < count; posIndex++, positionIndex++)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1166 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1167 </td><td class="black_source"> aPos.Append( listPos[posIndex] + iContactListIndex );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1168 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1169 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1170 </td><td class="black_source"> listPos.Close(); </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1171 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1172 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1173 </td><td class="black_source">// CVIMPSTProcessArray::GetAndCreateOpenChatListL</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1174 </td><td class="black_source">// return contact index including friend request.</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1175 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a413"></a>2 </td><td align="right" class="black_profile">2 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 1176 </td><td class="black_source">void CVIMPSTProcessArray::GetAndCreateOpenChatListL() </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1177 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1178 </td><td class="black_source"> //Get IM SubService </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1179 </td><td class="black_source"> MVIMPSTEngineSubService* subService = </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1180 </td><td class="black_source"> (iEngine.SubService(TVIMPSTEnums::EIM));</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1181 </td><td class="black_source"> RArray<SIMCacheChatItem> openChats;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1182 </td><td class="black_source"> openChats.Reset();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1183 </td><td class="black_source"> if(subService)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1184 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1185 </td><td class="black_source"> MVIMPSTEngineIMSubService& imSubService = </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1186 </td><td class="black_source"> MVIMPSTEngineIMSubService::Cast (*subService);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1187 </td><td class="black_source"> openChats = imSubService.GetOpenChatListL();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1188 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1189 </td><td class="black_source"> while( openChats.Count() )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1190 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1191 </td><td class="black_source"> SIMCacheChatItem chat = openChats[ 0 ]; // first item </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1192 </td><td class="black_source"> TPtrC contactId = *chat.iBuddyId;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1193 </td><td class="black_source"> MVIMPSTProcessArrayItem* arrayItem = FindArrayItem( contactId );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1194 </td><td class="black_source"> TBool msgPending = EFalse;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1195 </td><td class="black_source"> if( contactId.Length() )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1196 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1197 </td><td class="black_source"> if( IsUnreadMessageExistsL( contactId ) )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1198 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1199 </td><td class="black_source"> msgPending = ETrue;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1200 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1201 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1202 </td><td class="black_source"> if( arrayItem )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1203 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1204 </td><td class="black_source"> arrayItem->SetConversationOpen( ETrue );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1205 </td><td class="black_source"> arrayItem->SetMsgPending( msgPending );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1206 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1207 </td><td class="black_source"> else</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1208 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1209 </td><td class="black_source"> // not in buddy List</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1210 </td><td class="black_source"> DoHandleUnKnownContactMessageL( contactId ,msgPending );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1211 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1212 </td><td class="black_source"> openChats.Remove( 0 );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1213 </td><td class="black_source"> delete chat.iBuddyId;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1214 </td><td class="black_source"> chat.iBuddyId = NULL;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1215 </td><td class="black_source"> openChats.Compress();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1216 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1217 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1218 </td><td class="black_source">//-----------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1219 </td><td class="black_source">//CVIMPSTProcessArray::FindArrayItem</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1220 </td><td class="black_source">//-----------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1221 </td><td class="black_source">// </td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a414"></a>2 </td><td align="right" class="black_profile">0 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 1222 </td><td class="black_source">MVIMPSTProcessArrayItem* CVIMPSTProcessArray::FindArrayItem( const TDesC& aSenderId )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1223 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1224 </td><td class="black_source"> TPtrC senderId = VIMPSTUtils::DisplayId( aSenderId );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1225 </td><td class="black_source"> MVIMPSTProcessArrayItem* arrayItem = NULL;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1226 </td><td class="black_source"> TInt count = iItemArray.Count();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1227 </td><td class="black_source"> for( TInt i = 1; i < count; i++ )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1228 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1229 </td><td class="black_source"> MVIMPSTProcessArrayItem* contactItem = (MVIMPSTProcessArrayItem *)iItemArray[i];</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1230 </td><td class="black_source"> TPtrC contactId = VIMPSTUtils::DisplayId( contactItem->GetItemUserId() );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1231 </td><td class="black_source"> if( senderId.Compare( contactId ) == 0 )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1232 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1233 </td><td class="black_source"> arrayItem = contactItem;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1234 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1235 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1236 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1237 </td><td class="black_source"> return arrayItem;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1238 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1239 </td><td class="black_source">//-----------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1240 </td><td class="black_source">//CVIMPSTProcessArray::HandleChatMessageEventL</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1241 </td><td class="black_source">//-----------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1242 </td><td class="black_source">// </td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a415"></a>12 </td><td align="right" class="black_profile">12 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 1243 </td><td class="black_source">void CVIMPSTProcessArray::HandleChatMessageEventL( TVIMPSTEnums::TIMEventType aEventType ,</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1244 </td><td class="black_source"> const TDesC& aSender )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1245 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1246 </td><td class="black_source"> if( !iFetchCompleted )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1247 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1248 </td><td class="black_source"> // contact matching will not be correct until fetching completed</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1249 </td><td class="black_source"> // hence return </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1250 </td><td class="black_source"> return;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1251 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1252 </td><td class="black_source"> switch( aEventType )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1253 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1254 </td><td class="black_source"> case TVIMPSTEnums::EIMUnreadMessage:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1255 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1256 </td><td class="black_source"> if( FindAndMarkContactAsOpenChat( aSender , ETrue ) )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1257 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1258 </td><td class="black_source"> if(iProcessObservers)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1259 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1260 </td><td class="black_source"> iProcessObservers->HandleAdditionL(TVIMPSTEnums::EContactItem, KErrNotFound );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1261 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1262 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1263 </td><td class="black_source"> else </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1264 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1265 </td><td class="black_source"> DoHandleUnKnownContactMessageL( aSender , ETrue );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1266 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1267 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1268 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1269 </td><td class="black_source"> case TVIMPSTEnums::EIMUnreadChange:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1270 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1271 </td><td class="black_source"> FindAndMarkContactAsOpenChat( aSender , EFalse ) ;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1272 </td><td class="black_source"> if(iProcessObservers)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1273 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1274 </td><td class="black_source"> iProcessObservers->HandleAdditionL(TVIMPSTEnums::EContactItem,KErrNotFound );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1275 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1276 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1277 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1278 </td><td class="black_source"> case TVIMPSTEnums::EIMChatStarted:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1279 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1280 </td><td class="black_source"> if( FindAndMarkContactAsOpenChat( aSender , EFalse ) )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1281 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1282 </td><td class="black_source"> if(iProcessObservers)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1283 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1284 </td><td class="black_source"> iProcessObservers->HandleAdditionL(TVIMPSTEnums::EContactItem, KErrNotFound );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1285 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1286 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1287 </td><td class="black_source"> else </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1288 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1289 </td><td class="black_source"> DoHandleUnKnownContactMessageL( aSender, EFalse );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1290 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1291 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1292 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1293 </td><td class="black_source"> case TVIMPSTEnums::EIMChatClosed:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1294 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1295 </td><td class="black_source"> if( !RemoveFromUnknonListL( aSender ) )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1296 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1297 </td><td class="black_source"> MVIMPSTProcessArrayItem* arrayItem = FindArrayItem( aSender );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1298 </td><td class="black_source"> if( arrayItem )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1299 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1300 </td><td class="black_source"> arrayItem->SetConversationOpen( EFalse );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1301 </td><td class="black_source"> arrayItem->SetMsgPending( EFalse );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1302 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1303 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1304 </td><td class="black_source"> if(iProcessObservers)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1305 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1306 </td><td class="black_source"> iProcessObservers->HandleAdditionL(TVIMPSTEnums::EContactItem, KErrNotFound );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1307 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1308 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1309 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1310 </td><td class="black_source"> case TVIMPSTEnums::EIMAllChatClosed:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1311 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1312 </td><td class="black_source"> RemoveUnKnownContacts();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1313 </td><td class="black_source"> iUnKnownContactArray.ResetAndDestroy();// delete all items</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1314 </td><td class="black_source"> ResetOpenConversationPendingMsg();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1315 </td><td class="black_source"> if(iProcessObservers)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1316 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1317 </td><td class="black_source"> iProcessObservers->HandleAdditionL(TVIMPSTEnums::EContactItem, KErrNotFound );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1318 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1319 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1320 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1321 </td><td class="black_source"> case TVIMPSTEnums::EIMRequestCompleted:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1322 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1323 </td><td class="black_source"> if(iProcessObservers)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1324 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1325 </td><td class="black_source"> iProcessObservers->HandleAdditionL(TVIMPSTEnums::EContactItem, KErrNotFound );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1326 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1327 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1328 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1329 </td><td class="black_source"> default:</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1330 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1331 </td><td class="black_source"> // do nothing</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1332 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1333 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1334 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1335 </td><td class="black_source">//-----------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1336 </td><td class="black_source">//CVIMPSTProcessArray::HandleAddRequestEventL</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1337 </td><td class="black_source">//-----------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1338 </td><td class="black_source">// </td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a416"></a>18 </td><td align="right" class="black_profile">18 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 1339 </td><td class="black_source">void CVIMPSTProcessArray::HandleAddRequestEventL(TVIMPSTEnums::TOperationType aType, const TDesC& aRequesterId,</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1340 </td><td class="black_source"> const TDesC& aRequestorDisplayName )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1341 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1342 </td><td class="black_source"> //add new add request item at top of list(i.e at index 1, as 0 is own id).</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1343 </td><td class="black_source"> //when request is entertained remove item from list.</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1344 </td><td class="black_source"> switch( aType )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1345 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1346 </td><td class="black_source"> case TVIMPSTEnums::EAddItem :</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1347 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1348 </td><td class="black_source"> if( (!FindAnyAddRequest(aRequesterId ) )&& ( !FindAnyContactServiceField( aRequesterId ) ) && !(IsContactBlocked( aRequesterId )) )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1349 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1350 </td><td class="black_source"> CVIMPSTProcessFriendRequestItem* addRequestItem = CVIMPSTProcessFriendRequestItem::NewL(aRequesterId,aRequestorDisplayName);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1351 </td><td class="black_source"> /* Add it as the first Item of IAddRequestARray as its like stack */</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1352 </td><td class="black_source"> iAddRequestArray.Insert(addRequestItem,0); </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1353 </td><td class="black_source"> /*</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1354 </td><td class="black_source"> * always the new friend request will be shown in the beginning, so 0th item is own item, 1st item is new friendrequest</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1355 </td><td class="black_source"> * and remaining remains same.. </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1356 </td><td class="black_source"> */</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1357 </td><td class="black_source"> // ownership is in iItemArray</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1358 </td><td class="black_source"> TInt invitationIndex = iUnKnownContactArray.Count()+1;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1359 </td><td class="black_source"> iItemArray.Insert(addRequestItem, invitationIndex); </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1360 </td><td class="black_source"> if(iProcessObservers)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1361 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1362 </td><td class="black_source"> iProcessObservers->HandleAdditionL( TVIMPSTEnums::EFriendRequestItem ,KErrNotFound );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1363 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1364 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1365 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1366 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1367 </td><td class="black_source"> case TVIMPSTEnums::ERemoveItem :</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1368 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1369 </td><td class="black_source"> TInt count = iAddRequestArray.Count();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1370 </td><td class="black_source"> CVIMPSTProcessFriendRequestItem* requestItem = NULL;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1371 </td><td class="black_source"> for(TInt i = 0 ; i < count ; i++)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1372 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1373 </td><td class="black_source"> requestItem = iAddRequestArray[i];</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1374 </td><td class="black_source"> if( aRequesterId.Compare(requestItem->GetItemUserId()) == 0 )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1375 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1376 </td><td class="black_source"> TInt index = iItemArray.Find(requestItem);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1377 </td><td class="black_source"> if(index != KErrNotFound)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1378 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1379 </td><td class="black_source"> iItemArray.Remove(index);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1380 </td><td class="black_source"> iItemArray.Compress();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1381 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1382 </td><td class="black_source"> iAddRequestArray.Remove(i); </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1383 </td><td class="black_source"> delete requestItem;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1384 </td><td class="black_source"> iAddRequestArray.Compress();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1385 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1386 </td><td class="black_source"> } </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1387 </td><td class="black_source"> } </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1388 </td><td class="black_source"> if(iProcessObservers)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1389 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1390 </td><td class="black_source"> iProcessObservers->HandleDeletionL(TVIMPSTEnums::EFriendRequestItem, KErrNotFound );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1391 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1392 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1393 </td><td class="black_source"> } </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1394 </td><td class="black_source"> default :</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1395 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1396 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1397 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1398 </td><td class="black_source">//-----------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1399 </td><td class="black_source">//CVIMPSTProcessArray::DoHandleUnKnownContactMessageL</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1400 </td><td class="black_source">//-----------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1401 </td><td class="black_source">// </td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a417"></a>2 </td><td align="right" class="black_profile">2 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 1402 </td><td class="black_source">void CVIMPSTProcessArray::DoHandleUnKnownContactMessageL( const TDesC& aSenderId ,TBool aIsMsgPending )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1403 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1404 </td><td class="black_source"> TBool contactExist = EFalse ;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1405 </td><td class="black_source"> TInt count = iUnKnownContactArray.Count();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1406 </td><td class="black_source"> CVIMPSTProcessUnknownContactItem* unknownItem = NULL;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1407 </td><td class="black_source"> for( TInt i=0; i<count; i++ )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1408 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1409 </td><td class="black_source"> unknownItem = iUnKnownContactArray[i];</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1410 </td><td class="black_source"> if( aSenderId.Compare( unknownItem->GetItemUserId() ) == 0 )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1411 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1412 </td><td class="black_source"> contactExist = ETrue;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1413 </td><td class="black_source"> unknownItem->SetConversationOpen(ETrue);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1414 </td><td class="black_source"> unknownItem->SetMsgPending( aIsMsgPending );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1415 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1416 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1417 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1418 </td><td class="black_source"> if( !contactExist )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1419 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1420 </td><td class="black_source"> CVIMPSTProcessUnknownContactItem* addItem = CVIMPSTProcessUnknownContactItem::NewL(aSenderId);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1421 </td><td class="black_source"> /* Add it as the first Item of IAddRequestARray as its like stack */</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1422 </td><td class="black_source"> iUnKnownContactArray.Insert(addItem,0); </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1423 </td><td class="black_source"> // ownership is in iItemArray</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1424 </td><td class="black_source"> iItemArray.Insert(addItem, 1); // just after own Item</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1425 </td><td class="black_source"> addItem->SetMsgPending( aIsMsgPending );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1426 </td><td class="black_source"> addItem->SetConversationOpen(ETrue);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1427 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1428 </td><td class="black_source"> if(iProcessObservers)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1429 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1430 </td><td class="black_source"> iProcessObservers->HandleAdditionL( TVIMPSTEnums::EUnknonContactItem ,KErrNotFound );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1431 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1432 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1433 </td><td class="black_source">//-----------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1434 </td><td class="black_source">//CVIMPSTProcessArray::IsMsgPending</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1435 </td><td class="black_source">//-----------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1436 </td><td class="black_source">// </td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="red_profile"><a name="a418"></a>0 </td><td align="right" class="black_profile">0 </td><td align="right" class="red_profile">-</td><td align="right" class="red_profile"> <a name="ut4" href="indexD40.html#ut5">1437</a> </td><td class="red_source">TBool CVIMPSTProcessArray::IsMsgPending(TInt aIndex)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1438 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1439 </td><td class="black_source"> if( aIndex < iItemArray.Count() && aIndex >= 0 )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1440 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1441 </td><td class="black_source"> MVIMPSTProcessArrayItem* item = (MVIMPSTProcessArrayItem *)iItemArray[aIndex];</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1442 </td><td class="black_source"> if(item)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1443 </td><td class="black_source"> { </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1444 </td><td class="black_source"> return item->IsMsgPending();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1445 </td><td class="black_source"> } </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1446 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1447 </td><td class="black_source"> return EFalse;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1448 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1449 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1450 </td><td class="black_source">//-----------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1451 </td><td class="black_source">//CVIMPSTProcessArray::IsConversationExist</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1452 </td><td class="black_source">//-----------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1453 </td><td class="black_source">// </td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="red_profile"><a name="a419"></a>0 </td><td align="right" class="black_profile">0 </td><td align="right" class="red_profile">-</td><td align="right" class="red_profile"> <a name="ut5" href="indexD40.html#ut6">1454</a> </td><td class="red_source">TBool CVIMPSTProcessArray::IsConversationExist(TInt aIndex)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1455 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1456 </td><td class="black_source"> if( aIndex < iItemArray.Count() && aIndex >= 0 )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1457 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1458 </td><td class="black_source"> MVIMPSTProcessArrayItem* item = (MVIMPSTProcessArrayItem *)iItemArray[aIndex];</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1459 </td><td class="black_source"> if(item)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1460 </td><td class="black_source"> { </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1461 </td><td class="black_source"> return item->IsConversationOpen();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1462 </td><td class="black_source"> } </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1463 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1464 </td><td class="black_source"> return EFalse;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1465 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1466 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1467 </td><td class="black_source">//-----------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1468 </td><td class="black_source">//CVIMPSTProcessArray::ResetPendingMsg</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1469 </td><td class="black_source">//-----------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1470 </td><td class="black_source">// </td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="red_profile"><a name="a420"></a>0 </td><td align="right" class="black_profile">0 </td><td align="right" class="red_profile">-</td><td align="right" class="red_profile"> <a name="ut6" href="indexD40.html#ut7">1471</a> </td><td class="red_source">void CVIMPSTProcessArray::ResetPendingMsg(TInt aIndex)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1472 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1473 </td><td class="black_source"> if( aIndex < iItemArray.Count() && aIndex >= 0 )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1474 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1475 </td><td class="black_source"> MVIMPSTProcessArrayItem* item = (MVIMPSTProcessArrayItem *)iItemArray[aIndex];</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1476 </td><td class="black_source"> if(item)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1477 </td><td class="black_source"> { </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1478 </td><td class="black_source"> item->SetMsgPending( EFalse );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1479 </td><td class="black_source"> } </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1480 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1481 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1482 </td><td class="black_source">//-----------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1483 </td><td class="black_source">//CVIMPSTProcessArray::ResetOpenConversationPendingMsg</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1484 </td><td class="black_source">//-----------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1485 </td><td class="black_source">// </td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a421"></a>2 </td><td align="right" class="black_profile">2 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 1486 </td><td class="black_source">void CVIMPSTProcessArray::ResetOpenConversationPendingMsg()</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1487 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1488 </td><td class="black_source"> for( TInt index = 0; index < iItemArray.Count() ;index++ )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1489 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1490 </td><td class="black_source"> MVIMPSTProcessArrayItem* item = (MVIMPSTProcessArrayItem *)iItemArray[index];</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1491 </td><td class="black_source"> if(item)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1492 </td><td class="black_source"> { </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1493 </td><td class="black_source"> item->SetConversationOpen( EFalse );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1494 </td><td class="black_source"> item->SetMsgPending( EFalse );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1495 </td><td class="black_source"> } </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1496 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1497 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1498 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1499 </td><td class="black_source">// CVIMPSTProcessArray::FindAnyContact</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1500 </td><td class="black_source">// Try to load with given ID, return NULL if not found.</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1501 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a422"></a>4 </td><td align="right" class="black_profile">0 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 1502 </td><td class="black_source">TBool CVIMPSTProcessArray::FindAnyContact( const TDesC& aContactId )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1503 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1504 </td><td class="black_source"> if(aContactId.Length() != 0)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1505 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1506 </td><td class="black_source"> MVIMPSTStorageContact* contact = iContactInterface->FindContactByUserId(aContactId);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1507 </td><td class="black_source"> if( contact )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1508 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1509 </td><td class="black_source"> return ETrue;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1510 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1511 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1512 </td><td class="black_source"> return EFalse;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1513 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1514 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1515 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1516 </td><td class="black_source">// CVIMPSTProcessArray::FindAnyContactServiceField</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1517 </td><td class="black_source">// Try to load with given ID, return NULL if not found.</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1518 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a423"></a>8 </td><td align="right" class="black_profile">0 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 1519 </td><td class="black_source">TBool CVIMPSTProcessArray::FindAnyContactServiceField( const TDesC& aContactId )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1520 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1521 </td><td class="black_source"> if(aContactId.Length() != 0)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1522 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1523 </td><td class="black_source"> MVIMPSTStorageContact* contact = iContactInterface->FindContactByUserId(aContactId);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1524 </td><td class="black_source"> if( contact )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1525 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1526 </td><td class="black_source"> return ETrue;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1527 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1528 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1529 </td><td class="black_source"> return EFalse;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1530 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1531 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1532 </td><td class="black_source">// CVIMPSTProcessArray::FindAndMarkContactAsOpenChat</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1533 </td><td class="black_source">// Try to load with given ID, return NULL if not found.</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1534 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a424"></a>6 </td><td align="right" class="black_profile">0 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 1535 </td><td class="black_source">TBool CVIMPSTProcessArray::FindAndMarkContactAsOpenChat( const TDesC& aContactId, TBool aMesssagePending )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1536 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1537 </td><td class="black_source"> TPtrC senderId = VIMPSTUtils::DisplayId( aContactId );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1538 </td><td class="black_source"> TBool ret = EFalse;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1539 </td><td class="black_source"> TInt count = iItemArray.Count();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1540 </td><td class="black_source"> for( TInt i = 1; i < count; i++ )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1541 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1542 </td><td class="black_source"> MVIMPSTProcessArrayItem* contactItem = (MVIMPSTProcessArrayItem *)iItemArray[i];</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1543 </td><td class="black_source"> TPtrC contactId = VIMPSTUtils::DisplayId( contactItem->GetItemUserId() );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1544 </td><td class="black_source"> if( senderId.Compare( contactId ) == 0 )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1545 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1546 </td><td class="black_source"> contactItem->SetConversationOpen( ETrue );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1547 </td><td class="black_source"> contactItem->SetMsgPending( aMesssagePending );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1548 </td><td class="black_source"> ret = ETrue;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1549 </td><td class="black_source"> break;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1550 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1551 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1552 </td><td class="black_source"> return ret;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1553 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1554 </td><td class="black_source">//-----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1555 </td><td class="black_source">// CVIMPSTProcessArray::IsUnreadMessageExists</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1556 </td><td class="black_source">// ( Other items commented in header )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1557 </td><td class="black_source">//----------------------------------------------------------------------------- </td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a425"></a>136 </td><td align="right" class="black_profile">0 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 1558 </td><td class="black_source">TBool CVIMPSTProcessArray::IsUnreadMessageExistsL(const TDesC& aRecipientId) </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1559 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1560 </td><td class="black_source"> TBool ret = EFalse;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1561 </td><td class="black_source"> TInt unreaMsgCount = KErrNone;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1562 </td><td class="black_source"> //Get IM SubService </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1563 </td><td class="black_source"> MVIMPSTEngineSubService* subService = </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1564 </td><td class="black_source"> (iEngine.SubService(TVIMPSTEnums::EIM));</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1565 </td><td class="black_source"> if(subService)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1566 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1567 </td><td class="black_source"> MVIMPSTEngineIMSubService& imSubService = </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1568 </td><td class="black_source"> MVIMPSTEngineIMSubService::Cast (*subService);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1569 </td><td class="black_source"> unreaMsgCount = imSubService.GetUnreadCountL( aRecipientId );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1570 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1571 </td><td class="black_source"> if( unreaMsgCount )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1572 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1573 </td><td class="black_source"> ret = ETrue;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1574 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1575 </td><td class="black_source"> return ret; </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1576 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1577 </td><td class="black_source">//-----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1578 </td><td class="black_source">// CVIMPSTProcessArray::IsConversationExistL</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1579 </td><td class="black_source">// ( Other items commented in header )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1580 </td><td class="black_source">//----------------------------------------------------------------------------- </td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a426"></a>138 </td><td align="right" class="black_profile">0 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 1581 </td><td class="black_source">TBool CVIMPSTProcessArray::IsConversationExistL(const TDesC& aRecipientId) </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1582 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1583 </td><td class="black_source"> //Get IM SubService </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1584 </td><td class="black_source"> MVIMPSTEngineSubService* subService1 = </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1585 </td><td class="black_source"> (iEngine.SubService(TVIMPSTEnums::EIM));</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1586 </td><td class="black_source"> if(subService1)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1587 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1588 </td><td class="black_source"> MVIMPSTEngineIMSubService& imSubService = </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1589 </td><td class="black_source"> MVIMPSTEngineIMSubService::Cast (*subService1);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1590 </td><td class="black_source"> return imSubService.IsConversationExistL( aRecipientId );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1591 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1592 </td><td class="black_source"> return EFalse; </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1593 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1594 </td><td class="black_source">//-----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1595 </td><td class="black_source">// CVIMPSTProcessArray::FindContactIndexL</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1596 </td><td class="black_source">// ( Other items commented in header )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1597 </td><td class="black_source">//----------------------------------------------------------------------------- </td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a427"></a>4 </td><td align="right" class="black_profile">0 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 1598 </td><td class="black_source">TInt CVIMPSTProcessArray::FindContactIndexL( const TDesC& aContactId )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1599 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1600 </td><td class="black_source"> MVIMPSTStorageContact* newContact = iContactInterface->FindContactByUserId( aContactId );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1601 </td><td class="black_source"> if(newContact)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1602 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1603 </td><td class="black_source"> // return the index of contact rather bool value..</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1604 </td><td class="black_source"> // 1 is for own data item.</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1605 </td><td class="black_source"> return (iContactListIndex + 1 + iContactListModel->IndexOfContact( newContact ));</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1606 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1607 </td><td class="black_source"> return KErrNotFound;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1608 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1609 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1610 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1611 </td><td class="black_source">//-----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1612 </td><td class="black_source">// CVIMPSTProcessArray::FillUnknownContactsL</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1613 </td><td class="black_source">// ( Other items commented in header )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1614 </td><td class="black_source">//------------------------------------------------------------------------------</td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a428"></a>134 </td><td align="right" class="black_profile">134 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 1615 </td><td class="black_source">void CVIMPSTProcessArray::FillUnknownContactsL()</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1616 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1617 </td><td class="black_source"> TInt count = iUnKnownContactArray.Count();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1618 </td><td class="black_source"> /* </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1619 </td><td class="black_source"> * Index = 1 cos 0th index will be OwnData, and 1 - n where n is the number of friend requests, will be friend requests </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1620 </td><td class="black_source"> */</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1621 </td><td class="black_source"> TInt index = 1; </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1622 </td><td class="black_source"> for(TInt i = 0 ; i < count ; i++)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1623 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1624 </td><td class="black_source"> // all friend request item ownership is transfered to iItemArray</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1625 </td><td class="black_source"> CVIMPSTProcessUnknownContactItem* unknownItem = iUnKnownContactArray[i];</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1626 </td><td class="black_source"> unknownItem->SetItemIndex(index); </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1627 </td><td class="black_source"> iItemArray.Insert(unknownItem, index); </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1628 </td><td class="black_source"> index ++;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1629 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1630 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1631 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1632 </td><td class="black_source">//-----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1633 </td><td class="black_source">// CVIMPSTProcessArray::FillAddRequestDataL</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1634 </td><td class="black_source">// ( Other items commented in header )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1635 </td><td class="black_source">//------------------------------------------------------------------------------</td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a429"></a>134 </td><td align="right" class="black_profile">134 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 1636 </td><td class="black_source">void CVIMPSTProcessArray::FillAddRequestDataL()</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1637 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1638 </td><td class="black_source"> TInt count = iAddRequestArray.Count();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1639 </td><td class="black_source"> /* </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1640 </td><td class="black_source"> * Index = unknowncontacts are tops so after that 1 cos 0th index will be OwnData, and 1 - n where n is the number of friend requests, will be friend requests </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1641 </td><td class="black_source"> */</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1642 </td><td class="black_source"> TInt index = iUnKnownContactArray.Count() +1 ; </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1643 </td><td class="black_source"> for(TInt i = 0 ; i < count ; i++)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1644 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1645 </td><td class="black_source"> // all friend request item ownership is transfered to iItemArray</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1646 </td><td class="black_source"> CVIMPSTProcessFriendRequestItem* requestItem = iAddRequestArray[i];</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1647 </td><td class="black_source"> requestItem->SetItemIndex(index ); </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1648 </td><td class="black_source"> iItemArray.Insert(requestItem, index); </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1649 </td><td class="black_source"> index ++;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1650 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1651 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1652 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1653 </td><td class="black_source">//-----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1654 </td><td class="black_source">// CVIMPSTProcessArray::RemoveUnKnownContacts</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1655 </td><td class="black_source">// ( Other items commented in header )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1656 </td><td class="black_source">//------------------------------------------------------------------------------</td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a430"></a>136 </td><td align="right" class="black_profile">136 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 1657 </td><td class="black_source">void CVIMPSTProcessArray::RemoveUnKnownContacts()</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1658 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1659 </td><td class="black_source"> TInt count = iUnKnownContactArray.Count();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1660 </td><td class="black_source"> for(TInt i = 0 ; i < count ; i++)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1661 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1662 </td><td class="black_source"> CVIMPSTProcessUnknownContactItem* unknownItem = iUnKnownContactArray[i];</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1663 </td><td class="black_source"> TInt index = iItemArray.Find(unknownItem);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1664 </td><td class="black_source"> if(index > -1)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1665 </td><td class="black_source"> { </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1666 </td><td class="black_source"> iItemArray.Remove(index);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1667 </td><td class="black_source"> iItemArray.Compress();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1668 </td><td class="black_source"> } </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1669 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1670 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1671 </td><td class="black_source">//-----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1672 </td><td class="black_source">// CVIMPSTProcessArray::RemoveAddRequestData</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1673 </td><td class="black_source">// ( Other items commented in header )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1674 </td><td class="black_source">//------------------------------------------------------------------------------</td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a431"></a>134 </td><td align="right" class="black_profile">134 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 1675 </td><td class="black_source">void CVIMPSTProcessArray::RemoveAddRequestData()</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1676 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1677 </td><td class="black_source"> TInt count = iAddRequestArray.Count();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1678 </td><td class="black_source"> for(TInt i = 0 ; i < count ; i++)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1679 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1680 </td><td class="black_source"> CVIMPSTProcessFriendRequestItem* requestItem = iAddRequestArray[i];</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1681 </td><td class="black_source"> TInt index = iItemArray.Find(requestItem);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1682 </td><td class="black_source"> if(index > -1)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1683 </td><td class="black_source"> { </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1684 </td><td class="black_source"> iItemArray.Remove(index);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1685 </td><td class="black_source"> iItemArray.Compress();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1686 </td><td class="black_source"> } </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1687 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1688 </td><td class="black_source"> </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1689 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1690 </td><td class="black_source">//-----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1691 </td><td class="black_source">// CVIMPSTProcessArray::LoginUserIdFromStoreL</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1692 </td><td class="black_source">// ( Other items commented in header )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1693 </td><td class="black_source">//------------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1694 </td><td class="black_source"></td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a432"></a>2 </td><td align="right" class="black_profile">0 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 1695 </td><td class="black_source">const TDesC& CVIMPSTProcessArray::LoginUserIdFromStoreL() const</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1696 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1697 </td><td class="black_source"> if( iContactInterface )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1698 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1699 </td><td class="black_source"> // most of the time this get called </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1700 </td><td class="black_source"> return iContactInterface->OwnContactL().UserId();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1701 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1702 </td><td class="black_source"> return KNullDesC;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1703 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1704 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1705 </td><td class="black_source">//-----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1706 </td><td class="black_source">// CVIMPSTProcessArray::AvatarIndex</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1707 </td><td class="black_source">// ( Other items commented in header )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1708 </td><td class="black_source">//------------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1709 </td><td class="black_source"></td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a433"></a>2 </td><td align="right" class="black_profile">0 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 1710 </td><td class="black_source">TInt CVIMPSTProcessArray::AvatarIndex(TInt aContactIndex)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1711 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1712 </td><td class="black_source"> TVIMPSTEnums::TItem itemtype = GetType( aContactIndex );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1713 </td><td class="black_source"> /* Codescanner warning is ignored, since Bound check is done </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1714 </td><td class="black_source"> * inside the GetType() method*/</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1715 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1716 </td><td class="black_source"> if( TVIMPSTEnums::EContactItem == itemtype )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1717 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1718 </td><td class="black_source"> // if the type is a contact item then return the index</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1719 </td><td class="black_source"> MVIMPSTStorageContact* contact = iContactInterface->FindContactByUserId( GetItemUserId(aContactIndex) );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1720 </td><td class="black_source"> if(contact)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1721 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1722 </td><td class="black_source"> // if any contact is found then return the index</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1723 </td><td class="black_source"> return contact->AvatarIndex();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1724 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1725 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1726 </td><td class="black_source"> return KErrNone;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1727 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1728 </td><td class="black_source">//-----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1729 </td><td class="black_source">// CVIMPSTProcessArray::SetAvatarIndex</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1730 </td><td class="black_source">// ( Other items commented in header )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1731 </td><td class="black_source">//------------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1732 </td><td class="black_source"></td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a434"></a>2 </td><td align="right" class="black_profile">2 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 1733 </td><td class="black_source">void CVIMPSTProcessArray::SetAvatarIndex( TInt aContactIndex ,TInt aAvatarIndex )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1734 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1735 </td><td class="black_source"> TVIMPSTEnums::TItem itemtype = GetType( aContactIndex );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1736 </td><td class="black_source"> if( TVIMPSTEnums::EContactItem == itemtype )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1737 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1738 </td><td class="black_source"> // if the type is a contact item then set the index </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1739 </td><td class="black_source"> MVIMPSTStorageContact* contact = iContactInterface->FindContactByUserId(GetItemUserId(aContactIndex));</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1740 </td><td class="black_source"> if(contact)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1741 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1742 </td><td class="black_source"> // if any contact is found then set the index</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1743 </td><td class="black_source"> contact->SetAvatarIndex( aAvatarIndex );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1744 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1745 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1746 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1747 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1748 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1749 </td><td class="black_source">//-----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1750 </td><td class="black_source">// CVIMPSTProcessArray::AvatarContent</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1751 </td><td class="black_source">// ( Other items commented in header )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1752 </td><td class="black_source">//------------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1753 </td><td class="black_source"></td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a435"></a>2 </td><td align="right" class="black_profile">0 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 1754 </td><td class="black_source">const TDesC8& CVIMPSTProcessArray::AvatarContent(TInt aContactIndex)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1755 </td><td class="black_source"> { </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1756 </td><td class="black_source"> TVIMPSTEnums::TItem itemtype = GetType( aContactIndex );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1757 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1758 </td><td class="black_source"> if( itemtype == TVIMPSTEnums::EContactItem )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1759 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1760 </td><td class="black_source"> // if the type is a contact item then get the avatar content from strorage</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1761 </td><td class="black_source"> MVIMPSTStorageContact* contact = iContactInterface->FindContactByUserId(GetItemUserId(aContactIndex));</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1762 </td><td class="black_source"> if(contact)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1763 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1764 </td><td class="black_source"> // if any contact is found then get the content</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1765 </td><td class="black_source"> return contact->AvatarContent();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1766 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1767 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1768 </td><td class="black_source"> return KNullDesC8();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1769 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1770 </td><td class="black_source">//-----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1771 </td><td class="black_source">// CVIMPSTProcessArray::OwnAvatarContentL</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1772 </td><td class="black_source">// ( Other items commented in header )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1773 </td><td class="black_source">//------------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1774 </td><td class="black_source"></td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a436"></a>2 </td><td align="right" class="black_profile">0 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 1775 </td><td class="black_source">const TDesC8& CVIMPSTProcessArray::OwnAvatarContentL( ) const</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1776 </td><td class="black_source"> { </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1777 </td><td class="black_source"> MVIMPSTStorageContact& contact = iContactInterface->OwnContactL(); </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1778 </td><td class="black_source"> // if any contact is found then get the content</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1779 </td><td class="black_source"> return contact.AvatarContent();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1780 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1781 </td><td class="black_source">//-----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1782 </td><td class="black_source">// CVIMPSTProcessArray::OwnAvatarIndexL</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1783 </td><td class="black_source">// ( Other items commented in header )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1784 </td><td class="black_source">//------------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1785 </td><td class="black_source"></td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a437"></a>2 </td><td align="right" class="black_profile">0 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 1786 </td><td class="black_source">TInt CVIMPSTProcessArray::OwnAvatarIndexL( )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1787 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1788 </td><td class="black_source"> MVIMPSTStorageContact& contact = iContactInterface->OwnContactL(); </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1789 </td><td class="black_source"> return contact.AvatarIndex(); </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1790 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1791 </td><td class="black_source">//-----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1792 </td><td class="black_source">// CVIMPSTProcessArray::SetOwnAvatarIndexL</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1793 </td><td class="black_source">// ( Other items commented in header )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1794 </td><td class="black_source">//------------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1795 </td><td class="black_source"></td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="red_profile"><a name="a438"></a>0 </td><td align="right" class="black_profile">0 </td><td align="right" class="red_profile">-</td><td align="right" class="red_profile"> <a name="ut7" href="indexD40.html#ut8">1796</a> </td><td class="red_source">void CVIMPSTProcessArray::SetOwnAvatarIndexL( TInt aAvatarIndex )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1797 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1798 </td><td class="black_source"> MVIMPSTStorageContact& contact = iContactInterface->OwnContactL(); </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1799 </td><td class="black_source"> contact.SetAvatarIndex( aAvatarIndex );</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1800 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1801 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1802 </td><td class="black_source">//-----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1803 </td><td class="black_source">// CVIMPSTProcessArray::FindAnyAddRequest</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1804 </td><td class="black_source">// ( Other items commented in header )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1805 </td><td class="black_source">//------------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1806 </td><td class="black_source"></td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a439"></a>20 </td><td align="right" class="black_profile">0 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 1807 </td><td class="black_source">TInt CVIMPSTProcessArray::FindAnyAddRequest( const TDesC& aRequesterId )</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1808 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1809 </td><td class="black_source"> TInt count = iAddRequestArray.Count();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1810 </td><td class="black_source"> for(TInt i=0; i<count; i++)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1811 </td><td class="black_source"> { </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1812 </td><td class="black_source"> if((aRequesterId.Compare(iAddRequestArray[i]->GetItemUserId()))==0 ) </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1813 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1814 </td><td class="black_source"> return ETrue;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1815 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1816 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1817 </td><td class="black_source"> return EFalse;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1818 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1819 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1820 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1821 </td><td class="black_source">// CVIMPSTProcessArray::GetSelectedItemIndex</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1822 </td><td class="black_source">// return contact index including friend request.</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1823 </td><td class="black_source">// -----------------------------------------------------------------------------</td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a440"></a>6 </td><td align="right" class="black_profile">0 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 1824 </td><td class="black_source">TInt CVIMPSTProcessArray::GetSelectedItemIndex(const TDesC& aContactId) </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1825 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1826 </td><td class="black_source"> TInt itemArrayCount = iItemArray.Count();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1827 </td><td class="black_source"> for(TInt index=0; index<itemArrayCount; index++)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1828 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1829 </td><td class="black_source"> MVIMPSTProcessArrayItem* item = iItemArray[ index ];</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1830 </td><td class="black_source"> if(0 == aContactId.Compare(item->GetItemUserId()))</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1831 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1832 </td><td class="black_source"> return index; </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1833 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1834 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1835 </td><td class="black_source"> return KErrNotFound;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1836 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1837 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1838 </td><td class="black_source">// --------------------------------------------------------------------------</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1839 </td><td class="black_source">// CVIMPSTProcessArray::IsContactBlocked</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1840 </td><td class="black_source">// --------------------------------------------------------------------------</td></tr>
-<tr><td colspan="5"> </td></tr>
-<tr><td align="right" class="black_profile"><a name="a441"></a>8 </td><td align="right" class="black_profile">0 </td><td align="right" class="black_profile"> </td><td align="right" class="black_profile"> 1841 </td><td class="black_source">TBool CVIMPSTProcessArray::IsContactBlocked(const TDesC& aUserId)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1842 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1843 </td><td class="black_source"> MVIMPSTEngineSubService* subService = </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1844 </td><td class="black_source"> (iEngine.SubService(TVIMPSTEnums::EPresence));</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1845 </td><td class="black_source"> if(subService)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1846 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1847 </td><td class="black_source"> MVIMPSTEnginePresenceSubService& presence = </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1848 </td><td class="black_source"> MVIMPSTEnginePresenceSubService::Cast (*subService);</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1849 </td><td class="black_source"> </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1850 </td><td class="black_source"> RPointerArray<HBufC> *blockedlist = presence .GetBlockedList();</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1851 </td><td class="black_source"> </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1852 </td><td class="black_source"> if(blockedlist)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1853 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1854 </td><td class="black_source"> for(TInt i=0; i<blockedlist->Count(); ++i)</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1855 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1856 </td><td class="black_source"> if(0 == aUserId.CompareC((*blockedlist)[i]->Des()))</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1857 </td><td class="black_source"> {</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1858 </td><td class="black_source"> return ETrue;</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1859 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1860 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1861 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1862 </td><td class="black_source"> }</td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1863 </td><td class="black_source"> return EFalse; </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1864 </td><td class="black_source"> } </td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1865 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1866 </td><td class="black_source"></td></tr>
-<tr><td colspan="3" class="black_profile"> </td><td align="right" class="black_profile"> 1867 </td><td class="black_source">//END OF FILE</td></tr>
-<tr><td colspan="5" class="red"><strong>***TER 87% (47/54) of SOURCE FILE <a name="ut8"></a>cvimpstprocessarray.cpp</strong></td></tr>
-</table><br>
-<span class="black"><a href="indexF.html" target="_top">Directory Summary</a> | <a href="index.html" target="_top">Files Summary</a> | <a href="indexB1.html" target="_top">Functions Summary</a> | <a href="indexD1.html">Execution Profile</a><br>
-To files: <a href="indexD1.html">First</a> | <a href="indexD39.html">Previous</a> | <a href="indexD41.html">Next</a> | <a href="indexD43.html">Last</a> | <a href="indexD40.html">Top</a> | <a href="indexA.html#a40">Index</a> | <a href="indexD40.html" target="_top">No Index</a></span><br><br>
-</body></html>