homescreenpluginsrv/hspsmanager/src/hspsthemeserversession.cpp
branchRCL_3
changeset 18 bd874ee5e5e2
parent 4 1a2a00e78665
child 82 ace62b58f4b2
--- a/homescreenpluginsrv/hspsmanager/src/hspsthemeserversession.cpp	Fri Feb 19 23:07:29 2010 +0200
+++ b/homescreenpluginsrv/hspsmanager/src/hspsthemeserversession.cpp	Fri Mar 12 15:43:54 2010 +0200
@@ -49,9 +49,11 @@
 // -----------------------------------------------------------------------------
 //
 ChspsThemeServerSession::ChspsThemeServerSession(
-    const TInt aAppUid )
+    const TInt aAppUid ) : 
+    iAppUid( aAppUid ),
+    iIconFileCopyRequired( ETrue ),
+    iResourceFileCopyRequired( ETrue )
     {
-    iAppUid = aAppUid;
     }
   
 // -----------------------------------------------------------------------------
@@ -68,7 +70,7 @@
     iLogBus->LogText( _L( "--------------------------------------------------------" ) );
 #endif
     
-    Server().AddSession();
+    Server().AddSession( this );
     iHoldingResources = EFalse;
     User::LeaveIfError( iFs.Connect() );
     Server().CheckConfigurationL( iAppUid );
@@ -93,7 +95,7 @@
         }
     delete iClientRequestHandler;
    
-    Server().DropSession();
+    Server().DropSession( this );
 
 #ifdef HSPS_LOG_ACTIVE
     if( iLogBus )
@@ -284,7 +286,15 @@
 #ifdef HSPS_LOG_ACTIVE    	
         	iLogBus->LogText( _L( "DoServiceL: EhspsCopyResources" ) );
 #endif    	        	
-        	CopyResourceFilesL( aMessage );
+        	if( iResourceFileCopyRequired )
+        	    {
+                CopyResourceFilesL( aMessage );
+                iResourceFileCopyRequired = EFalse;
+        	    }
+        	else
+        	    {
+                aMessage.Complete( EhspsResourceCopySuccess );        	
+        	    }
         	break;
         	}
         case EhspsAddPlugin:
@@ -1001,5 +1011,50 @@
     return iFs;
     }
 
+// -----------------------------------------------------------------------------
+// ChspsThemeServerSession::IconFileCopyRequired
+// -----------------------------------------------------------------------------
+//
+TBool ChspsThemeServerSession::IconFileCopyRequired() const
+    {
+    return iIconFileCopyRequired;
+    }
+
+// -----------------------------------------------------------------------------
+// ChspsThemeServerSession::SetIconFileCopyRequired
+// -----------------------------------------------------------------------------
+//
+void ChspsThemeServerSession::SetIconFileCopyRequired( const TBool aCopyRequired )
+    {
+    iIconFileCopyRequired = aCopyRequired;
+    }
+
+// -----------------------------------------------------------------------------
+// ChspsThemeServerSession::ResourceFileCopyRequired
+// -----------------------------------------------------------------------------
+//
+TBool ChspsThemeServerSession::ResourceFileCopyRequired() const
+    {
+    return iResourceFileCopyRequired;
+    }
+
+// -----------------------------------------------------------------------------
+// ChspsThemeServerSession::SetResourceFileCopyRequired
+// -----------------------------------------------------------------------------
+//
+void ChspsThemeServerSession::SetResourceFileCopyRequired( const TBool aCopyRequired )
+    {
+    iResourceFileCopyRequired = aCopyRequired;
+    }
+
+// -----------------------------------------------------------------------------
+// ChspsThemeServerSession::AppUid
+// -----------------------------------------------------------------------------
+//
+TBool ChspsThemeServerSession::AppUid() const
+    {
+    return iAppUid;
+    }
+
 // end of file