diff -r 000000000000 -r 6a9f87576119 filemanager/bkupengine/src/CMMCScBkupStateOpAware.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/filemanager/bkupengine/src/CMMCScBkupStateOpAware.cpp Mon Jan 18 20:09:41 2010 +0200 @@ -0,0 +1,275 @@ +/* +* Copyright (c) 2005 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: CMMCScBkupStateOpAware implementation +* +* +*/ + +#include "CMMCScBkupStateOpAware.h" + + + + +// ========================= MEMBER FUNCTIONS ================================ + +// --------------------------------------------------------------------------- +// CMMCScBkupStateOpAware::CMMCScBkupStateOpAware() +// +// C++ constructor. +// --------------------------------------------------------------------------- +CMMCScBkupStateOpAware::CMMCScBkupStateOpAware( MMMCScBkupDriver& aDriver, TInt aPriority ) +: CMMCScBkupState( aDriver, aPriority ) + { + } + + +// --------------------------------------------------------------------------- +// CMMCScBkupStateOpAware::NextStateId() +// +// +// --------------------------------------------------------------------------- +TMMCScBkupStateId CMMCScBkupStateOpAware::NextStateId() const + { + TMMCScBkupStateId state = KMMCScBkupStateIdOperationComplete; + // + const TMMCScBkupOperationType type = Driver().DrvOperation(); + switch(type) + { + case EMMCScBkupOperationTypeFullBackup: + case EMMCScBkupOperationTypePartialBackup: + state = NextStateBackupId( type == EMMCScBkupOperationTypePartialBackup ); + break; + case EMMCScBkupOperationTypeFullRestore: + case EMMCScBkupOperationTypePartialRestore: + state = NextStateRestoreId( type == EMMCScBkupOperationTypePartialRestore ); + break; + default: + ASSERT( EFalse ); + break; + } + // + return state; + } + + +// --------------------------------------------------------------------------- +// CMMCScBkupStateOpAware::PerformAsynchronousStateStepBackupL() +// +// +// --------------------------------------------------------------------------- +void CMMCScBkupStateOpAware::PerformAsynchronousStateStepBackupL( TBool /*aPartial*/ ) + { + } + + +// --------------------------------------------------------------------------- +// CMMCScBkupStateOpAware::PerformAsynchronousStateStepRestoreL() +// +// +// --------------------------------------------------------------------------- +void CMMCScBkupStateOpAware::PerformAsynchronousStateStepRestoreL( TBool /*aPartial*/ ) + { + } + + +// --------------------------------------------------------------------------- +// CMMCScBkupStateOpAware::PerformAsynchronousCancellationBackup() +// +// +// --------------------------------------------------------------------------- +void CMMCScBkupStateOpAware::PerformAsynchronousCancellationBackup( TBool /*aPartial*/ ) + { + } + + +// --------------------------------------------------------------------------- +// CMMCScBkupStateOpAware::PerformAsynchronousCancellationRestore() +// +// +// --------------------------------------------------------------------------- +void CMMCScBkupStateOpAware::PerformAsynchronousCancellationRestore( TBool /*aPartial*/ ) + { + } + + +// --------------------------------------------------------------------------- +// CMMCScBkupStateOpAware::PerformLastRightsBackupL() +// +// +// --------------------------------------------------------------------------- +void CMMCScBkupStateOpAware::PerformLastRightsBackupL( TBool /*aPartial*/ ) + { + } + + +// --------------------------------------------------------------------------- +// CMMCScBkupStateOpAware::PerformLastRightsRestoreL() +// +// +// --------------------------------------------------------------------------- +void CMMCScBkupStateOpAware::PerformLastRightsRestoreL( TBool /*aPartial*/ ) + { + } + + +// --------------------------------------------------------------------------- +// CMMCScBkupStateOpAware::PerformAsynchronousErrorCleanupBackup() +// +// +// --------------------------------------------------------------------------- +TBool CMMCScBkupStateOpAware::PerformAsynchronousErrorCleanupBackup( TBool /*aPartial*/, TInt /*aError*/ ) + { + return EFalse; + } + + +// --------------------------------------------------------------------------- +// CMMCScBkupStateOpAware::PerformAsynchronousErrorCleanupRestore() +// +// +// --------------------------------------------------------------------------- +TBool CMMCScBkupStateOpAware::PerformAsynchronousErrorCleanupRestore( TBool /*aPartial*/, TInt /*aError*/ ) + { + return EFalse; + } + + +// --------------------------------------------------------------------------- +// CMMCScBkupStateOpAware::PerformStateInitL() +// +// +// --------------------------------------------------------------------------- +void CMMCScBkupStateOpAware::PerformStateInitL() + { + const TMMCScBkupOperationType type = Driver().DrvOperation(); + switch(type) + { + case EMMCScBkupOperationTypeFullBackup: + case EMMCScBkupOperationTypePartialBackup: + PerformStateInitBackupL( type == EMMCScBkupOperationTypePartialBackup ); + break; + case EMMCScBkupOperationTypeFullRestore: + case EMMCScBkupOperationTypePartialRestore: + PerformStateInitRestoreL( type == EMMCScBkupOperationTypePartialRestore ); + break; + default: + ASSERT( EFalse ); + break; + } + } + + +// --------------------------------------------------------------------------- +// CMMCScBkupStateOpAware::PerformAsynchronousStateStepL() +// +// +// --------------------------------------------------------------------------- +void CMMCScBkupStateOpAware::PerformAsynchronousStateStepL() + { + const TMMCScBkupOperationType type = Driver().DrvOperation(); + switch(type) + { + case EMMCScBkupOperationTypeFullBackup: + case EMMCScBkupOperationTypePartialBackup: + PerformAsynchronousStateStepBackupL( type == EMMCScBkupOperationTypePartialBackup ); + break; + case EMMCScBkupOperationTypeFullRestore: + case EMMCScBkupOperationTypePartialRestore: + PerformAsynchronousStateStepRestoreL( type == EMMCScBkupOperationTypePartialRestore ); + break; + default: + ASSERT( EFalse ); + break; + } + } + + +// --------------------------------------------------------------------------- +// CMMCScBkupStateOpAware::PerformAsynchronousCancellation() +// +// +// --------------------------------------------------------------------------- +void CMMCScBkupStateOpAware::PerformAsynchronousCancellation() + { + const TMMCScBkupOperationType type = Driver().DrvOperation(); + switch(type) + { + case EMMCScBkupOperationTypeFullBackup: + case EMMCScBkupOperationTypePartialBackup: + PerformAsynchronousCancellationBackup( type == EMMCScBkupOperationTypePartialBackup ); + break; + case EMMCScBkupOperationTypeFullRestore: + case EMMCScBkupOperationTypePartialRestore: + PerformAsynchronousCancellationRestore( type == EMMCScBkupOperationTypePartialRestore ); + break; + default: + ASSERT( EFalse ); + break; + } + } + + +// --------------------------------------------------------------------------- +// CMMCScBkupStateOpAware::PerformLastRightsL() +// +// +// --------------------------------------------------------------------------- +void CMMCScBkupStateOpAware::PerformLastRightsL() + { + const TMMCScBkupOperationType type = Driver().DrvOperation(); + switch(type) + { + case EMMCScBkupOperationTypeFullBackup: + case EMMCScBkupOperationTypePartialBackup: + PerformLastRightsBackupL( type == EMMCScBkupOperationTypePartialBackup ); + break; + case EMMCScBkupOperationTypeFullRestore: + case EMMCScBkupOperationTypePartialRestore: + PerformLastRightsRestoreL( type == EMMCScBkupOperationTypePartialRestore ); + break; + default: + ASSERT( EFalse ); + break; + } + } + + +// --------------------------------------------------------------------------- +// CMMCScBkupStateOpAware::PerformAsynchronousErrorCleanup() +// +// +// --------------------------------------------------------------------------- +TBool CMMCScBkupStateOpAware::PerformAsynchronousErrorCleanup( TInt aError ) + { + TBool handled = EFalse; + // + const TMMCScBkupOperationType type = Driver().DrvOperation(); + switch(type) + { + case EMMCScBkupOperationTypeFullBackup: + case EMMCScBkupOperationTypePartialBackup: + handled = PerformAsynchronousErrorCleanupBackup( type == EMMCScBkupOperationTypePartialBackup, aError ); + break; + case EMMCScBkupOperationTypeFullRestore: + case EMMCScBkupOperationTypePartialRestore: + handled = PerformAsynchronousErrorCleanupRestore( type == EMMCScBkupOperationTypePartialRestore, aError ); + break; + default: + ASSERT( EFalse ); + break; + } + // + return handled; + } +