emailservices/emailclientapi/inc/emailinterfacefactoryimpl.h
changeset 4 e7aa27f58ae1
parent 0 8466d47a6819
child 24 d189ee25cf9d
--- a/emailservices/emailclientapi/inc/emailinterfacefactoryimpl.h	Tue Jan 26 11:45:42 2010 +0200
+++ b/emailservices/emailclientapi/inc/emailinterfacefactoryimpl.h	Tue Feb 02 00:02:40 2010 +0200
@@ -42,9 +42,26 @@
     /** @see CEmailInterfaceFactory::InterfaceL */
     virtual MEmailInterface* InterfaceL(  const TInt aInterfaceId );
     
+private:
+    enum TEmailUidAppendRemoveMode
+        {
+        EEmailUidModeAppend,
+        EEmailUidModeRemove,
+        };
+    
+    /**
+    * Registers/removes application UID to/from P&S so that the application
+    * can be shutdown during Email IAD update. Update may fail if any
+    * application is using some Email services during the update.
+    * Application UID is removed from the list in destructor.
+    * @param aMode Is the current process UID added or removed from the list
+    */
+    void AppendOrRemoveUidL( const TEmailUidAppendRemoveMode aMode );
+
 private:    
-    // c++ constructor
+    // c++ constructor and 2nd phase constructor
     CEmailInterfaceFactoryImpl();
+    void ConstructL();
 };
 
 #endif // EMAILINTERFACEFACTORY_H