# HG changeset patch
# User hgs
# Date 1283512705 -10800
# Node ID a003f0e60a076bb1e5f37d0493c4966c23422f52
# Parent 69df6ed78a6a5305088ba9853a21d293b46be4fc
201035
diff -r 69df6ed78a6a -r a003f0e60a07 package_definition.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/package_definition.xml Fri Sep 03 14:18:25 2010 +0300
@@ -0,0 +1,63 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff -r 69df6ed78a6a -r a003f0e60a07 package_map.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/package_map.xml Fri Sep 03 14:18:25 2010 +0300
@@ -0,0 +1,1 @@
+
diff -r 69df6ed78a6a -r a003f0e60a07 realtimenetprots/sipfw/ProfileAgent/Server/Src/SipProfileServerCore.cpp
--- a/realtimenetprots/sipfw/ProfileAgent/Server/Src/SipProfileServerCore.cpp Mon Aug 23 17:50:26 2010 +0300
+++ b/realtimenetprots/sipfw/ProfileAgent/Server/Src/SipProfileServerCore.cpp Fri Sep 03 14:18:25 2010 +0300
@@ -514,7 +514,27 @@
{
ConfirmSystemstateMonitor(CSipSystemStateMonitor::ESystemState);
}
- } //end if Offline
+ } //end if Offline
+
+ //If the System receives Online event
+ if(aValue == CSipSystemStateMonitor::ESystemOnline)
+ {
+ for (TInt i = 0; i < iProfileCache.Count(); i++)
+ {
+ CSIPProfileCacheItem* item = iProfileCache[i];
+ item->OfflineInitiated(EFalse);
+ CSIPConcreteProfile::TStatus status;
+ iPluginDirector->State(status, item->UsedProfile());
+ if (item->IsReferred() && status == CSIPConcreteProfile::EUnregistered)
+ {
+ TRAPD(err, item->StartRegisterL(*iWaitForIAP, *iRegInProg, ETrue));
+ if (err != KErrNone)
+ {
+ HandleAsyncError(*item,CSIPConcreteProfile::ERegistrationInProgress,err);
+ }
+ }
+ }
+ } //end if Online
} //end if SystemState
else if(aVariable == CSipSystemStateMonitor::ERfsState)
{
@@ -1761,6 +1781,7 @@
{
// Backup ends. Do not read profiles, as they are already in cache.
iProfileStorage = CSIPProfileStorage::NewL(iFs);
+ iProfileStorage->GetProfileStorageIndexObject()->SetProfileServerCoreObject(this);
}
PROFILE_DEBUG1("ProfileServerCore::ReserveStorageL, storage reserved")
}
@@ -2203,7 +2224,8 @@
CSIPConcreteProfile::TStatus status;
self->iPluginDirector->State( status, self->iProfileCache[i]->UsedProfile() );
item->OfflineInitiated(EFalse);
- if (item->IsReferred() && (status == CSIPConcreteProfile::EUnregistered) )
+ if (item->IsReferred() && (!self->iApnManager->IsIapGPRSL(item->Profile().IapId()))
+ && status == CSIPConcreteProfile::EUnregistered)
{
TRAPD(err, item->StartRegisterL(*(self->iWaitForIAP), *(self->iRegInProg), ETrue));
if (err != KErrNone)