iaupdate/IAD/ui/src/iaupdateengine.cpp
author hgs
Thu, 14 Oct 2010 14:11:30 +0300
changeset 77 d1838696558c
parent 69 b18a4bf55ddb
child 80 9dcba1ee99f7
permissions -rw-r--r--
201039_02
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     1
/*
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
     2
 * Copyright (c) 2009-2010 Nokia Corporation and/or its subsidiary(-ies).
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
     3
 * All rights reserved.
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
     4
 * This component and the accompanying materials are made available
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
     5
 * under the terms of "Eclipse Public License v1.0"
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
     6
 * which accompanies this distribution, and is available
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
     7
 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
     8
 *
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
     9
 * Initial Contributors:
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
    10
 * Nokia Corporation - initial contribution.
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
    11
 *
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
    12
 * Contributors:
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
    13
 *
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
    14
 * Description:   This module contains the implementation of IAUpdateEngine
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
    15
 *                class member functions.
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
    16
 *
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
    17
 */
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    18
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    19
#include <qapplication.h>
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    20
#include <hbmessagebox.h>
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    21
#include <hbaction.h>
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    22
#include <eikenv.h>
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    23
#include <centralrepository.h>
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
    24
#include <cmmanager.h>
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
    25
#include <cmdestination.h>
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    26
#include <rconnmon.h>
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    27
#include <apgwgnam.h>
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
    28
#include <starterclient.h>
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    30
#include "iaupdateengine.h"
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    31
#include "iaupdateserviceprovider.h"
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    32
#include "iaupdateuicontroller.h"
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
    33
#include "iaupdatefwupdatehandler.h"
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    34
#include "iaupdategloballockhandler.h"
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    35
#include "iaupdatenodefilter.h"
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    36
#include "iaupdateresult.h"
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    37
#include "iaupdateprivatecrkeys.h"
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    38
#include "iaupdateuiconfigdata.h"
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    39
#include "iaupdatequeryhistory.h"
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    40
#include "iaupdateparameters.h"
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
    41
#include "iaupdateagreement.h"
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
    42
#include "iaupdateautomaticcheck.h"
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
    43
#include "iaupdateresultsdialog.h"
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    44
#include "iaupdatedebug.h"
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    45
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
    46
