void NotifyQt::notifyDiskFull(uint32_t loc,uint32_t size_in_mb) { { QMutexLocker m(&_mutex) ; if(!_enabled) return ; } std::cerr << "Notifyqt:: notified that disk is full" << std::endl ; emit diskFull(loc,size_in_mb) ; }
void NotifyQt::notifyDiskFull(uint32_t loc,uint32_t size_in_mb) { std::cerr << "Notifyqt:: notified that disk is full" << std::endl ; emit diskFull(loc,size_in_mb) ; }
bool FmBkupEnginePrivate::StartRestoreL( QList<FmBkupDrivesAndOperation* > drivesAndOperationList ) { TBool diskFull( SysUtil::DiskSpaceBelowCriticalLevelL( &iFs, 0, KFmgrSystemDrive ) ); if ( diskFull ) { mProcess = FmBkupEngine::ProcessRestore; notifyStartInternal( KMaxTInt ); iError = KErrDiskFull; notifyFinishInternal(); mProcess = FmBkupEngine::ProcessNone; return false; } /////// iDrvAndOpList->Reset(); iBkupCategoryList->ResetAndDestroy(); for( QList<FmBkupDrivesAndOperation* >::iterator it = drivesAndOperationList.begin(); it != drivesAndOperationList.end(); ++it ) { FmBkupDrivesAndOperation* fmDrvAndOp = *it; TBkupDrivesAndOperation drvAndOp; drvAndOp.setOwnerDataType( fmDrvAndOp->ownerDataType() ); drvAndOp.setDrvCategories( fmDrvAndOp->drvCategories() ); iDrvAndOpList->AppendL( drvAndOp ); } //////// // Create restore params - ownership is transferred to // secure backup engine #ifdef RD_FILE_MANAGER_BACKUP CMMCScBkupOpParamsRestoreFull* params = CMMCScBkupOpParamsRestoreFull::NewL( iDrvAndOpList, FmBkupEngine::EBUCatAllSeparately ); // CleanupStack::PopAndDestroy(); // driveReader CleanupStack::PushL( params ); // Get list of all archives RPointerArray< CMMCScBkupArchiveInfo > archives; TCleanupItem cleanupItem( ResetAndDestroyArchives, &archives ); CleanupStack::PushL( cleanupItem ); iBkupEngine->ListArchivesL( archives, params, AllowedDriveAttMatchMask() ); // Get user set restore selection QList< FmRestoreInfo > selection; // CleanupClosePushL( selection ); FmRestoreSettings& rstSettings( *( q->RestoreSettingsL() ) ); rstSettings.GetSelectionL( selection ); // Remove non user selected archives TInt i( 0 ); while ( i < archives.Count() ) { TBool remove( ETrue ); // Compare archives category and drive CMMCScBkupArchiveInfo* archiveInfo = archives[ i ]; TUint32 fmgrContent( BkupToFmgrMask( archiveInfo->Category().iFlags ) ); TInt drive( archiveInfo->Drive() ); TInt count( selection.count() ); for( TInt j( 0 ); j < count; ++j ) { const FmRestoreInfo& info( selection[ j ] ); if ( ( drive == DriverNameToNumber( info.drive() ) ) && ( fmgrContent & info.content() ) ) { // Found user selected archive // Do not check this archive again selection.removeAt( j ); remove = EFalse; break; } } if ( remove ) { // Remove non selected archive archives.Remove( i ); delete archiveInfo; } else { // Move to next archive ++i; } } // CleanupStack::PopAndDestroy( &selection ); params->SetArchiveInfosL( archives ); CleanupStack::Pop( &archives ); archives.Close(); CleanupStack::Pop( params ); #else // RD_FILE_MANAGER_BACKUP CMMCScBkupOpParamsRestoreFull* params = CMMCScBkupOpParamsRestoreFull::NewL( driveReader, EBUCatAllInOne ); CleanupStack::PopAndDestroy(); // driveReader FmBackupSettings& bkupSettings( *( q->BackupSettingsL() ) ); // Get list of all archives RPointerArray< CMMCScBkupArchiveInfo > archives; TCleanupItem cleanupItem( ResetAndDestroyArchives, &archives ); CleanupStack::PushL( cleanupItem ); iBkupEngine->ListArchivesL( archives, params, bkupSettings.AllowedDriveAttMatchMask() ); params->SetArchiveInfosL( archives ); CleanupStack::Pop( &archives ); #endif // RD_FILE_MANAGER_BACKUP // Start the process - engine owns the parameters immediately mProcess = FmBkupEngine::ProcessRestore; PublishBurStatus( EFileManagerBkupStatusRestore ); CCoeEnv* coeEnv = CCoeEnv::Static(); CEikonEnv* eikonEnv = (STATIC_CAST(CEikonEnv*,coeEnv)); eikonEnv->SetSystem(ETrue); TRAPD( err, iBkupEngine->StartOperationL( EMMCScBkupOperationTypeFullRestore, *this, params ) ); if ( err != KErrNone ) { PublishBurStatus( EFileManagerBkupStatusUnset ); mProcess = FmBkupEngine::ProcessNone; User::Leave( err ); } return true; }