os/persistentdata/featuremgmt/featuremgr/test/helper/test_plugins/src/plugintimer.cpp
author sl@SLION-WIN7.fritz.box
Fri, 15 Jun 2012 03:10:57 +0200
changeset 0 bde4ae8d615e
permissions -rw-r--r--
First public contribution.
sl@0
     1
// Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
sl@0
     2
// All rights reserved.
sl@0
     3
// This component and the accompanying materials are made available
sl@0
     4
// under the terms of "Eclipse Public License v1.0"
sl@0
     5
// which accompanies this distribution, and is available
sl@0
     6
// at the URL "http://www.eclipse.org/legal/epl-v10.html".
sl@0
     7
//
sl@0
     8
// Initial Contributors:
sl@0
     9
// Nokia Corporation - initial contribution.
sl@0
    10
//
sl@0
    11
// Contributors:
sl@0
    12
//
sl@0
    13
// Description:
sl@0
    14
//
sl@0
    15
sl@0
    16
sl@0
    17
sl@0
    18
#include "plugintimer.h"
sl@0
    19
#include <featmgr/featureinfoplugin.h>
sl@0
    20
#include "trace.h"
sl@0
    21
sl@0
    22
CPluginTimer* CPluginTimer::NewL( const TTimeIntervalMicroSeconds32& anInterval, 
sl@0
    23
                                  MFeatureInfoPluginCallback& aService,
sl@0
    24
                                  FeatureInfoCommand::TFeatureInfoCmd aCommandId,
sl@0
    25
                                  TUint8 aTransId, 
sl@0
    26
                                  TInt aRetVal,
sl@0
    27
                                  MPluginTimerCallback* aCallback )
sl@0
    28
    {
sl@0
    29
    CPluginTimer* self = new( ELeave ) CPluginTimer(0, aService, aCommandId, 
sl@0
    30
                                                    aTransId, aRetVal, aCallback);
sl@0
    31
    
sl@0
    32
    CleanupStack::PushL( self );
sl@0
    33
    self->ConstructL();
sl@0
    34
    CleanupStack::Pop( self );
sl@0
    35
sl@0
    36
    CActiveScheduler::Add(self);
sl@0
    37
sl@0
    38
    self->After(anInterval);
sl@0
    39
sl@0
    40
    return self;
sl@0
    41
    }
sl@0
    42
sl@0
    43
CPluginTimer::~CPluginTimer()    
sl@0
    44
    {
sl@0
    45
    // PCLint demands
sl@0
    46
    iCallback = NULL; 
sl@0
    47
    }
sl@0
    48
sl@0
    49
CPluginTimer::CPluginTimer( TInt aPriority, 
sl@0
    50
                            MFeatureInfoPluginCallback& aService,
sl@0
    51
                            FeatureInfoCommand::TFeatureInfoCmd aCommandId,
sl@0
    52
                            TUint8 aTransId,
sl@0
    53
                            TInt aRetVal,
sl@0
    54
                            MPluginTimerCallback* aCallback )
sl@0
    55
    : CTimer(aPriority),
sl@0
    56
    iService(aService),
sl@0
    57
    iCommandId(aCommandId),
sl@0
    58
    iTransId(aTransId),
sl@0
    59
    iRetVal(aRetVal),
sl@0
    60
    iCallback(aCallback)
sl@0
    61
    {
sl@0
    62
    }
sl@0
    63
sl@0
    64
void CPluginTimer::ConstructL()
sl@0
    65
    {
sl@0
    66
    CTimer::ConstructL();
sl@0
    67
    }
sl@0
    68
sl@0
    69
    
sl@0
    70
void CPluginTimer::RunL(  )
sl@0
    71
    {
sl@0
    72
    iCallback->GenericTimerFiredL(iService, iCommandId, iTransId, iRetVal );
sl@0
    73
sl@0
    74
    }