--- a/activityfw/storage/server/src/afapplicationsengine.cpp Mon Sep 13 13:26:33 2010 +0300
+++ b/activityfw/storage/server/src/afapplicationsengine.cpp Mon Sep 20 10:22:22 2010 +0300
@@ -18,29 +18,34 @@
#include "afapplicationsstorage.h"
#include "afapplicationscollection.h"
#include "afapplicationsmonitor.h"
+#include "aftaskstorage.h"
+#include "aftask.h"
//------------------------------------------------------------------------------
CAfApplicationsEngine* CAfApplicationsEngine::NewL(RApaLsSession& serviceProvider,
- CAfStorage& storage)
+ CAfStorage& storage,
+ MAfTaskStorage& taskStorage)
{
- CAfApplicationsEngine *self = new(ELeave)CAfApplicationsEngine();
+ CAfApplicationsEngine *self = new(ELeave)CAfApplicationsEngine(taskStorage);
CleanupStack::PushL(self);
- self->ConstructL(storage, serviceProvider);
+ self->ConstructL(serviceProvider, storage);
CleanupStack::Pop(self);
return self;
}
//------------------------------------------------------------------------------
-CAfApplicationsEngine::CAfApplicationsEngine()
-{}
+CAfApplicationsEngine::CAfApplicationsEngine(MAfTaskStorage& taskStorage) :
+ mTaskStorage(taskStorage)
+{
+}
//------------------------------------------------------------------------------
-void CAfApplicationsEngine::ConstructL(CAfStorage& storage,
- RApaLsSession& serviceProvider)
+void CAfApplicationsEngine::ConstructL(RApaLsSession& serviceProvider,
+ CAfStorage& storage)
{
mCollection = CAfApplicationsCollection::NewL(serviceProvider);
mMonitor = CAfApplicationsMonitor::NewL(serviceProvider, *mCollection);
- mStorage = CAfApplicationsStorage::NewL(storage, *mCollection);
+ mStorage = CAfApplicationsStorage::NewL(storage, *mCollection, *this);
mCollection->setObserver(*mStorage);
}
@@ -52,3 +57,12 @@
delete mStorage;
delete mCollection;
}
+
+//------------------------------------------------------------------------------
+void CAfApplicationsEngine::applicationsChanged()
+{
+ const RPointerArray<CAfTask> &table(mTaskStorage.StorageData());
+ for (TInt iter(table.Count() - 1); 0 <= iter; --iter) {
+ table[iter]->BroadcastReceivedL(RMessage2(), ETrue);
+ }
+}