contentstorage/casoftwareregistry/s60/src/cauninstallnotifier_p.cpp
author hgs
Mon, 18 Oct 2010 10:44:15 +0300
changeset 127 7b66bc3c6dc9
parent 107 b34d53f6acdf
permissions -rw-r--r--
201041
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
107
hgs
parents:
diff changeset
     1
/*
hgs
parents:
diff changeset
     2
 * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
hgs
parents:
diff changeset
     3
 * All rights reserved.
hgs
parents:
diff changeset
     4
 * This component and the accompanying materials are made available
hgs
parents:
diff changeset
     5
 * under the terms of "Eclipse Public License v1.0"
hgs
parents:
diff changeset
     6
 * which accompanies this distribution, and is available
hgs
parents:
diff changeset
     7
 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
hgs
parents:
diff changeset
     8
 *
hgs
parents:
diff changeset
     9
 * Initial Contributors:
hgs
parents:
diff changeset
    10
 * Nokia Corporation - initial contribution.
hgs
parents:
diff changeset
    11
 *
hgs
parents:
diff changeset
    12
 * Contributors:
hgs
parents:
diff changeset
    13
 *
hgs
parents:
diff changeset
    14
 * Description: canotifier.cpp
hgs
parents:
diff changeset
    15
 *
hgs
parents:
diff changeset
    16
 */
hgs
parents:
diff changeset
    17
hgs
parents:
diff changeset
    18
#include "cauninstallnotifier.h"
hgs
parents:
diff changeset
    19
#include "cauninstallnotifier_p.h"
hgs
parents:
diff changeset
    20
#include "caprogresscanner.h"
hgs
parents:
diff changeset
    21
#include "cauninstallobserver.h"
hgs
parents:
diff changeset
    22
#include "casoftwareregistry.h"
hgs
parents:
diff changeset
    23
hgs
parents:
diff changeset
    24
/*!
hgs
parents:
diff changeset
    25
 Constructor.
hgs
parents:
diff changeset
    26
 \param notifierFilter descrbies entries to observe.
hgs
parents:
diff changeset
    27
 */
hgs
parents:
diff changeset
    28
CaUninstallNotifierPrivate::CaUninstallNotifierPrivate() :
hgs
parents:
diff changeset
    29
    mUninstallObserver(NULL), mProgressScanner(NULL),
hgs
parents:
diff changeset
    30
    mCaSoftwareRegistry(CaSoftwareRegistry::create()),
127
hgs
parents: 107
diff changeset
    31
    m_q(NULL),
hgs
parents: 107
diff changeset
    32
    mLastComponentId(0),
hgs
parents: 107
diff changeset
    33
    mLastValueOfProgress(0)
107
hgs
parents:
diff changeset
    34
{
hgs
parents:
diff changeset
    35
    mUninstallObserver = new CaUninstallObserver();
hgs
parents:
diff changeset
    36
    TRAP_IGNORE(mProgressScanner = CCaProgresScanner::NewL(mUninstallObserver));
hgs
parents:
diff changeset
    37
}
hgs
parents:
diff changeset
    38
hgs
parents:
diff changeset
    39
/*!
hgs
parents:
diff changeset
    40
 Destructor.
hgs
parents:
diff changeset
    41
 */
hgs
parents:
diff changeset
    42
CaUninstallNotifierPrivate::~CaUninstallNotifierPrivate()
hgs
parents:
diff changeset
    43
{
hgs
parents:
diff changeset
    44
    delete mProgressScanner;
hgs
parents:
diff changeset
    45
    delete mUninstallObserver;
hgs
parents:
diff changeset
    46
}
hgs
parents:
diff changeset
    47
127
hgs
parents: 107
diff changeset
    48
/*!
hgs
parents: 107
diff changeset
    49
 Makes connections witch uninstall observer.
hgs
parents: 107
diff changeset
    50
 */
107
hgs
parents:
diff changeset
    51
void CaUninstallNotifierPrivate::makeConnect()
hgs
parents:
diff changeset
    52
{
hgs
parents:
diff changeset
    53
    connect(mUninstallObserver, SIGNAL(signalprogressChange(int, int)), 
127
hgs
parents: 107
diff changeset
    54
            this, SLOT(progressChange(int, int)));
hgs
parents: 107
diff changeset
    55
}
hgs
parents: 107
diff changeset
    56
hgs
parents: 107
diff changeset
    57
/*!
hgs
parents: 107
diff changeset
    58
 Slot to cache and forward progress notification.
hgs
parents: 107
diff changeset
    59
 */
hgs
parents: 107
diff changeset
    60
void CaUninstallNotifierPrivate::progressChange(int componentId,int valueOfProgress){
hgs
parents: 107
diff changeset
    61
    mLastComponentId = componentId;
hgs
parents: 107
diff changeset
    62
    mLastValueOfProgress = valueOfProgress;
hgs
parents: 107
diff changeset
    63
    emit m_q->progressChange(componentId, valueOfProgress);
107
hgs
parents:
diff changeset
    64
}
127
hgs
parents: 107
diff changeset
    65
hgs
parents: 107
diff changeset
    66
/*!
hgs
parents: 107
diff changeset
    67
 Returns last progress notification.
hgs
parents: 107
diff changeset
    68
 */
hgs
parents: 107
diff changeset
    69
QVariantMap CaUninstallNotifierPrivate::getLastNotification()
hgs
parents: 107
diff changeset
    70
{
hgs
parents: 107
diff changeset
    71
    QVariantMap lastNote;
hgs
parents: 107
diff changeset
    72
    if(mLastValueOfProgress < 0){
hgs
parents: 107
diff changeset
    73
    	mLastComponentId = 0;
hgs
parents: 107
diff changeset
    74
    }
hgs
parents: 107
diff changeset
    75
    lastNote.insert(uninstallNotifierComponentIdKey, mLastComponentId);
hgs
parents: 107
diff changeset
    76
    lastNote.insert(uninstallNotifierValueOfProgressKey, mLastValueOfProgress);
hgs
parents: 107
diff changeset
    77
    return lastNote;
hgs
parents: 107
diff changeset
    78
}