IAUpdateEngine::IAUpdateEngine(QObject *parent) :
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
    47
    QObject(parent)
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
    48
    {
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    49
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::IAUpdateEngine() begin");
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
    50
    iController = NULL;
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
    51
    iFwUpdateHandler = NULL;
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
    52
    iGlobalLockHandler = NULL;
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
    53
    iAutomaticCheck = NULL;
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
    54
    iIdle = NULL;
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
    55
    iIdleAutCheck = NULL;
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    56
    iEikEnv = CEikonEnv::Static();
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
    57
    mUpdateNow = false;
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
    58
    mRequestIssued = false;
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
    59
    mStartedFromApplication = false;
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
    60
    mUiRefreshAllowed = true;
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
    61
    mWgId = 0;
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
    62
    mUpdatequeryUid = 0;
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
    63
    mDialogState = NoDialog;
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
    64
    mResultsDialog = NULL;
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
    65
    mServiceProvider = NULL;
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
    66
    mServiceProvider = new IAUpdateServiceProvider(*this);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
    67
    connect(mServiceProvider, SIGNAL(clientDisconnected()), this,
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
    68
            SLOT(handleAllClientsClosed()));
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    69
    TRAP_IGNORE( iController = CIAUpdateUiController::NewL( *this ));
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
    70
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::IAUpdateEngine() end");
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
    71
    }
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    72
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    73
IAUpdateEngine::~IAUpdateEngine()
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
    74
    {
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    75
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::~IAUpdateEngine() begin");
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
    76
    InformRequestObserver(KErrCancel);
77
d1838696558c 201039_02
hgs
parents: 69
diff changeset
    77
    if (iController)
d1838696558c 201039_02
hgs
parents: 69
diff changeset
    78
        {
d1838696558c 201039_02
hgs
parents: 69
diff changeset
    79
        delete iController;
d1838696558c 201039_02
hgs
parents: 69
diff changeset
    80
        }
d1838696558c 201039_02
hgs
parents: 69
diff changeset
    81
    
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
    82
    if (iIdle)
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
    83
        {
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
    84
        delete iIdle;
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
    85
        }
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
    86
    if (iIdleAutCheck)
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
    87
        {
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
    88
        delete iIdleAutCheck;
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
    89
        }
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
    90
    if (iGlobalLockHandler)
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
    91
        {
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
    92
        delete iGlobalLockHandler;
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
    93
        }
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
    94
    if (iAutomaticCheck)
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
    95
        {
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
    96
        delete iAutomaticCheck;
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
    97
        }
77
d1838696558c 201039_02
hgs
parents: 69
diff changeset
    98
    
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
    99
    if (iFwUpdateHandler)
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   100
        {
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   101
        delete iFwUpdateHandler;
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   102
        }
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   103
    if (mServiceProvider)
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   104
        {
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   105
        delete mServiceProvider;
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   106
        }
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   107
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::~IAUpdateEngine() end");
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   108
    }
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   109
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   110
// -----------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   111
// IAUpdateEngine::StartedByLauncherL
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   112
// 
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   113
// -----------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   114
//
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   115
void IAUpdateEngine::StartedByLauncherL(bool aRefreshFromNetworkDenied)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   116
    {
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   117
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::StartedByLauncherL() begin");
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   118
    mRequestIssued = true;
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   119
    mRequestType = IAUpdateUiDefines::ENoRequest;
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   120
    iController->SetRequestType(mRequestType);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   121
    SetVisibleL(true);
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   122
    CIAUpdateParameters* params = iController->ParamsReadAndRemoveFileL();
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   123
    iController->CheckUpdatesDeferredL(params, aRefreshFromNetworkDenied);
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   124
    }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   125
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   126
// -----------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   127
// IAUpdateEngine::CheckUpdatesRequestL
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   128
// 
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   129
// -----------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   130
//
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   131
void IAUpdateEngine::CheckUpdatesRequestL(int wgid,
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   132
        CIAUpdateParameters* aFilterParams, bool aForcedRefresh)
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   133
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   134
    {
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   135
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::CheckUpdatesRequestL() begin");
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   136
    SetClientWgId(wgid);
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   137
    mRequestIssued = true;
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   138
    mStartedFromApplication = true;
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   139
    CleanupStack::PushL(aFilterParams);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   140
    if (wgid > 0)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   141
        {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   142
        HideApplicationInFSWL(true);
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   143
        }
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   144
    CleanupStack::Pop(aFilterParams);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   145
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   146
    if (!aFilterParams->ShowProgress())
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   147
        {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   148
        iEikEnv->RootWin().SetOrdinalPosition(-1, ECoeWinPriorityNeverAtFront);
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   149
        }
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   150
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   151
    mRequestType = IAUpdateUiDefines::ECheckUpdates;
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   152
    iController->SetRequestType(mRequestType);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   153
    iController->SetForcedRefresh(aForcedRefresh);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   154
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   155
    iController->CheckUpdatesDeferredL(aFilterParams, false);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   156
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   157
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::CheckUpdatesRequestL() end");
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   158
    }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   159
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   160
// -----------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   161
// IAUpdateEngine::ShowUpdatesRequestL
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   162
// 
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   163
// -----------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   164
// 
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   165
void IAUpdateEngine::ShowUpdatesRequestL(int wgid,
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   166
        CIAUpdateParameters* aFilterParams)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   167
    {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   168
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::ShowUpdatesRequestL() begin");
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   169
    SetClientWgId(wgid);
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   170
    mRequestIssued = true;
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   171
    //    delete iBackgroundTimer;
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   172
    //    iBackgroundTimer = NULL;
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   173
    mStartedFromApplication = true;
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   174
    CleanupStack::PushL(aFilterParams);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   175
    if (wgid > 0)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   176
        {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   177
        HideApplicationInFSWL(true);
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   178
        }
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   179
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   180
    //StatusPane()->MakeVisible( true );
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   181
    iEikEnv->RootWin().SetOrdinalPosition(0, ECoeWinPriorityNormal);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   182
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   183
    //iRequestObserver = &aObserver;
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   184
    mRequestType = IAUpdateUiDefines::EShowUpdates;
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   185
    iController->SetRequestType(mRequestType);
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   186
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   187
    //if ( !iMainView )
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   188
    //    {
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   189
    //    iMainView  = CIAUpdateMainView::NewL( ClientRect() ); 
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   190
    //    AddViewL( iMainView );
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   191
    //    }
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   192
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   193
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   194
    // by pushing object to cleanup stack its destructor is called if leave happens
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   195
    // so global lock issued by this instance can be released in destructor of CIAUpdateGlobalLockHandler
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   196
    CIAUpdateGlobalLockHandler* globalLockHandler =
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   197
            CIAUpdateGlobalLockHandler::NewLC();
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   198
    if (!globalLockHandler->InUseByAnotherInstanceL())
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   199
        {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   200
        globalLockHandler->SetToInUseForAnotherInstancesL(true);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   201
        CleanupStack::Pop(globalLockHandler);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   202
        CleanupStack::Pop(aFilterParams);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   203
        CleanupStack::PushL(globalLockHandler);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   204
        iController->CheckUpdatesDeferredL(aFilterParams, false);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   205
        CleanupStack::Pop(globalLockHandler);
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   206
        delete iGlobalLockHandler;
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   207
        iGlobalLockHandler = globalLockHandler;
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   208
        //now possible deletion of iGlobalLockHandler in leave situation is handled
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   209
        //in HandleLeaveErrorL() and HandleLeaveErrorWithoutLeave methods. 
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   210
        }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   211
    else
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   212
        {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   213
        CleanupStack::PopAndDestroy(globalLockHandler);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   214
        CleanupStack::PopAndDestroy(aFilterParams);
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   215
        // locked by another IAD instance, nothing else to do than just complete client's request.  
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   216
        InformRequestObserver(KErrNone);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   217
        }
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   218
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   219
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::ShowUpdatesRequestL() end");
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   220
    }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   221
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   222
// -----------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   223
// IAUpdateEngine::ShowUpdateQueryRequestL
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   224
// 
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   225
// -----------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   226
//     
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   227
void IAUpdateEngine::ShowUpdateQueryRequestL(int wgid, uint aUid)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   228
    {
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   229
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::ShowUpdateQueryRequestL begin");
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   230
    SetClientWgId(wgid);
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   231
    mRequestIssued = true;
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   232
    mStartedFromApplication = true;
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   233
    mUpdatequeryUid = aUid;
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   234
    mUpdateNow = false;
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   235
    if (wgid > 0)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   236
        {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   237
        HideApplicationInFSWL(true);
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   238
        }
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   239
    mRequestType = IAUpdateUiDefines::EUpdateQuery;
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   240
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   241
    delete iIdle;
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   242
    iIdle = NULL;
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   243
    iIdle = CIdle::NewL(CActive::EPriorityIdle);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   244
    iIdle->Start(TCallBack(UpdateQueryCallbackL, this));
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   245
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::ShowUpdateQueryRequestL end")
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   246
    }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   247
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   248
// -----------------------------------------------------------------------------
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   249
// IAUpdateEngine::StartUpdate
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   250
// 
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   251
// -----------------------------------------------------------------------------
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   252
//
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   253
void IAUpdateEngine::StartUpdate(bool aFirmwareUpdate)
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   254
    {
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   255
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::StartUpdate() begin");
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   256
    if (aFirmwareUpdate)
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   257
        {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   258
        if (!iFwUpdateHandler)
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   259
            {
77
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   260
            TRAP_IGNORE(CIAUpdateFWUpdateHandler::NewL());
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   261
            }
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   262
        if (iFwUpdateHandler)
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   263
            {
77
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   264
            iFwUpdateHandler->FirmWareUpdatewithFOTA(this);
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   265
            }
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   266
        }
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   267
    else
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   268
        {
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   269
        // by pushing object to cleanup stack it's destructor is called if leave happens
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   270
        // so global lock issued by this instance can be released in destructor of CIAUpdateGlobalLockHandler
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   271
        CIAUpdateGlobalLockHandler* globalLockHandler =
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   272
                CIAUpdateGlobalLockHandler::NewLC();
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   273
        if (!globalLockHandler->InUseByAnotherInstanceL())
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   274
            {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   275
            globalLockHandler->SetToInUseForAnotherInstancesL(true);
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   276
            // No need to be totally silent since the updating is started
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   277
            // by user.
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   278
            SetDefaultConnectionMethodL(false);
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   279
            iController->StartUpdateL();
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   280
            CleanupStack::Pop(globalLockHandler);
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   281
            delete iGlobalLockHandler;
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   282
            iGlobalLockHandler = globalLockHandler;
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   283
            //now possible deletion of iGlobalLockHandler in leave situation is handled
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   284
            //in HandleLeaveErrorL() and HandleLeaveErrorWithoutLeave methods. 
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   285
            }
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   286
        else
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   287
            {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   288
            CleanupStack::PopAndDestroy(globalLockHandler);
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   289
            }
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   290
        }
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   291
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::StartUpdate() end");
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   292
    }
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   293
77
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   294
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   295
// -----------------------------------------------------------------------------
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   296
// IAUpdateEngine::SetVisibleL
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   297
// 
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   298
// -----------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   299
//  
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   300
void IAUpdateEngine::SetVisibleL(bool /*aVisible*/)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   301
    {
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   302
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::SetVisibleL() begin");
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   303
    //IAUPDATE_TRACE_1("[IAUPDATE] visible: %d", aVisible );
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   304
    /*if ( aVisible )
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   305
     {
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   306
     if ( iEikonEnv->RootWin().OrdinalPosition() != 0 || iEikonEnv->RootWin().OrdinalPriority() != ECoeWinPriorityNormal )
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   307
     {
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   308
     iEikonEnv->RootWin().SetOrdinalPosition( 0, ECoeWinPriorityNormal );
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   309
     }
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   310
     
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   311
     StatusPane()->MakeVisible( ETrue );
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   312
     iMainView  = CIAUpdateMainView::NewL( ClientRect() ); 
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   313
     AddViewL( iMainView );
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   314
     ActivateLocalViewL( TUid::Uid( EIAUpdateMainViewId ) );
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   315
     }
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   316
     else
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   317
     {
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   318
     iEikonEnv->RootWin().SetOrdinalPosition( -1, ECoeWinPriorityNeverAtFront );
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   319
     StatusPane()->MakeVisible( EFalse );
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   320
     }*/
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   321
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::SetVisibleL() end");
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   322
    }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   323
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   324
// -----------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   325
// IAUpdateEngine::SetClientWgId
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   326
// 
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   327
// -----------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   328
// 
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   329
void IAUpdateEngine::SetClientWgId(int aWgId)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   330
    {
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   331
    IAUPDATE_TRACE_1("[IAUPDATE] IAUpdateEngine::SetClientWgId() wgId %d", aWgId );
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   332
    mWgId = aWgId;
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   333
    }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   334
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   335
// -----------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   336
// IAUpdateEngine::ClientInBackgroundL
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   337
// 
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   338
// -----------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   339
// 
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   340
bool IAUpdateEngine::ClientInBackgroundL() const
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   341
    {
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   342
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::ClientInBackgroundL() begin");
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   343
    bool inBackground = false;
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   344
    if (mWgId > 0)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   345
        {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   346
        CArrayFixFlat<int>* wgArray = new (ELeave) CArrayFixFlat<int> (10);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   347
        CleanupStack::PushL(wgArray);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   348
        User::LeaveIfError(iEikEnv->WsSession().WindowGroupList(0, wgArray));
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   349
        int ownWgId = iEikEnv->RootWin().Identifier();
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   350
        if ((wgArray->At(0) != ownWgId) && (wgArray->At(0) != mWgId))
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   351
            {
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   352
            inBackground = true;
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   353
            }
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   354
        CleanupStack::PopAndDestroy(wgArray);
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   355
        }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   356
    IAUPDATE_TRACE_1("[IAUPDATE] IAUpdateEngine::ClientInBackgroundL() inBackground: %d", inBackground );
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   357
    return inBackground;
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   358
    }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   359
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   360
// -----------------------------------------------------------------------------
77
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   361
// IAUpdateEngine::Controller()
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   362
// 
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   363
// -----------------------------------------------------------------------------
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   364
//      
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   365
CIAUpdateUiController* IAUpdateEngine::Controller() const
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   366
    {
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   367
    return iController;
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   368
    }
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   369
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   370
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   371
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   372
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   373
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   374
// -----------------------------------------------------------------------------
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   375
// IAUpdateEngine::handleAllClientsClosed()
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   376
// 
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   377
// -----------------------------------------------------------------------------
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   378
//
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   379
void IAUpdateEngine::handleAllClientsClosed()
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   380
    {
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   381
    qApp->quit();
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   382
    }
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   383
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   384
// -----------------------------------------------------------------------------
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   385
// IAUpdateEngine::dialogFinished
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   386
// Called when dialog is finished.
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   387
// -----------------------------------------------------------------------------
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   388
//
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   389
void IAUpdateEngine::dialogFinished(HbAction *action)
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   390
    {
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   391
    DialogState dialogState = mDialogState;
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   392
    mDialogState = NoDialog;
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   393
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   394
    switch (dialogState)
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   395
        {
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   396
        case Results:
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   397
            mUiRefreshAllowed = true;
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   398
            if (iController->ResultsInfo().iRebootAfterInstall)
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   399
                {
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   400
                ShowRebootDialogL();
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   401
                }
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   402
            else
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   403
                {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   404
                if (!DoPossibleApplicationClose())
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   405
                    {
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   406
                    iController->RefreshNodeList();
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   407
                    RefreshUI();
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   408
                    }
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   409
                }
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   410
            break;
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   411
        case RebootQuery:
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   412
            if (action == mPrimaryAction)
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   413
                {
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   414
                RStarterSession startersession;
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   415
                if (startersession.Connect() == KErrNone)
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   416
                    {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   417
                    startersession.Reset(RStarterSession::EUnknownReset);
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   418
                    startersession.Close();
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   419
                    }
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   420
                }
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   421
            else
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   422
                {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   423
                if (!DoPossibleApplicationClose())
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   424
                    {
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   425
                    iController->RefreshNodeList();
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   426
                    RefreshUI();
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   427
                    }
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   428
                }
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   429
            break;
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   430
        case ShowUpdateQuery:
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   431
            if (action == mPrimaryAction)
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   432
                {
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   433
                IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::dialogFinished() Now");
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   434
                mUpdateNow = true;
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   435
                }
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   436
            else if (action == mSecondaryAction)
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   437
                {
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   438
                IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::dialogFinished() Later");
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   439
                CIAUpdateQueryHistory* updateQueryHistory =
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   440
                        CIAUpdateQueryHistory::NewL();
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   441
                CleanupStack::PushL(updateQueryHistory);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   442
                updateQueryHistory->SetTimeL(mUpdatequeryUid);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   443
                CleanupStack::PopAndDestroy(updateQueryHistory);
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   444
                }
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   445
            InformRequestObserver(KErrNone);
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   446
            break;
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   447
        default:
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   448
            break;
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   449
        }
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   450
    }
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   451
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   452
// -----------------------------------------------------------------------------
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   453
// IAUpdateEngine::StartupComplete
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   454
// 
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   455
// -----------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   456
//    
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   457
void IAUpdateEngine::StartupComplete(TInt aError)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   458
    {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   459
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::StartupComplete() begin");
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   460
    IAUPDATE_TRACE_1("[IAUPDATE] error code: %d", aError);
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   461
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   462
    if (aError != KErrNone)
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   463
        {
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   464
        HandleLeaveErrorWithoutLeave(aError);
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   465
        }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   466
    else
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   467
        {
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   468
        TRAPD( err, StartupCompleteL() );
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   469
        if (err != KErrNone)
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   470
            {
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   471
            HandleLeaveErrorWithoutLeave(err);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   472
            }
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   473
        }
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   474
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   475
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::StartupComplete() end");
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   476
    }
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   477
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   478
// -----------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   479
// IAUpdateEngine::StartupCompleteL
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   480
// 
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   481
// -----------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   482
//    
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   483
void IAUpdateEngine::StartupCompleteL()
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   484
    {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   485
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::StartupCompleteL() begin");
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   486
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   487
    delete iGlobalLockHandler;
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   488
    iGlobalLockHandler = NULL;
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   489
    iGlobalLockHandler = CIAUpdateGlobalLockHandler::NewL();
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   490
    if (!iGlobalLockHandler->InUseByAnotherInstanceL())
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   491
        {
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   492
        bool totalSilent(false);
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   493
        if (mRequestType == IAUpdateUiDefines::ECheckUpdates)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   494
            {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   495
            if (iController->Filter())
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   496
                {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   497
                if (iController->Filter()->FilterParams())
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   498
                    {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   499
                    if (iController->Filter()->FilterParams()->Refresh())
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   500
                        {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   501
                        if (!iController->ForcedRefresh())
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   502
                            {
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   503
                            //from bgchecker, make it silent
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   504
                            totalSilent = true;
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   505
                            }
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   506
                        }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   507
                    }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   508
                }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   509
            }
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   510
        SetDefaultConnectionMethodL(totalSilent);
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   511
        iGlobalLockHandler->SetToInUseForAnotherInstancesL(true);
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   512
        iController->StartRefreshL();
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   513
        }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   514
    else
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   515
        {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   516
        RefreshCompleteL(true, KErrServerBusy);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   517
        }
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   518
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   519
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::StartupCompleteL() end");
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   520
    }
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   521
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   522
// -----------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   523
// IAUpdateEngine::HandleLeaveErrorL
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   524
// 
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   525
// -----------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   526
//        
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   527
void IAUpdateEngine::HandleLeaveErrorL(TInt aError)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   528
    {
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   529
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::HandleLeaveErrorL() begin");
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   530
    //removal of iGlobalLockHandler releases possible global operation lock to other IAD instances
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   531
    delete iGlobalLockHandler;
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   532
    iGlobalLockHandler = NULL;
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   533
    // client request is completed before leave in case of leave error
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   534
    if (aError != KErrNone)
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   535
        {
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   536
        InformRequestObserver(aError);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   537
        User::Leave(aError);
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   538
        }
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   539
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   540
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::HandleLeaveErrorL() end");
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   541
    }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   542
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   543
// -----------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   544
// IAUpdateEngine::HandleLeaveErrorWithoutLeave
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   545
// 
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   546
// -----------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   547
//  
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   548
void IAUpdateEngine::HandleLeaveErrorWithoutLeave(TInt aError)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   549
    {
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   550
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::HandleLeaveErrorWithoutLeave() begin");
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   551
    //removal of iGlobalLockHandler releases possible global operation lock to other IAD instances
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   552
    delete iGlobalLockHandler;
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   553
    iGlobalLockHandler = NULL;
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   554
    if (aError != KErrNone)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   555
        {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   556
        InformRequestObserver(aError);
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   557
        }
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   558
    if (aError == KErrDiskFull)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   559
        {
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   560
        //TRAP_IGNORE( ShowGlobalErrorNoteL( aError ) );
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   561
        }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   562
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::HandleLeaveErrorWithoutLeave end");
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   563
    }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   564
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   565
// -----------------------------------------------------------------------------
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   566
// IAUpdateEngine::RefreshUI
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   567
// 
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   568
// -----------------------------------------------------------------------------
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   569
// 
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   570
void IAUpdateEngine::RefreshUI()
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   571
    {
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   572
    emit refresh(iController->Nodes(), iController->FwNodes(), KErrNone);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   573
    }
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   574
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   575
// -----------------------------------------------------------------------------
77
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   576
// IAUpdateEngine::RefreshUIProgress
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   577
// 
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   578
// -----------------------------------------------------------------------------
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   579
//
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   580
void IAUpdateEngine::RefreshUIProgress()
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   581
    {
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   582
    emit refreshProgress();
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   583
    }
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   584
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   585
// -----------------------------------------------------------------------------
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   586
// IAUpdateEngine::SetUpdatesRefreshing
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   587
// 
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   588
// -----------------------------------------------------------------------------
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   589
//
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   590
void IAUpdateEngine::SetUpdatesRefreshing( TBool aRefreshing )
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   591
    {
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   592
    emit setUpdatesRefreshing(aRefreshing);
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   593
    }
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   594
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   595
// -----------------------------------------------------------------------------
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   596
// IAUpdateEngine::RefreshCompleteL
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   597
// 
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   598
// -----------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   599
//      
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   600
void IAUpdateEngine::RefreshCompleteL(TBool /*aWithViewActivation*/,
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   601
        TInt aError)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   602
    {
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   603
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::RefreshCompleteL() begin");
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   604
    IAUPDATE_TRACE_1("[IAUPDATE] error code: %d", aError );
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   605
    //removal of iGlobalLockHandler releases possible global operation lock to other IAD instances
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   606
    delete iGlobalLockHandler;
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   607
    iGlobalLockHandler = NULL;
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   608
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   609
    if (mRequestType == IAUpdateUiDefines::ECheckUpdates)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   610
        {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   611
        InformRequestObserver(aError);
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   612
        }
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   613
    else
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   614
        {
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   615
        emit refresh(iController->Nodes(), iController->FwNodes(), aError);
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   616
        //if ( aWithViewActivation)
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   617
        //  {
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   618
        //  ActivateLocalViewL( TUid::Uid( EIAUpdateMainViewId ) );
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   619
        //  }
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   620
        CIAUpdateAgreement* agreement = CIAUpdateAgreement::NewLC();
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   621
        bool agreementAccepted = agreement->AgreementAcceptedL();
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   622
        if (iController->ForcedRefresh())
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   623
            {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   624
            if (!agreementAccepted)
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   625
                {
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   626
                agreement->SetAgreementAcceptedL();
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   627
                }
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   628
            }
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   629
        CleanupStack::PopAndDestroy(agreement);
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   630
        // By calling CIdle possible waiting dialog can be closed before
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   631
        // automatic check where a new dialog may be launched
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   632
        delete iIdleAutCheck;
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   633
        iIdleAutCheck = NULL;
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   634
        iIdleAutCheck = CIdle::NewL(CActive::EPriorityIdle);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   635
        iIdleAutCheck->Start(TCallBack(AutomaticCheckCallbackL, this));
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   636
        }
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   637
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   638
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::RefreshCompleteL() end");
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   639
    }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   640
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   641
// -----------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   642
// IAUpdateEngine::UpdateCompleteL
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   643
// 
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   644
// -----------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   645
//     
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   646
void IAUpdateEngine::UpdateCompleteL(TInt aError)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   647
    {
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   648
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::UpdateCompleteL begin");
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   649
    IAUPDATE_TRACE_1("[IAUPDATE] error code: %d", aError );
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   650
    //removal of iGlobalLockHandler releases possible global operation lock to other IAD instances
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   651
    delete iGlobalLockHandler;
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   652
    iGlobalLockHandler = NULL;
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   653
    if (mRequestType != IAUpdateUiDefines::ENoRequest)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   654
        {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   655
        InformRequestObserver(aError);
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   656
        }
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   657
77
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   658
    emit updateCompleted();
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   659
    ShowResultsDialogL();
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   660
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   661
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::UpdateCompleteL end");
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   662
    }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   663
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   664
// -----------------------------------------------------------------------------
77
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   665
// IAUpdateEngine::PreparingStarted
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   666
// 
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   667
// -----------------------------------------------------------------------------
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   668
//
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   669
void IAUpdateEngine::PreparingStarted()
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   670
    {
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   671
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   672
    }
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   673
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   674
// -----------------------------------------------------------------------------
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   675
// IAUpdateEngine::Prepared
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   676
// 
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   677
// -----------------------------------------------------------------------------
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   678
//
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   679
void IAUpdateEngine::Prepared()
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   680
    {
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   681
    emit updateCompleted();
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   682
    }
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   683
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   684
// -----------------------------------------------------------------------------
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   685
// IAUpdateEngine::ShowResultsDialogL
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   686
// 
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   687
// -----------------------------------------------------------------------------
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   688
//   
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   689
void IAUpdateEngine::ShowResultsDialogL()
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   690
    {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   691
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::ShowResultsDialogL() begin");
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   692
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   693
    mUiRefreshAllowed = false;
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   694
    mResultsDialog = new IAUpdateResultsDialog(this);
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   695
    mResultsDialog->showResults(iController->ResultsInfo(), this,
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   696
            SLOT(dialogFinished(HbAction*)));
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   697
    mDialogState = Results;
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   698
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   699
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::ShowResultsDialogL() end");
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   700
    }
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   701
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   702
// -----------------------------------------------------------------------------
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   703
// IAUpdateEngine::ShowRebootDialogL
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   704
// 
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   705
// -----------------------------------------------------------------------------
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   706
//
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   707
void IAUpdateEngine::ShowRebootDialogL()
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   708
    {
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   709
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::ShowRebootDialogL() begin");
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   710
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   711
    HbMessageBox *messageBox = new HbMessageBox(
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   712
            HbMessageBox::MessageTypeQuestion);
77
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   713
    messageBox->setText
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   714
        (hbTrId("txt_software_info_device_restart_is_needed_restar"));
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   715
    int actionCount = messageBox->actions().count();
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   716
    for (int i = actionCount - 1; i >= 0; i--)
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   717
        {
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   718
        messageBox->removeAction(messageBox->actions().at(i));
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   719
        }
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   720
    mPrimaryAction = NULL;
77
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   721
    mPrimaryAction = new HbAction(hbTrId("txt_common_button_ok"));
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   722
    HbAction *secondaryAction = NULL;
77
d1838696558c 201039_02
hgs
parents: 69
diff changeset
   723
    secondaryAction = new HbAction(hbTrId("txt_common_button_cancel"));
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   724
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   725
    messageBox->addAction(mPrimaryAction);
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   726
    messageBox->addAction(secondaryAction);
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   727
    messageBox->setTimeout(HbPopup::NoTimeout);
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   728
    messageBox->setAttribute(Qt::WA_DeleteOnClose);
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   729
    messageBox->open(this, SLOT(dialogFinished(HbAction*)));
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   730
    mDialogState = RebootQuery;
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   731
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   732
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::ShowRebootDialogL() end");
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   733
    }
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   734
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
   735
