imagehandlingutilities/thumbnailmanager/thumbnailserver/src/thumbnailserversession.cpp
branchRCL_3
changeset 58 9e8b0cc88842
parent 50 60bb012f1157
--- a/imagehandlingutilities/thumbnailmanager/thumbnailserver/src/thumbnailserversession.cpp	Wed Sep 15 12:32:44 2010 +0300
+++ b/imagehandlingutilities/thumbnailmanager/thumbnailserver/src/thumbnailserversession.cpp	Wed Oct 13 14:53:56 2010 +0300
@@ -480,12 +480,6 @@
         ModifyThumbnailSize(sourceType);
         }
     
-    // delete existing
-    if(params.iImport && params.iOverwrite)
-        {
-        Server()->DeleteThumbnailsL( params.iTargetUri);
-        }
-    
     // CreateThumbnails
     if (params.iControlFlags == EThumbnailGeneratePersistentSizesOnly)
         {
@@ -643,19 +637,6 @@
 	        TN_DEBUG2( 
 	            "CThumbnailServerSession::RequestThumbByPathAsyncL() - thumbnail not found, err = %d", err );
 	        
-	        // don't try to create from virtual URI
-	        if ( params.iVirtualUri )
-	            {
-                User::Leave(err);
-	            }
-	        
-            // disk space check only for stored sizes
-            if ( params.iThumbnailSize != ECustomThumbnailSize && 
-                 Server()->StoreForPathL(params.iFileName)->IsDiskFull() )
-                {
-                User::Leave( KErrDiskFull );
-                }
-	        
 	        if ( (err == KErrNotFound || err == KErrAccessDenied) && 
 	            !(params.iFlags& CThumbnailManager::EDoNotCreate) )
 	            {
@@ -663,6 +644,17 @@
 	            // and retry the request using file handle
 	            err = KThumbnailErrThumbnailNotFound;
 	            }
+	        else
+	            {
+                User::Leave(err);
+                }
+	        
+	        // disk space check only for stored sizes
+	        if ( params.iThumbnailSize != ECustomThumbnailSize && 
+	             Server()->StoreForPathL(params.iFileName)->IsDiskFull() )
+	            {
+	            User::Leave( KErrDiskFull );
+	            }
 
             User::Leave(err);
 	        }   
@@ -810,8 +802,7 @@
         
         TSize bitmapSize = bitmap->SizeInPixels();
         
-        // scale small thumbs first, because fullscreen encoding takes longer
-        for ( TInt i( count-1 ); i >= 0; i-- )
+        for ( TInt i( 0 ); i < count; i++ )
             {           
             if( bitmapSize.iWidth < bitmapSize.iHeight )
                {
@@ -820,8 +811,7 @@
                if ( size == EFullScreenThumbnailSize ||
                     size == EVideoFullScreenThumbnailSize ||
                     size == EAudioFullScreenThumbnailSize ||
-                    size == EImageFullScreenThumbnailSize ||
-                    size == EContactFullScreenThumbnailSize )
+                    size == EImageFullScreenThumbnailSize )
                    {
                    TInt height = (*missingSizes)[i].iSize.iHeight;
                    (*missingSizes)[i].iSize.iHeight = (*missingSizes)[i].iSize.iWidth;
@@ -835,8 +825,7 @@
                     *Server(), params.iTargetUri, bitmap, bitmapSize,
                     (*missingSizes)[i].iSize, (*missingSizes)[i].iCrop, params.iDisplayMode,
                     KMaxPriority, KNullDesC, (*missingSizes)[i].iType, params.iModified, EFalse, EFalse,
-                    reqId, params.iVirtualUri);
-            
+                    reqId);
             CleanupStack::PushL( scaleTask );
             scaleTask->SetDoStore( ETrue );
             Server()->Processor().AddTaskL( scaleTask );
@@ -884,12 +873,7 @@
         "CThumbnailServerSession::CreateGenerateTaskFromFileHandleL() -- create thumbnail generation task for %S", &params.iFileName );
     
     // disk space check only for stored sizes
