filemanager/App/src/CFileManagerTaskScheduler.cpp
branchRCL_3
changeset 38 491b3ed49290
parent 36 95243422089a
child 39 65326cf895ed
--- a/filemanager/App/src/CFileManagerTaskScheduler.cpp	Thu Aug 19 09:42:45 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,184 +0,0 @@
-/*
-* Copyright (c) 2006 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0""
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Wraps task scheduler functionality
-*
-*/
-
-
-
-// INCLUDE FILES
-#include <apacmdln.h>
-#include <FileManagerSchDefinitions.h>
-#include <FileManagerDebug.h>
-#include <CFileManagerEngine.h>
-#include <CFileManagerBackupSettings.h>
-#include <FileManagerPrivateCRKeys.h>
-#include "CFileManagerTaskScheduler.h"
-
-
-// CONSTANTS
-const TInt KSchedulerPriority = 32;
-const TInt KSchedulerGranularity = 1;
-const TInt KSchedulerRepeat = -1; // Repeat until deleted
-const TInt KSchedulerTaskId = 0;
-const TInt KDayNumStringLen = 4;
-const TInt KTaskInterval = 1;
-const TInt KTaskValidity = 1;
-_LIT( KDayNumStr, "%d" );
-
-
-// ======== MEMBER FUNCTIONS ========
-
-// ----------------------------------------------------------------------------
-// CFileManagerTaskScheduler::CFileManagerTaskScheduler
-// ----------------------------------------------------------------------------
-//
-CFileManagerTaskScheduler::CFileManagerTaskScheduler(
-        CFileManagerEngine& aEngine ) :
-    iEngine( aEngine ),
-    iScheduleHandle( KErrNotFound )
-    {
-    }
-
-// ----------------------------------------------------------------------------
-// CFileManagerTaskScheduler::NewL
-// ----------------------------------------------------------------------------
-//
-CFileManagerTaskScheduler* CFileManagerTaskScheduler::NewL(
-        CFileManagerEngine& aEngine )
-    {
-    CFileManagerTaskScheduler* self =
-        new( ELeave ) CFileManagerTaskScheduler( aEngine );
-    CleanupStack::PushL( self );
-    self->ConstructL();
-    CleanupStack::Pop( self );
-    return self;
-    }
-
-// ----------------------------------------------------------------------------
-// CFileManagerTaskScheduler::ConstructL
-// ----------------------------------------------------------------------------
-// 
-void CFileManagerTaskScheduler::ConstructL()
-    {
-    FUNC_LOG
-
-    User::LeaveIfError( iScheduler.Connect() );
-    TFileName name( KSchBackupStarterExe );
-    User::LeaveIfError( iScheduler.Register( name, KSchedulerPriority ) );
-
-    // Try to get schedule handle of previously made schedule
-    CArrayFixFlat< TSchedulerItemRef >* array = 
-        new( ELeave ) CArrayFixFlat< TSchedulerItemRef >(
-            KSchedulerGranularity );
-    CleanupStack::PushL( array );
-    if ( iScheduler.GetScheduleRefsL( *array, EAllSchedules ) == KErrNone )
-        {
-        if ( array->Count() )
-            {
-            iScheduleHandle = array->At( 0 ).iHandle;
-            }
-        }
-    CleanupStack::PopAndDestroy( array );
-    }
-
-// ----------------------------------------------------------------------------
-// CFileManagerTaskScheduler::~CFileManagerTaskScheduler
-// ----------------------------------------------------------------------------
-// 
-CFileManagerTaskScheduler::~CFileManagerTaskScheduler()
-    {
-    FUNC_LOG
-    
-    iScheduler.Close();
-    }
-
-// ----------------------------------------------------------------------------
-// CFileManagerTaskScheduler::CreateScheduleL
-// ----------------------------------------------------------------------------
-// 
-void CFileManagerTaskScheduler::CreateScheduleL()
-    {
-    FUNC_LOG
-
-    CFileManagerBackupSettings& settings( iEngine.BackupSettingsL() );
-
-    // Create schedule entry and store schedule handle for later use
-    CArrayFixFlat< TScheduleEntryInfo2 >* array =
-        new ( ELeave ) CArrayFixFlat<
-            TScheduleEntryInfo2 >( KSchedulerGranularity );
-    CleanupStack::PushL( array );
-
-    TTsTime tsTime( settings.Time(), EFalse );
-    TScheduleEntryInfo2 entry(
-        tsTime, EDaily, KTaskInterval, KTaskValidity );
-    array->AppendL( entry );
-
-    TSchedulerItemRef ref;
-    User::LeaveIfError( iScheduler.CreatePersistentSchedule( ref, *array ) );
-    CleanupStack::PopAndDestroy( array );
-    iScheduleHandle = ref.iHandle;
-
-    // Add weekday to task data if weekly backup
-    HBufC* data = HBufC::NewLC( KDayNumStringLen );
-    if ( settings.Scheduling() == EFileManagerBackupScheduleWeekly )
-        {
-        TPtr ptr( data->Des() );
-        ptr.Format( KDayNumStr, settings.Day() );
-        }
-
-    // Create scheduled task entry and enable it
-    TTaskInfo taskInfo;
-    taskInfo.iName = KSchBackupTaskName;
-    taskInfo.iPriority = KSchedulerPriority;
-    taskInfo.iTaskId = KSchedulerTaskId;
-    taskInfo.iRepeat = KSchedulerRepeat;
-    User::LeaveIfError( iScheduler.ScheduleTask(
-        taskInfo, *data, iScheduleHandle ) );
-    CleanupStack::PopAndDestroy( data );
-    User::LeaveIfError( iScheduler.EnableSchedule( iScheduleHandle ) );
-    }
-
-// ----------------------------------------------------------------------------
-// CFileManagerTaskScheduler::DeleteScheduleL
-// ----------------------------------------------------------------------------
-// 
-void CFileManagerTaskScheduler::DeleteScheduleL()
-    {
-    if ( iScheduleHandle != KErrNotFound )
-        {
-        INFO_LOG( "CFileManagerTaskScheduler::DeleteScheduleL-Delete" )
-        iScheduler.DisableSchedule( iScheduleHandle );
-        iScheduler.DeleteTask( KSchedulerTaskId );
-        iScheduler.DeleteSchedule( iScheduleHandle );
-        iScheduleHandle = KErrNotFound;
-        }
-    }
-
-// ----------------------------------------------------------------------------
-// CFileManagerTaskScheduler::EnableBackupScheduleL
-// ----------------------------------------------------------------------------
-// 
-void CFileManagerTaskScheduler::EnableBackupScheduleL( const TBool aEnable )
-    {
-    // Delete old schedule first
-    DeleteScheduleL();
-
-    if ( aEnable )
-        {
-        CreateScheduleL();
-        }
-    }
-
-//  End of File