// -----------------------------------------------------------------------------
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   736
// IAUpdateEngine::InformRequestObserver
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   737
// 
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   738
// -----------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   739
//      
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   740
void IAUpdateEngine::InformRequestObserver(int aError)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   741
    {
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   742
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::InformRequestObserver() begin");
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   743
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   744
    //if ( iRequestObserver )
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   745
    if (mRequestIssued)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   746
        {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   747
        if (iController->ClosingAllowedByClient())
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   748
            {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   749
            if (mRequestType != IAUpdateUiDefines::ENoRequest)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   750
                {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   751
                //                if ( iRequestType == IAUpdateUiDefines::EUpdateQuery && iUpdateNow )
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   752
                //                    {
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   753
                //                  if ( !iBackgroundTimer )
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   754
                //                        {
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   755
                //                        iBackgroundTimer = CIAUpdateUITimer::NewL( *this, CIAUpdateUITimer::EBackgroundDelay );
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   756
                //                        }
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   757
                //                 if ( !iBackgroundTimer->IsActive() )
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   758
                //                        {
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   759
                //                        iBackgroundTimer->After( 500000 );
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   760
                //                        }
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   761
                //                    }
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   762
                //                 else
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   763
                //                    {
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   764
                iEikEnv->RootWin().SetOrdinalPosition(-1,
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   765
                        ECoeWinPriorityNeverAtFront);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   766
                //                    }
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   767
                }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   768
            }
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   769
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   770
        switch (mRequestType)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   771
            {
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   772
            case IAUpdateUiDefines::ENoRequest:
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   773
                {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   774
                mServiceProvider->completeLauncherLaunch(aError);
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   775
                break;
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   776
                }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   777
            case IAUpdateUiDefines::ECheckUpdates:
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   778
                {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   779
                mServiceProvider->completeCheckUpdates(
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   780
                        iController->CountOfAvailableUpdates(), aError);
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   781
                break;
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   782
                }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   783
            case IAUpdateUiDefines::EShowUpdates:
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   784
                {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   785
                CIAUpdateResult* result(NULL);
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   786
                TRAPD( error, result = CIAUpdateResult::NewL() )
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   787
                if (result)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   788
                    {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   789
                    TIAUpdateResultsInfo resultsInfo(
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   790
                            iController->ResultsInfo());
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   791
                    IAUPDATE_TRACE_3("[IAUPDATE] IAUpdateEngine::InformRequestObserver succeed: %d failed: %d  cancelled: %d",
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   792
                            resultsInfo.iCountSuccessfull,
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   793
                            resultsInfo.iCountFailed,
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   794
                            resultsInfo.iCountCancelled );
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   795
                    result->SetSuccessCount(resultsInfo.iCountSuccessfull);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   796
                    result->SetFailCount(resultsInfo.iCountFailed);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   797
                    result->SetCancelCount(resultsInfo.iCountCancelled);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   798
                    mServiceProvider->completeShowUpdates(result, aError);
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   799
                    // Ownership of result is transferred here.
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   800
                    }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   801
                else
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   802
                    {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   803
                    mServiceProvider->completeShowUpdates(NULL, error);
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   804
                    }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   805
                break;
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   806
                }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   807
            case IAUpdateUiDefines::EUpdateQuery:
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   808
                {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   809
                mServiceProvider->completeUpdateQuery(mUpdateNow, aError);
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   810
                break;
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   811
                }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   812
            default:
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   813
                {
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   814
                break;
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   815
                }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   816
            }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   817
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
   818
        mRequestIssued = false;
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   819
        }
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   820
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   821
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::InformRequestObserver() end");
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   822
    }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   823
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   824
// ---------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   825
// IAUpdateEngine::SetDefaultConnectionMethodL
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   826
// Sets the connection method for the update network connection.
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   827
// ---------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   828
//
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   829
void IAUpdateEngine::SetDefaultConnectionMethodL(bool aTotalSilent)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   830
    {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   831
    if (aTotalSilent)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   832
        {
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   833
        // from back ground checker, choose the IAP to make the internet access silent
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   834
        IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::SetDefaultConnectionMethodL() begin");
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   835
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   836
        uint connectionMethodId(0);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   837
        int connMethodId(0);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   838
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   839
        // Let's first check whether cenrep contains SNAP id other than zero
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   840
        CRepository* cenrep(CRepository::NewLC(KCRUidIAUpdateSettings));
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   841
        User::LeaveIfError(cenrep->Get(KIAUpdateAccessPoint, connMethodId));
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   842
        CleanupStack::PopAndDestroy(cenrep);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   843
        cenrep = NULL;
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   844
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   845
        RCmManager cmManager;
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   846
        cmManager.OpenL();
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   847
        CleanupClosePushL(cmManager);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   848
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   849
        if (connMethodId == -1)
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   850
            {
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   851
            IAUPDATE_TRACE("[IAUPDATE] user chooses default connection, use IAP logic");
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   852
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   853
            //check what is the default connection by users     
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   854
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   855
            TCmDefConnValue DCSetting;
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   856
            cmManager.ReadDefConnL(DCSetting);
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   857
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   858
            switch (DCSetting.iType)
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   859
                {
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   860
                case ECmDefConnAlwaysAsk:
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   861
                case ECmDefConnAskOnce:
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   862
                    {
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   863
                    //go with the best IAP under internet snap
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   864
                    connectionMethodId = GetBestIAPInAllSNAPsL(cmManager);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   865
                    break;
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   866
                    }
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   867
                case ECmDefConnDestination:
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   868
                    {
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   869
                    //go with the best IAP under this snap
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   870
                    connectionMethodId = GetBestIAPInThisSNAPL(cmManager,
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   871
                            DCSetting.iId);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   872
                    break;
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   873
                    }
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   874
                case ECmDefConnConnectionMethod:
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   875
                    {
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   876
                    //go with the best IAP under this snap
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   877
                    connectionMethodId = DCSetting.iId;
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   878
                    break;
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   879
                    }
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   880
                }
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   881
            }
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   882
        else if (connMethodId == 0)
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   883
            {
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   884
            //no choice from user, we go with the best IAP under Internent SNAP
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   885
            connectionMethodId = GetBestIAPInAllSNAPsL(cmManager);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   886
            }
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   887
        else
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   888
            {
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   889
            IAUPDATE_TRACE("[IAUPDATE] use chooses a snap");
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   890
            // It was some SNAP value
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   891
            connectionMethodId = GetBestIAPInThisSNAPL(cmManager,
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   892
                    connMethodId);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   893
            }
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   894
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   895
        CleanupStack::PopAndDestroy(&cmManager);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   896
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   897
        if (connectionMethodId != 0)
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   898
            {
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   899
            TIAUpdateConnectionMethod
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   900
                    connectionMethod(
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   901
                            connectionMethodId,
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   902
                            TIAUpdateConnectionMethod::EConnectionMethodTypeAccessPoint);
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   903
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   904
            iController->SetDefaultConnectionMethodL(connectionMethod);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   905
            }
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   906
        else
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   907
            {
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   908
            //In the totally silent case, if no usable IAP, we complete the check update with 0 updates.
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   909
            //the bgchecker will try again later after 1 month. 
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   910
            //The LEAVE will be catched up later and complete the request from background checker.
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   911
            User::LeaveIfError(KErrNotFound);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   912
            }
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   913
        IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::SetDefaultConnectionMethodL() end");
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   914
        }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   915
    else
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   916
        {
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   917
        // from grid, use the old logic
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   918
        IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::SetDefaultConnectionMethodL() begin");
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   919
        uint connectionMethodId(0);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   920
        int connMethodId(0);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   921
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   922
        // Set initial value to always ask
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   923
        int connectionMethodType(
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   924
                TIAUpdateConnectionMethod::EConnectionMethodTypeAlwaysAsk);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   925
        bool needSaving(false);
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   926
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   927
        // Let's first check whether cenrep contains SNAP id other than zero
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   928
        CRepository* cenrep(CRepository::NewLC(KCRUidIAUpdateSettings));
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   929
        User::LeaveIfError(cenrep->Get(KIAUpdateAccessPoint, connMethodId));
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   930
        CleanupStack::PopAndDestroy(cenrep);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   931
        cenrep = NULL;
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   932
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   933
        if (connMethodId == -1)
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   934
            {
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   935
            IAUPDATE_TRACE("[IAUPDATE] user chooses default connection, use IAP logic");
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   936
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   937
            connectionMethodId = 0;
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   938
            connectionMethodType
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   939
                    = TIAUpdateConnectionMethod::EConnectionMethodTypeDefault;
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   940
            }
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   941
        else if (connMethodId == 0)
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   942
            {
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   943
            IAUPDATE_TRACE("[IAUPDATE] use chooses nothing, use internal IAP logic");
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   944
            //if nothing is set by user, use our new logic
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   945
            //SetDefaultConnectionMethod2L();
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   946
            //return;
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   947
            // CenRep didn't contain any SNAP id. Let's try Internet SNAP then.
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   948
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   949
            RCmManager cmManager;
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   950
            cmManager.OpenL();
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   951
            CleanupClosePushL(cmManager);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   952
            iDestIdArray.Reset();
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   953
            cmManager.AllDestinationsL(iDestIdArray);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   954
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   955
            for (int i = 0; i < iDestIdArray.Count(); i++)
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   956
                {
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   957
                RCmDestination dest = cmManager.DestinationL(iDestIdArray[i]);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   958
                CleanupClosePushL(dest);
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   959
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   960
                if (dest.MetadataL(CMManager::ESnapMetadataInternet))
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   961
                    {
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   962
                    // Check whether Internet SNAP contains any IAP.
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   963
                    if (dest.ConnectionMethodCount() > 0)
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   964
                        {
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   965
                        connectionMethodId = iDestIdArray[i];
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   966
                        needSaving = true;
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   967
                        IAUPDATE_TRACE_1("[IAUPDATE] connectionMethodId: %d", connectionMethodId );
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   968
                        }
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   969
                    CleanupStack::PopAndDestroy(&dest);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   970
                    break;
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   971
                    }
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   972
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   973
                CleanupStack::PopAndDestroy(&dest);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   974
                }
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   975
            iDestIdArray.Reset();
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   976
            CleanupStack::PopAndDestroy(&cmManager);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   977
            }
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   978
        else
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   979
            {
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   980
            IAUPDATE_TRACE("[IAUPDATE] use chooses a snap");
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   981
            // It was some SNAP value
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   982
            connectionMethodId = connMethodId;
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   983
            }
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   984
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   985
        if (connectionMethodId > 0)
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   986
            {
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   987
            // We have now some valid SNAP id, either from CenRep or Internet SNAP
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   988
            connectionMethodType
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   989
                    = TIAUpdateConnectionMethod::EConnectionMethodTypeDestination;
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   990
            // Save to cenrep if needed
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   991
            if (needSaving)
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   992
                {
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   993
                cenrep = CRepository::NewLC(KCRUidIAUpdateSettings);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   994
                int err = cenrep->StartTransaction(
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   995
                        CRepository::EReadWriteTransaction);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   996
                User::LeaveIfError(err);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   997
                cenrep->CleanupCancelTransactionPushL();
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   998
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
   999
                connMethodId = connectionMethodId;
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1000
                err = cenrep->Set(KIAUpdateAccessPoint, connMethodId);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1001
                User::LeaveIfError(err);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1002
                TUint32 ignore = KErrNone;
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1003
                User::LeaveIfError(cenrep->CommitTransaction(ignore));
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1004
                CleanupStack::PopAndDestroy(); // CleanupCancelTransactionPushL()
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1005
                CleanupStack::PopAndDestroy(cenrep);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1006
                }
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1007
            }
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1008
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1009
        TIAUpdateConnectionMethod
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1010
                connectionMethod(
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1011
                        connectionMethodId,
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1012
                        static_cast<TIAUpdateConnectionMethod::TConnectionMethodType> (connectionMethodType));
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1013
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1014
        iController->SetDefaultConnectionMethodL(connectionMethod);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1015
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1016
        IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::SetDefaultConnectionMethodL() end");
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1017
        }
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1018
    }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1019
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1020
// ---------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1021
// IAUpdateEngine::GetBestIAPInAllSNAPsL
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1022
// Sets the best IAP from all snaps
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1023
// ---------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1024
//
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1025
uint IAUpdateEngine::GetBestIAPInAllSNAPsL(RCmManager& aCmManager)
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1026
    {
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1027
    //go with internet SNAP first.
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
  1028
    uint IAPID = 0;
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1029
    IAPID = GetBestIAPInInternetSNAPL(aCmManager);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1030
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1031
    if (IAPID)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1032
        {
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1033
        return IAPID;
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1034
        }
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1035
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1036
    //select IAP from rest of the SNAPs
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1037
    iDestIdArray.Reset();
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1038
    aCmManager.AllDestinationsL(iDestIdArray);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1039
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1040
    for (int i = 0; i < iDestIdArray.Count(); i++)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1041
        {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1042
        uint SNAPID = iDestIdArray[i];
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1043
        IAPID = GetBestIAPInThisSNAPL(aCmManager, SNAPID);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1044
        if (IAPID)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1045
            {
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1046
            break;
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1047
            }
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1048
        }
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1049
    iDestIdArray.Reset();
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1050
    return IAPID;
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1051
    }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1052
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1053
// ---------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1054
// IAUpdateEngine::GetBestIAPInInternetSNAPL
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1055
// Sets the best IAP from internet snap
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1056
// ---------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1057
//
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1058
uint IAUpdateEngine::GetBestIAPInInternetSNAPL(RCmManager& aCmManager)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1059
    {
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1060
    //select IAP from Internet SNAP
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1061
    iDestIdArray.Reset();
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1062
    aCmManager.AllDestinationsL(iDestIdArray);
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
  1063
    uint InternetSNAPID = 0;
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1064
    for (int i = 0; i < iDestIdArray.Count(); i++)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1065
        {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1066
        RCmDestination dest = aCmManager.DestinationL(iDestIdArray[i]);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1067
        CleanupClosePushL(dest);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1068
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1069
        if (dest.MetadataL(CMManager::ESnapMetadataInternet))
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1070
            {
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1071
            InternetSNAPID = iDestIdArray[i];
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1072
            CleanupStack::PopAndDestroy(&dest);
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1073
            break;
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1074
            }
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1075
        CleanupStack::PopAndDestroy(&dest);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1076
        }
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1077
    iDestIdArray.Reset();
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1078
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1079
    return GetBestIAPInThisSNAPL(aCmManager, InternetSNAPID);
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1080
    }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1081
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1082
// ---------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1083
// IAUpdateEngine::GetBestIAPInThisSNAPL
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1084
// Sets the best IAP from the given snap
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1085
// ---------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1086
//
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1087
uint IAUpdateEngine::GetBestIAPInThisSNAPL(RCmManager& aCmManager,
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1088
        uint aSNAPID)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1089
    {
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1090
    //get all usable IAPs
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1091
    TConnMonIapInfoBuf iapInfo;
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1092
    TRequestStatus status;
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1093
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1094
    RConnectionMonitor connMon;
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1095
    connMon.ConnectL();
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1096
    CleanupClosePushL(connMon);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1097
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1098
    connMon.GetPckgAttribute(EBearerIdAll, 0, KIapAvailability, iapInfo,
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1099
            status);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1100
    User::WaitForRequest(status);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1101
    User::LeaveIfError(status.Int());
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1102
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1103
    CleanupStack::PopAndDestroy(&connMon);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1104
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1105
    RCmDestination dest = aCmManager.DestinationL(aSNAPID);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1106
    CleanupClosePushL(dest);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1107
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1108
    // Check whether the SNAP contains any IAP.
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1109
    for (int i = 0; i < dest.ConnectionMethodCount(); i++)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1110
        {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1111
        RCmConnectionMethod cm = dest.ConnectionMethodL(i);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1112
        CleanupClosePushL(cm);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1113
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1114
        uint iapid = cm.GetIntAttributeL(CMManager::ECmIapId);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1115
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1116
        for (int i = 0; i < iapInfo().iCount; i++)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1117
            {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1118
            if (iapInfo().iIap[i].iIapId == iapid)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1119
                {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1120
                CleanupStack::PopAndDestroy(2); //cm & dest;
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1121
                return iapid;
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1122
                }
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1123
            }
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1124
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1125
        CleanupStack::PopAndDestroy(&cm);
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1126
        }
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1127
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1128
    CleanupStack::PopAndDestroy(&dest);
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1129
    return 0;
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1130
    }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1131
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1132
// -----------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1133
// IAUpdateEngine::ShowUpdateQueryL
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1134
// 
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1135
// -----------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1136
//    
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1137
void IAUpdateEngine::ShowUpdateQueryL()
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1138
    {
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1139
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::ShowUpdateQueryL() begin");
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1140
    CIAUpdateQueryHistory* updateQueryHistory = CIAUpdateQueryHistory::NewL();
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1141
    // Get the delay information from the controller that has read it from
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1142
    // the config file.
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1143
    updateQueryHistory->SetDelay(
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1144
            iController->ConfigData().QueryHistoryDelayHours());
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1145
    CleanupStack::PushL(updateQueryHistory);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1146
    bool isDelayed(updateQueryHistory->IsDelayedL(mUpdatequeryUid));
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1147
    CleanupStack::PopAndDestroy(updateQueryHistory);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1148
    if (!isDelayed)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1149
        {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1150
        if (ClientInBackgroundL())
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1151
            {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1152
            iEikEnv->RootWin().SetOrdinalPosition(-1, ECoeWinPriorityNormal);
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1153
            }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1154
        else
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1155
            {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1156
            iEikEnv->RootWin().SetOrdinalPosition(0, ECoeWinPriorityNormal);
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1157
            }
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1158
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1159
        HbMessageBox *messageBox = new HbMessageBox(
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1160
                HbMessageBox::MessageTypeQuestion);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1161
        messageBox->setText(QString(
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1162
                "Application update is available from Nokia. Update?"));
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
  1163
        int actionCount = messageBox->actions().count();
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1164
        for (int i = actionCount - 1; i >= 0; i--)
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1165
            {
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
  1166
            messageBox->removeAction(messageBox->actions().at(i));
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1167
            }
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
  1168
        mPrimaryAction = NULL;
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
  1169
        mPrimaryAction = new HbAction("Now");
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
  1170
        mSecondaryAction = NULL;
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
  1171
        mSecondaryAction = new HbAction("Later");
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
  1172
        messageBox->addAction(mPrimaryAction);
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
  1173
        messageBox->addAction(mSecondaryAction);
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
  1174
        messageBox->setTimeout(HbPopup::NoTimeout);
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
  1175
        messageBox->setAttribute(Qt::WA_DeleteOnClose);
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
  1176
        messageBox->open(this, SLOT(dialogFinished(HbAction*)));
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
  1177
        mDialogState = ShowUpdateQuery;
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
  1178
        }
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
  1179
    else
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
  1180
        {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1181
        InformRequestObserver(KErrNone);
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
  1182
        }
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1183
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1184
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::ShowUpdateQueryL() end");
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1185
    }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1186
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1187
// -----------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1188
// IAUpdateEngine::HideApplicationInFSWL
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1189
// 
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1190
// -----------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1191
//  
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1192
void IAUpdateEngine::HideApplicationInFSWL(bool aHide) const
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1193
    {
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1194
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::HideApplicationInFSW() begin");
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1195
    IAUPDATE_TRACE_1("[IAUPDATE] hide: %d", aHide );
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
  1196
    int id = iEikEnv->RootWin().Identifier();
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1197
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1198
    CApaWindowGroupName* wgName = CApaWindowGroupName::NewLC(
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1199
            iEikEnv->WsSession(), id);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1200
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1201
    wgName->SetHidden(aHide);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1202
    wgName->SetWindowGroupName(iEikEnv->RootWin());
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1203
    CleanupStack::PopAndDestroy(wgName);
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1204
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::HideApplicationInFSW() end");
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1205
    }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1206
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1207
// ---------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1208
// IAUpdateEngine::UpdateQueryCallbackL
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1209
// ---------------------------------------------------------------------------
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1210
//
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1211
TInt IAUpdateEngine::UpdateQueryCallbackL(TAny* aPtr)
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1212
    {
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1213
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::UpdateQueryCallbackL() begin");
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1214
    IAUpdateEngine* engine = static_cast<IAUpdateEngine*> (aPtr);
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1215
    //TRAPD( err, engine->ShowUpdateQueryL() );
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1216
    TRAP_IGNORE( engine->ShowUpdateQueryL() );
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1217
    //if ( err != KErrNone )
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1218
    //    {
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1219
    //    appUI->HandleLeaveErrorL( err );
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1220
    //    }
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1221
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::UpdateQueryCallbackL() end");
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1222
    return KErrNone;
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1223
    }
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1224
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
  1225