-    if ( params.iImport && 
-         Server()->StoreForPathL(params.iTargetUri)->IsDiskFull() )
-        {
-        User::Leave( KErrDiskFull );
-        }
-    else if ( params.iThumbnailSize != ECustomThumbnailSize && 
+    if ( params.iThumbnailSize != ECustomThumbnailSize && 
          Server()->StoreForPathL(params.iFileName)->IsDiskFull() )
         {
         User::Leave( KErrDiskFull );
@@ -907,28 +891,19 @@
 		
 	    TBool gridSizeOnly(EFalse);
             
-	    if ( params.iQualityPreference == CThumbnailManager::EOptimizeForQualityWithPreview )
+	    if ( params.iQualityPreference == CThumbnailManager
+	                    ::EOptimizeForQualityWithPreview )
 	        {
 	        gridSizeOnly = ETrue;
 	        }
         
-	    // import vs. normal
-	    if(params.iImport)
-	        {
-            Server()->GetMissingSizesL( params.iTargetUri, sourceType, *missingSizes, gridSizeOnly);
-	        }
-	    else
-	        {
-            Server()->GetMissingSizesL( params.iFileName, sourceType, *missingSizes, gridSizeOnly);
-	        }     
+        Server()->GetMissingSizesL( params.iFileName, sourceType, *missingSizes, gridSizeOnly);
         
         if ( missingSizes->Count() == 0)
             {
             // all thumbs already exist
             CleanupStack::PopAndDestroy( missingSizes );
             delete missingSizes;
-            missingSizes = NULL;
-            
             if( aFile )
                {
                aFile->Close();
@@ -973,8 +948,7 @@
     CThumbnailGenerateTask* task = new( ELeave )CThumbnailGenerateTask( Server()
         ->Processor(), * Server(), aFile, NULL, &params.iMimeType, params.iFlags,
         params.iSize, params.iDisplayMode, priority, missingSizes, params.iTargetUri,
-        params.iThumbnailSize, params.iModified, params.iQualityPreference,
-        params.iVirtualUri);
+        params.iThumbnailSize, params.iModified, params.iQualityPreference );
 
     // do not store bitmaps to server pool when generating only
     if( params.iControlFlags & EThumbnailGeneratePersistentSizesOnly )
@@ -1060,8 +1034,6 @@
             // all thumbs already exist
             CleanupStack::PopAndDestroy( missingSizes );
             delete missingSizes;
-            missingSizes = NULL;
-            
             if ( aBuffer)
                {
                delete aBuffer;
@@ -1088,8 +1060,7 @@
     CThumbnailGenerateTask* task = new( ELeave )CThumbnailGenerateTask( Server()
         ->Processor(), * Server(), NULL, aBuffer, &params.iMimeType, params.iFlags,
         params.iSize, params.iDisplayMode, priority, missingSizes, params.iTargetUri,
-        params.iThumbnailSize, params.iModified, params.iQualityPreference,
-        params.iVirtualUri);
+        params.iThumbnailSize, params.iModified, params.iQualityPreference );
 
     // do not store bitmaps to server pool when generating only
     if( params.iControlFlags & EThumbnailGeneratePersistentSizesOnly )
@@ -1383,21 +1354,6 @@
                params.iThumbnailSize = EAudioListThumbnailSize;
                }       
            }
-    else if(aSourceType == TThumbnailPersistentSize::EContact)
-           {
-           if(params.iThumbnailSize == EFullScreenThumbnailSize)
-               {
-               params.iThumbnailSize = EContactFullScreenThumbnailSize;
-               }
-           else if(params.iThumbnailSize == EGridThumbnailSize)
-               {
-               params.iThumbnailSize = EContactGridThumbnailSize;
-               }
-           else if(params.iThumbnailSize == EListThumbnailSize)
-               {
-               params.iThumbnailSize = EContactListThumbnailSize;
-               }       
-           }
     }
 
 //------------------------------------------------------------------------
@@ -1411,42 +1367,34 @@
         
     // mime type
     if ( params.iMimeType.Des8() == KNullDesC8 && !Server()->SupportedMimeType(params.iMimeType) )
-        {
-        // try parsing from file extension
-        if (params.iImport)
-            {
-            res = Server()->MimeTypeFromFileExt( params.iTargetUri, params.iMimeType );
-            }
-        else
-            {
-            res = Server()->MimeTypeFromFileExt( params.iFileName, params.iMimeType );
-            }
-        
-        if ( res == KErrNotFound )
-            {
-            if( aFile )
-                {
-                // parsed type not in the list, resolve from file
-                params.iMimeType = Server()->ResolveMimeTypeL(*aFile);
-                }
-            else
-                {
-                Server()->Fs().ShareProtected();
-                RFile64 file;
-                CleanupClosePushL( file );
-              
-                User::LeaveIfError( file.Open( Server()->Fs(), params.iFileName, EFileShareReadersOrWriters )); 
-                TN_DEBUG2( "CThumbnailServerSession::ResolveMimeType - file handle opened for %S", &params.iFileName );
-              
-                params.iMimeType = Server()->ResolveMimeTypeL(file);
-              
-                file.Close();
-                TN_DEBUG1("CThumbnailServerSession::ResolveMimeType - file handle closed");
-              
-                CleanupStack::Pop( &file );    
-                }    
-            }        
-        }       
+       {
+       // try parsing from file extension
+       res = Server()->MimeTypeFromFileExt( params.iFileName, params.iMimeType );
+       if ( res == KErrNotFound )
+           {
+          if( aFile )
+             {
+             // parsed type not in the list, resolve from file
+             params.iMimeType = Server()->ResolveMimeTypeL(*aFile);
+             }
+          else
+             {
+             Server()->Fs().ShareProtected();
+             RFile64 file;
+             CleanupClosePushL( file );
+             
+             User::LeaveIfError( file.Open( Server()->Fs(), params.iFileName, EFileShareReadersOrWriters )); 
+             TN_DEBUG2( "CThumbnailServerSession::ResolveMimeType - file handle opened for %S", &params.iFileName );
+             
+             params.iMimeType = Server()->ResolveMimeTypeL(file);
+             
+             file.Close();
+             TN_DEBUG1("CThumbnailServerSession::ResolveMimeType - file handle closed");
+             
+             CleanupStack::Pop( &file );    
+             }    
+          }        
+       }      
     }
 
 
@@ -1587,5 +1535,4 @@
         }
     }
 
-
 // End of file