| author | Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> | 
| Tue, 31 Aug 2010 15:11:31 +0300 | |
| branch | RCL_3 | 
| changeset 57 | ebe688cedc25 | 
| permissions | -rw-r--r-- | 
| 57 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1 | /* | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2 | * Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies). | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 3 | * All rights reserved. | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 4 | * This component and the accompanying materials are made available | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 5 | * under the terms of "Eclipse Public License v1.0" | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 6 | * which accompanies this distribution, and is available | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 7 | * at the URL "http://www.eclipse.org/legal/epl-v10.html". | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 8 | * | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 9 | * Initial Contributors: | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 10 | * Nokia Corporation - initial contribution. | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 11 | * | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 12 | * Contributors: | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 13 | * | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 14 | * Description: This class handles asynchronous notifications (e.g. new messages) | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 15 | * from server to client. | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 16 | * | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 17 | */ | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 18 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 19 | // SYSTEM INCLUDES | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 20 | #include <ccsnotificationhandler.h> | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 21 | #include <ccsrequesthandler.h> | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 22 | #include <rcssession.h> | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 23 | #include <ccsclientconversation.h> | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 24 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 25 | // USER INCLUDES | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 26 | #include "ccsdebug.h" | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 27 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 28 | // ----------------------------------------------------------------------------- | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 29 | // CCsNotificationHandler::NewL() | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 30 | // Two-phased constructor. | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 31 | // ----------------------------------------------------------------------------- | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 32 | CCsNotificationHandler* CCsNotificationHandler:: | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 33 | NewL(CCSRequestHandler* aRequestHandler) | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 34 |     {
 | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 35 |     PRINT ( _L("Enter CCsNotificationHandler::NewL") );
 | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 36 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 37 | CCsNotificationHandler* self = new ( ELeave ) CCsNotificationHandler(); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 38 | CleanupStack::PushL( self ); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 39 | self->ConstructL(aRequestHandler); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 40 | CleanupStack::Pop(); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 41 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 42 |     PRINT ( _L("End CCsNotificationHandler::NewL") );
 | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 43 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 44 | return( self ) ; | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 45 | } | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 46 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 47 | // ----------------------------------------------------------------------------- | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 48 | // CCsNotificationHandler::CCsNotificationHandler() | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 49 | // C++ default constructor can NOT contain any code, that might leave. | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 50 | // ----------------------------------------------------------------------------- | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 51 | CCsNotificationHandler::CCsNotificationHandler() | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 52 | : CActive( EPriorityStandard ) | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 53 |     {
 | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 54 | CActiveScheduler::Add( this ); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 55 | } | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 56 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 57 | // ----------------------------------------------------------------------------- | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 58 | // CCsNotificationHandler::~CCsNotificationHandler() | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 59 | // Destructor. | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 60 | // ----------------------------------------------------------------------------- | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 61 | CCsNotificationHandler::~CCsNotificationHandler() | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 62 |     {
 | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 63 | // Unsubscribe | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 64 | TRAP_IGNORE(RemoveChangeEventL()); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 65 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 66 | Cancel(); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 67 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 68 | iSession.Close(); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 69 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 70 | if ( iNotificationBuffer ) | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 71 |         {
 | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 72 | delete iNotificationBuffer; | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 73 | iNotificationBuffer = NULL; | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 74 | } | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 75 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 76 | if ( iNextReqIDBuffer ) | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 77 |         {
 | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 78 | delete iNextReqIDBuffer; | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 79 | iNextReqIDBuffer = NULL; | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 80 | } | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 81 | } | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 82 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 83 | // ----------------------------------------------------------------------------- | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 84 | // CCsNotificationHandler::ConstructL() | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 85 | // Symbian 2nd phase constructor can leave. | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 86 | // ----------------------------------------------------------------------------- | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 87 | void CCsNotificationHandler::ConstructL(CCSRequestHandler* aRequestHandler) | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 88 |     {
 | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 89 | iRequestHandler = aRequestHandler; | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 90 | iLastReqID = -1; | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 91 | iNextReqIDBuffer = NULL; | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 92 | iNotificationBuffer = NULL; | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 93 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 94 | User::LeaveIfError( iSession.Connect() ); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 95 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 96 | // Subscribe | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 97 | RequestChangeEventL(); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 98 | } | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 99 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 100 | // ----------------------------------------------------------------------------- | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 101 | // CCsNotificationHandler::RunL() | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 102 | // Invoked to handle responses from the server. | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 103 | // ----------------------------------------------------------------------------- | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 104 | void CCsNotificationHandler::RunL() | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 105 |     {
 | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 106 | TInt currentReqID = 0; | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 107 | if ( iNextReqIDBuffer ) | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 108 |        {
 | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 109 | TLex8 lex(iNextReqIDBuffer->Des()); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 110 | lex.Val(currentReqID); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 111 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 112 | delete iNextReqIDBuffer; | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 113 | iNextReqIDBuffer = NULL; | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 114 | } | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 115 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 116 | switch ( iStatus.Int() ) | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 117 |         {
 | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 118 | case EAddConversationListEvent: | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 119 | iRequestHandler->HandleAddConversationList(iNotificationBuffer); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 120 | break; | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 121 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 122 | case EDeleteConversationListEvent: | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 123 | iRequestHandler->HandleDeleteConversationList(iNotificationBuffer); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 124 | break; | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 125 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 126 | case EModifyConversationListEvent: | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 127 | iRequestHandler->HandleModifyConversationList(iNotificationBuffer); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 128 | break; | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 129 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 130 | case EPartialDeleteConversationListEvent: | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 131 | iRequestHandler->HandlePartialDeleteConversationList(iNotificationBuffer); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 132 | break; | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 133 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 134 | case EAddConversationEvent: | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 135 | iRequestHandler->HandleAddConversation(iNotificationBuffer); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 136 | break; | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 137 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 138 | case EDeleteConversationEvent: | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 139 | iRequestHandler->HandleDeleteConversation(iNotificationBuffer); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 140 | break; | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 141 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 142 | case EModifyConversationEvent: | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 143 | iRequestHandler->HandleModifyConversation(iNotificationBuffer); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 144 | break; | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 145 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 146 | case ECachingStartedEvent: | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 147 | iRequestHandler->HandleCachingStarted(iNotificationBuffer); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 148 | break; | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 149 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 150 | case ECachingCompletedEvent: | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 151 | iRequestHandler->HandleCachingCompleted(iNotificationBuffer); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 152 | break; | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 153 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 154 | case ECachingErrorEvent: | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 155 | iRequestHandler->HandleCachingError(iNotificationBuffer); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 156 | break; | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 157 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 158 | case ERefreshConversationListEvent: | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 159 | iRequestHandler->HandleRefreshConversationList(iNotificationBuffer); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 160 | break; | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 161 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 162 | case ERefreshConversationEvent: | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 163 | iRequestHandler->HandleRefreshConversation(iNotificationBuffer); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 164 | break; | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 165 | } | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 166 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 167 | iLastReqID = currentReqID; | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 168 | RequestChangeEventL(); // re-subscribe | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 169 | } | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 170 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 171 | // ----------------------------------------------------------------------------- | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 172 | // CCsNotificationHandler::DoCancel() | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 173 | // Cancels any outstanding operation. | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 174 | // ----------------------------------------------------------------------------- | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 175 | void CCsNotificationHandler::DoCancel() | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 176 |     {
 | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 177 | // Do nothing | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 178 | } | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 179 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 180 | // ----------------------------------------------------------------------------- | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 181 | // CCsNotificationHandler::RequestChangeEventL | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 182 | // Request server for any change events | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 183 | // ----------------------------------------------------------------------------- | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 184 | void CCsNotificationHandler::RequestChangeEventL() | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 185 |     {
 | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 186 | // Create a buffer to store the search results. | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 187 | if ( iNotificationBuffer ) | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 188 |         {
 | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 189 | delete iNotificationBuffer; | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 190 | iNotificationBuffer = NULL; | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 191 | } | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 192 | iNotificationBuffer = HBufC8::NewL(KBufferMaxLen); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 193 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 194 | if ( iNextReqIDBuffer ) | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 195 |         {
 | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 196 | delete iNextReqIDBuffer; | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 197 | iNextReqIDBuffer = NULL; | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 198 | } | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 199 | iNextReqIDBuffer = HBufC8::NewL(4); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 200 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 201 | iSession.RequestChangeEventL(iLastReqID, | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 202 | iNextReqIDBuffer->Des(), | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 203 | iNotificationBuffer->Des(), | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 204 | iStatus ); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 205 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 206 | SetActive(); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 207 | } | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 208 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 209 | // ----------------------------------------------------------------------------- | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 210 | // CCsNotificationHandler::RemoveChangeEventL | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 211 | // Remove for any change events | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 212 | // ----------------------------------------------------------------------------- | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 213 | void CCsNotificationHandler::RemoveChangeEventL() | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 214 |     {
 | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 215 | iSession.RemoveChangeEventL(); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 216 | } | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 217 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 218 | // ----------------------------------------------------------------------------- | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 219 | // CCsNotificationHandler::RequestConversationListChangeEventL | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 220 | // ----------------------------------------------------------------------------- | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 221 | void CCsNotificationHandler::RequestConversationListChangeEventL() | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 222 |     {
 | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 223 | iSession.SetConversationListChangeObserverL(); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 224 | } | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 225 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 226 | // ----------------------------------------------------------------------------- | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 227 | // CCsNotificationHandler::RemoveConversationListChangeEventL | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 228 | // ----------------------------------------------------------------------------- | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 229 | void CCsNotificationHandler::RemoveConversationListChangeEventL() | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 230 |     {
 | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 231 | iSession.ResetConversationListChangeObserverL(); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 232 | } | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 233 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 234 | // ----------------------------------------------------------------------------- | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 235 | // CCsNotificationHandler::RequestConversationChangeEventL | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 236 | // ----------------------------------------------------------------------------- | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 237 | void CCsNotificationHandler::RequestConversationChangeEventL | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 238 | (CCsClientConversation* aClientConversation) | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 239 |     {
 | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 240 | // Set ConversationChangeObserver for aClientConversation in server | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 241 | // Tmp buffer | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 242 | CBufFlat* dataBuf = CBufFlat::NewL(KBufferMaxLen); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 243 | CleanupStack::PushL(dataBuf); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 244 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 245 | // Stream over the temp buffer | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 246 | RBufWriteStream dataStream(*dataBuf); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 247 | dataStream.PushL(); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 248 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 249 | // Write the Client Conversation in the stream | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 250 | aClientConversation->ExternalizeL(dataStream); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 251 | dataStream.CommitL(); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 252 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 253 | //------------------Input Buffer-------------------------- | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 254 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 255 | // Create a HBufC8 for IPC | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 256 | iRequestBuffer = HBufC8::NewL(dataBuf->Size()); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 257 | TPtr8 dataPtr(iRequestBuffer->Des()); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 258 | dataBuf->Read(0, dataPtr, dataBuf->Size()); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 259 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 260 | CleanupStack::PopAndDestroy(2, dataBuf); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 261 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 262 | // Send the request | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 263 | iSession.SetConversationChangeObserverL(iRequestBuffer->Des()); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 264 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 265 | // Cleanup | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 266 | delete iRequestBuffer; | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 267 | iRequestBuffer = NULL; | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 268 | } | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 269 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 270 | // ----------------------------------------------------------------------------- | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 271 | // CCsNotificationHandler::RemoveConversationChangeEventL | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 272 | // ----------------------------------------------------------------------------- | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 273 | void CCsNotificationHandler::RemoveConversationChangeEventL | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 274 | (CCsClientConversation* aClientConversation) | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 275 |     {
 | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 276 | // Set ConversationChangeObserver for aClientConversation in server | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 277 | // Tmp buffer | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 278 | CBufFlat* dataBuf = CBufFlat::NewL(KBufferMaxLen); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 279 | CleanupStack::PushL(dataBuf); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 280 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 281 | // Stream over the temp buffer | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 282 | RBufWriteStream dataStream(*dataBuf); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 283 | dataStream.PushL(); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 284 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 285 | // Write the Client Conversation in the stream | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 286 | aClientConversation->ExternalizeL(dataStream); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 287 | dataStream.CommitL(); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 288 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 289 | //------------------Input Buffer-------------------------- | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 290 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 291 | // Create a HBufC8 for IPC | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 292 | iRequestBuffer = HBufC8::NewL(dataBuf->Size()); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 293 | TPtr8 dataPtr(iRequestBuffer->Des()); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 294 | dataBuf->Read(0, dataPtr, dataBuf->Size()); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 295 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 296 | CleanupStack::PopAndDestroy(2, dataBuf); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 297 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 298 | // Send the request | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 299 | iSession.ResetConversationChangeObserverL(iRequestBuffer->Des()); | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 300 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 301 | // Cleanup | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 302 | delete iRequestBuffer; | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 303 | iRequestBuffer = NULL; | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 304 | } | 
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 305 | |
| 
ebe688cedc25
Revision: 201033
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 306 | // EOF |