// ---------------------------------------------------------------------------
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
  1226
// IAUpdateEngine::AutomaticCheckCallbackL
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
  1227
// ---------------------------------------------------------------------------
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
  1228
//    
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1229
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1230
TInt IAUpdateEngine::AutomaticCheckCallbackL(TAny* aPtr)
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
  1231
    {
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
  1232
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::AutomaticCheckCallbackL() begin");
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1233
    IAUpdateEngine* engine = static_cast<IAUpdateEngine*> (aPtr);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1234
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
  1235
    int err = KErrNone;
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1236
    if (!engine->iAutomaticCheck)
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
  1237
        {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1238
        TRAP( err, engine->iAutomaticCheck = CIAUpdateAutomaticCheck::NewL() );
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
  1239
        }
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1240
    if (err != KErrNone)
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
  1241
        {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1242
        engine->HandleLeaveErrorL(err);
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
  1243
        }
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
  1244
    else
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
  1245
        {
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
  1246
        TRAP( err, engine->iAutomaticCheck->AcceptAutomaticCheckL() );
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1247
        if (err != KErrNone)
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
  1248
            {
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1249
            engine->HandleLeaveErrorL(err);
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1250
            }
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1251
        }
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1252
33
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
  1253
    IAUPDATE_TRACE("[IAUPDATE] IAUpdateEngine::AutomaticCheckCallbackL() end");
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
  1254
    return KErrNone;
8110bf1194d1 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 29
diff changeset
  1255
    }
29
26b6f0522fd8 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
  1256
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
  1257
// ---------------------------------------------------------------------------
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
  1258
// IAUpdateEngine::DoPossibleApplicationClose()
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
  1259
// ---------------------------------------------------------------------------
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
  1260
//  
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1261
bool IAUpdateEngine::DoPossibleApplicationClose()
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
  1262
    {
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
  1263
    //exit from result view if there are no update left
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1264
    bool toBeClosed = false;
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1265
    if (iController->Nodes().Count() == 0 && iController->FwNodes().Count()
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1266
            == 0)
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1267
        {
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1268
        toBeClosed = true;
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1269
        }
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1270
    else if (mStartedFromApplication
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1271
            && iController->ResultsInfo().iCountCancelled == 0
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1272
            && iController->ResultsInfo().iCountFailed == 0)
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1273
        {
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1274
        toBeClosed = true;
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1275
        }
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1276
    if (toBeClosed)
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
  1277
        {
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
  1278
        qApp->quit();
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
  1279
        }
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1280
    return toBeClosed;
42
d17dc5398051 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 33
diff changeset
  1281
    }
44
329d304c1aa1 201025_01
hgs
parents: 42
diff changeset
  1282