diff -r 332e7bf3b42f -r 469fa8a78de7 coreapplicationuis/rfsplugins/FormatterRFSPlugin/src/formatterrfsplugin.cpp --- a/coreapplicationuis/rfsplugins/FormatterRFSPlugin/src/formatterrfsplugin.cpp Tue May 25 12:52:36 2010 +0300 +++ b/coreapplicationuis/rfsplugins/FormatterRFSPlugin/src/formatterrfsplugin.cpp Wed Jun 09 09:52:12 2010 +0300 @@ -19,11 +19,9 @@ // SYSTEM INCLUDE #include #include -#include -#include -#include -#include + #include + // USER INCLUDE #include "formatterrfsplugin.h" #include "formatterrfspluginprivatecrkeys.h" @@ -39,210 +37,17 @@ // ================= LOCAL FUNCTIONS ======================= -// --------------------------------------------------------------------------- -// ExcludeListNameL -// --------------------------------------------------------------------------- -// -static void FileWriteL(RPointerArray &files) - { - RFs fileSession; - RFile file; - User::LeaveIfError(fileSession.Connect()); - TInt err = file.Open(fileSession,_L("c:\\private\\100059C9\\excludelistcache.txt"),EFileWrite|EFileStreamText); - - if ( err != KErrNone ) - { - RDebug::Print(_L("CFormatterRFSPlugin::ExcludeListNameL , FileWrite : Failed to open the file")); - return; - } - - TInt pos = 0; - file.Seek(ESeekEnd,pos); - TInt size = files.Count(); - RBuf filenameBuf; - - for ( TInt i=0; i < size; i++) - { - HBufC8* fileName = HBufC8::NewLC(files[i]->Size()); - TPtr8 fileNamePtr(fileName->Des()); - fileNamePtr.Copy(*files[i]); - - filenameBuf.Create(fileNamePtr.Length()); - filenameBuf.Copy(fileNamePtr); - TFileText fileText ; - fileText.Set(file) ; - fileText.Seek(ESeekStart); - fileText.Write(filenameBuf); - CleanupStack::PopAndDestroy();//Filename - file.Flush(); - } - - file.Close(); - fileSession.Close(); - } - -static void MergeFilesL() - { - - RFs fileSession; - RFile excludeFileName; - - User::LeaveIfError(fileSession.Connect()); - TInt ret = excludeFileName.Open(fileSession,_L("c:\\private\\100059C9\\excludelist.txt"),EFileRead); - - if(ret != KErrNone) - { - RDebug::Print(_L("CFormatterRFSPlugin::ExcludeListNameL , MergeFiles : Failed to open the file")); - return; - } - excludeFileName.Close(); - - CFileMan* fileMan=CFileMan::NewL(fileSession); - CleanupStack::PushL(fileMan); - - TInt result=fileMan->Copy(_L("c:\\private\\100059C9\\excludelist.txt"),_L("c:\\private\\100059C9\\excludelistcache.txt"),CFileMan::EOverWrite); - RDebug::Print(_L("CFormatterRFSPlugin::MergeFilesL copying the excludelist.txt to excludelistcache.txt , CFileMan::Copy returned = %d"), result); - CleanupStack::PopAndDestroy(fileMan); - - fileSession.Close(); - } static HBufC* ExcludeListNameL( TChar aSystemDrive ) { FUNC_LOG; - RDebug::Print(_L("CFormatterRFSPlugin::ExcludeListNameL")); - - RFs fileSession; - RFile file; - - _LIT8(KFileName, "c:\\private\\100059C9\\excludelistcache.txt\n"); - TBuf8 <50> fileName; - fileName.Copy(KFileName); - - User::LeaveIfError(fileSession.Connect()); - - RDir dir; - if(dir.Open(fileSession,_L("c:\\private\\100059C9\\"),KEntryAttNormal) != KErrNone) - { - User::LeaveIfError(fileSession.MkDir(_L("c:\\private\\100059C9\\"))); - } - - TInt rev = file.Replace(fileSession,_L("c:\\private\\100059C9\\excludelistcache.txt"),EFileWrite|EFileStreamText); - - RDebug::Print(_L("CFormatterRFSPlugin::ExcludeListNameL, Replace returned %d"),rev); - - file.Flush(); - file.Close(); - dir.Close(); - fileSession.Close(); - - Swi::RSisRegistrySession session; - CleanupClosePushL(session); - User::LeaveIfError(session.Connect()); - - // Get the installed application UIDs - RArray uids; - CleanupClosePushL(uids); - session.InstalledUidsL(uids); - TInt uidcount = uids.Count(); - - Swi::RSisRegistryEntry entry; - Swi::RSisRegistryEntry entry2; - CleanupClosePushL(entry); - CleanupClosePushL(entry2); - - RPointerArray registryFiles; - RPointerArray augmentedRegistryFiles; - RPointerArray nonRemovableFiles; - RPointerArray nonRemovableAugmentedFiles; - CleanupResetAndDestroyPushL(registryFiles); - CleanupResetAndDestroyPushL(augmentedRegistryFiles); - CleanupResetAndDestroyPushL(nonRemovableFiles); - CleanupResetAndDestroyPushL(nonRemovableAugmentedFiles); - - TInt count; - RPointerArray augmentationPackages; - CleanupResetAndDestroyPushL(augmentationPackages); - for ( TInt iter=0; iter=0;z--) - { - TPtr firstChar(nonRemovableFiles[z]->Des()); - if(firstChar.Mid(0,1) == _L("z")) - { - delete nonRemovableFiles[z]; - nonRemovableFiles.Remove(z); - } - } - // Look for augmentations. - if(entry.IsAugmentationL()) - { - entry.AugmentationsL(augmentationPackages); - count = entry.AugmentationsNumberL(); - for (TInt i=0; i < count; ++i) - { - User::LeaveIfError(entry2.OpenL(session,*augmentationPackages[i])); - if(EFalse == entry2.RemovableL()) - { - entry2.FilesL(nonRemovableAugmentedFiles); - entry2.RegistryFilesL(augmentedRegistryFiles); - for (TInt c=0; cDes()); - if(firstChar.Mid(0,1) == _L("z")) - { - delete nonRemovableAugmentedFiles[c]; - nonRemovableAugmentedFiles.Remove(c); - } - } - } - entry2.Close(); - } - } - } - entry.Close(); - } - RDebug::Print(_L("CFormatterRFSPlugin::ExcludeListNameL Writing the file names to the excludelist.txt")); - - MergeFilesL(); - FileWriteL(nonRemovableAugmentedFiles); - FileWriteL(augmentedRegistryFiles); - FileWriteL(nonRemovableFiles); - FileWriteL(registryFiles); - - TInt pos = 0; - User::LeaveIfError(fileSession.Connect()); - User::LeaveIfError(file.Open(fileSession,_L("c:\\private\\100059C9\\excludelistcache.txt"),EFileWrite|EFileStreamText)); - - file.Seek(ESeekEnd,pos); - - TBuf configurationLine ; - TFileText fileText ; - fileText.Set(file) ; - fileText.Seek(ESeekStart); - configurationLine.Format(_L("c:\\private\\100059C9\\excludelistcache.txt")) ; - fileText.Write(configurationLine); - - file.Flush(); - file.Close(); - fileSession.Close(); - - - CleanupStack::PopAndDestroy(9,&session); - - HBufC* buf = HBufC::NewLC( KExcludeListcache().Length() + KExcludeListPathNameLenExt ); - TPtr bufPtr = buf->Des(); - bufPtr.Append( aSystemDrive ); - bufPtr.Append( KDriveDelimiter ); - bufPtr.Append( KExcludeListcache ); - CleanupStack::Pop( buf ); + HBufC* buf = HBufC::NewLC( KExcludeList().Length() + KExcludeListPathNameLenExt ); + TPtr bufPtr = buf->Des(); + bufPtr.Append( aSystemDrive ); + bufPtr.Append( KDriveDelimiter ); + bufPtr.Append( KExcludeList ); + CleanupStack::Pop( buf ); return buf; }