contentstorage/srvinc/cainstallnotifier.h
changeset 66 32469d7d46ff
parent 61 8e5041d13c84
child 119 50e220be30d1
--- a/contentstorage/srvinc/cainstallnotifier.h	Fri Apr 16 15:16:09 2010 +0300
+++ b/contentstorage/srvinc/cainstallnotifier.h	Mon May 03 12:48:45 2010 +0300
@@ -23,6 +23,8 @@
 #include <e32property.h>
 #include "castorage_global.h"
 
+class CNotifierStrategy;
+
 /**
  * Interface for updating after installer events.
  *
@@ -37,7 +39,7 @@
      * Pure virtual method.
      * @param aEvent event type.
      */
-    virtual void HandleInstallNotifyL( TInt aEvent ) = 0;
+    virtual void HandleInstallNotifyL(TInt aEvent) = 0;
     };
 
 /**
@@ -45,43 +47,24 @@
  *
  *  @since S60 v5.0
  */
-NONSHARABLE_CLASS( CCaInstallNotifier ): public CActive
+NONSHARABLE_CLASS( CCaInstallNotifier ) : public CActive
     {
 
 public:
 
     /**
-     * Enum defining the operation type.
-     */
-    enum TInstOp
-        {
-        EInstOpNone = 0x00000000,
-        EInstOpInstall = 0x00000001,
-        EInstOpUninstall = 0x00000002,
-        EInstOpRestore = 0x00000004
-        };
-
-    /**
-     * Enum defining the operation status.
-     */
-    enum TInstOpStatus
-        {
-        EInstOpStatusNone = 0x00000000,
-        EInstOpStatusSuccess = 0x00000100,
-        EInstOpStatusAborted = 0x00000200
-        };
-
-    /**
      * Enum defining notification type.
      */
     enum TNotificationType
         {
-        ENoNotification = 0x00000000,
-        ESisInstallNotification = KUidSwiLatestInstallation, ///< installation notification
+        ENoNotification,            ///< No notification.
+        ESisInstallNotification,    ///< System installation notification.
+        EJavaInstallNotification,   ///< Java instalation and uninstallation notification.
+        EUsifUninstallNotification, ///< Usif's uninstalation notification.
         };
 
     /**
-     * Creates an instance of CCaInstallNotifier implementation.
+     * Creates an instance of CCaInstallNotifier.
      * @param aNotifier Reference to notifier interface.
      * @param aNotificationType Notification type.
      */
@@ -99,14 +82,13 @@
      * Constructor.
      * @param aNotifier Reference to notifier interface.
      */
-    CCaInstallNotifier( MCaInstallListener& aListener,
-            TNotificationType aNotificationType );
+    CCaInstallNotifier( MCaInstallListener& aListener );
 
     /**
      * Symbian 2nd phase constructor.
      * @param aNotificationType Notification type.
      */
-    void ConstructL();
+    void ConstructL( TNotificationType aNotificationType );
 
     /**
      * From CActive.
@@ -138,9 +120,9 @@
     MCaInstallListener& iListener;
 
     /*
-     * Notification type.
+     * Notification strategy.
      */
-    TInt iRPropertyKey;
+    CNotifierStrategy* iNotifierStrategy;
 
     };