connectionmonitoring/connmon/connectionmonitor/src/cellulardatausagekeyupdater.cpp
changeset 18 fcbbe021d614
parent 3 f7816ffc66ed
child 52 bbe4544dfd31
--- a/connectionmonitoring/connmon/connectionmonitor/src/cellulardatausagekeyupdater.cpp	Tue Feb 02 00:24:11 2010 +0200
+++ b/connectionmonitoring/connmon/connectionmonitor/src/cellulardatausagekeyupdater.cpp	Fri Apr 16 15:21:37 2010 +0300
@@ -29,7 +29,7 @@
 #include "cellulardatausagekeyupdater.h"
 #include "ConnMonServ.h"
 #include "ConnMonAvailabilityManager.h"
-#include "ConnMonIap.h"
+#include "ConnMonIAP.h"
 #include "ConnMonDef.h"
 #include "log.h"
 
@@ -86,12 +86,17 @@
                 
     TCmGenConnSettings occSettings = ReadGenConnSettingsL();
   
-    TInt value( occSettings.iCellularDataUsageHome );
+    TInt value( ECmCellularDataUsageDisabled );
         
     if ( aRegistration == ENetworkRegistrationExtRoamingInternational )
         {           
         value = occSettings.iCellularDataUsageVisitor;
         }
+    else if ( aRegistration == ENetworkRegistrationExtHomeNetwork || 
+              aRegistration == ENetworkRegistrationExtRoamingNational )
+        {           
+        value = occSettings.iCellularDataUsageHome;
+        }
 
     CRepository* cmRepository = NULL;
     
@@ -106,10 +111,12 @@
             {
             cmRepository->Set( KCurrentCellularDataUsage, value );
             LOGIT1("KCurrentCellularDataUsage set to %d", value)
-            
-            LOGIT("CCellularDataUsageKeyUpdater triggered HandleAvailabilityChange()")
-            iServer->AvailabilityManager()->HandleAvailabilityChange();
-            }    
+            }
+        else
+            {
+            LOGIT1("KCurrentCellularDataUsage already up-to-date %d", previous)
+            }
+        
         delete cmRepository;    
         }
     else
@@ -219,6 +226,9 @@
         iErrorCounter = 0;
         
         TRAPD( leaveCode, UpdateKeyL() )
+        
+        LOGIT("CCellularDataUsageKeyUpdater triggered HandleAvailabilityChange()")
+        iServer->AvailabilityManager()->HandleAvailabilityChange();
     
         if ( leaveCode )
             {