201035 PDK_4.0.a
authorhgs
Fri, 03 Sep 2010 14:18:25 +0300
changeset 50 a003f0e60a07
parent 42 69df6ed78a6a
child 54 e4420734a2a0
201035
package_definition.xml
package_map.xml
realtimenetprots/sipfw/ProfileAgent/Server/Src/SipProfileServerCore.cpp
--- /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 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<SystemDefinition schema="3.0.0">
+  <package id="ipappprotocols" name="IP App Protocols" levels="plugin conn server if">
+  <collection id="ipappprotocols_plat" name="IP App Protocols Platform Interfaces" level="if">
+   <component id="srtp_api" name="SRTP API" class="api" filter="s60">
+    <meta rel="Api" href="ipappprotocols_plat/srtp_api/srtp_api.metaxml"/>
+    <unit bldFile="ipappprotocols_plat/srtp_api/group"/>
+   </component>
+   <component id="rtprtcp_api" name="RTP/RTCP API" class="api" filter="s60">
+    <meta rel="Api" href="ipappprotocols_plat/rtprtcp_api/rtprtcp_api.metaxml"/>
+    <unit bldFile="ipappprotocols_plat/rtprtcp_api/group"/>
+   </component>
+  </collection>
+    <collection id="rtp" name="RTP" level="server">
+      <component id="srtpstack" filter="s60" name="SRTP Stack">
+        <unit bldFile="rtp/srtpstack/group"/>
+      </component>
+      <component id="rtpstack" filter="s60" name="RTP Stack">
+        <unit bldFile="rtp/rtpstack/group"/>
+      </component>
+    </collection>
+    <collection id="realtimenetprots" name="Real Time Net Protocols" level="server">
+      <component id="symrtp" name="RTP" introduced="9.0" filter="s60" purpose="optional">
+        <!-- Real Time Data Protocol -->
+        <unit bldFile="realtimenetprots/rtp/group" mrp="realtimenetprots/rtp/group/mm-protocols_rtp.mrp"/>
+      </component>
+      <component id="sipfw" name="SIP Framework" introduced="9.2" filter="s60" purpose="optional">
+        <unit version="2" bldFile="realtimenetprots/sipfw/Group" mrp="realtimenetprots/sipfw/Group/mm-protocols_SIP2_Com.mrp"/>
+      </component>
+    </collection>
+    <collection id="sipplugins" name="SIP Plugins" level="plugin">
+      <component id="sippwlanplugin" filter="s60" name="SIP WLAN Plugin" class="plugin">
+        <unit bldFile="sipplugins/sippwlanplugin/group"/>
+      </component>
+	  <!--
+      <component id="sippsipsettingsui" filter="s60" name="SIP Settings UI" class="plugin">
+        <unit bldFile="sipplugins/sippsipsettingsui/group"/> 		
+      </component>
+	  -->
+      <component id="sippdevmgmtsipadapter" filter="s60" name="Device Management SIP Settings Adapter" class="plugin">
+        <unit bldFile="sipplugins/sippdevmgmtsipadapter/group"/>
+      </component>
+      <component id="sippsystemstatemonitor" filter="s60" name="SIP System State Monitor" class="plugin">
+        <unit bldFile="sipplugins/sippsystemstatemonitor/group"/>
+      </component>
+      <component id="sippsipadapter" filter="s60" name="SIP Adapter" class="plugin" introduced="^3">
+        <unit bldFile="sipplugins/sippsipadapter/group"/>
+      </component>
+    </collection>
+    <collection id="sipproviderplugins" name="SIP Provider Plugins" level="conn">
+      <component id="sipprovider" name="SIP Provider" introduced="^2"  filter="s60" purpose="optional" class="plugin">
+        <unit bldFile="sipproviderplugins/sipprovider/group" mrp="sipproviderplugins/sipprovider/group/mm-protocols_SipProvider.mrp"/>
+      </component>
+    </collection>
+	<!--
+    <collection id="ipappprotocols_info" name="IP App Protocols Info" level="if">
+      <component id="ipappprotocols_metadata" name="IP App Protocols Metadata" class="config" introduced="^2" purpose="development" target="desktop">
+        <unit mrp="ipappprotocols_info/ipappprotocols_metadata/ipappprotocols_metadata.mrp"/>
+      </component>
+    </collection>
+	-->
+  </package>
+</SystemDefinition>
--- /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 @@
+<PackageMap root="sf" layer="mw"/>
--- 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)