bearermanagement/S60MCPR/src/s60mcprmobilityactivity.cpp
branchRCL_3
changeset 8 2e6c4614c58e
parent 2 086aae6fc07e
child 12 ea6e024ea6f9
--- a/bearermanagement/S60MCPR/src/s60mcprmobilityactivity.cpp	Tue Feb 02 00:24:11 2010 +0200
+++ b/bearermanagement/S60MCPR/src/s60mcprmobilityactivity.cpp	Fri Feb 19 23:12:51 2010 +0200
@@ -500,12 +500,12 @@
 		}
 	
     // -----------------------------------------------------------------------------
-    // CS60MobilityActivity::TAwaitingPreferredCarrierOrCancelOrRejected::Accept
+    // CS60MobilityActivity::TAwaitingPreferredCarrierOrCancelOrRejectedOrErrorNotification::Accept
     // -----------------------------------------------------------------------------
     //
-    DEFINE_SMELEMENT( CS60MobilityActivity::TAwaitingPreferredCarrierOrCancelOrRejected, 
+    DEFINE_SMELEMENT( CS60MobilityActivity::TAwaitingPreferredCarrierOrCancelOrRejectedOrErrorNotification, 
                       NetStateMachine::MState, TContext )
-    TBool CS60MobilityActivity::TAwaitingPreferredCarrierOrCancelOrRejected::Accept()
+    TBool CS60MobilityActivity::TAwaitingPreferredCarrierOrCancelOrRejectedOrErrorNotification::Accept()
         {
         TBool result( EFalse );
         
@@ -518,7 +518,7 @@
 
             TMpmNotificationPrefIAPAvailable* notif = (TMpmNotificationPrefIAPAvailable*)msg->iPtr;
 
-            S60MCPRLOGSTRING4("S60MCPR<%x>::TAwaitingPreferredCarrierOrCancelOrRejected::Accept() TMPMPreferredCarrierAvailableMsg %d -> %d upgrade=%d",
+            S60MCPRLOGSTRING4("S60MCPR<%x>::TAwaitingPreferredCarrierOrCancelOrRejectedOrErrorNotification::Accept() TMPMPreferredCarrierAvailableMsg %d -> %d upgrade=%d",
                        (TInt*)&iContext.Node(), notif->iOldIapId, notif->iNewIapId, notif->iIsUpgrade)
             // notif must be there.
             ASSERT(notif);
@@ -538,18 +538,28 @@
             }
         else if ( iContext.iMessage.IsMessage<TEBase::TCancel>() )
             {
-            S60MCPRLOGSTRING1("S60MCPR<%x>::TAwaitingPreferredCarrierOrCancelOrRejected::Accept() TCancel", 
+            S60MCPRLOGSTRING1("S60MCPR<%x>::TAwaitingPreferredCarrierOrCancelOrRejectedOrErrorNotification::Accept() TCancel", 
                     (TInt*)&iContext.Node())
             
             result = ETrue;
             }
         else if ( iContext.iMessage.IsMessage<TCFMobilityProvider::TMigrationRejected>() )
             {
-            S60MCPRLOGSTRING1("S60MCPR<%x>::TAwaitingPreferredCarrierOrCancelOrRejected::Accept() TMigrationRejected", 
+            S60MCPRLOGSTRING1("S60MCPR<%x>::TAwaitingPreferredCarrierOrCancelOrRejectedOrErrorNotification::Accept() TMigrationRejected", 
                     (TInt*)&iContext.Node())
             
             result = ETrue;
             }
+        else if ( iContext.iMessage.IsMessage<TCFS60MCPRMessage::TMPMErrorNotificationMsg>() )
+            {
+            CS60MobilityActivity& activity = static_cast<CS60MobilityActivity&>(*iContext.iNodeActivity);
+            TCFS60MCPRMessage::TMPMErrorNotificationMsg* msg = 
+                message_cast<TCFS60MCPRMessage::TMPMErrorNotificationMsg>( &iContext.iMessage );
+            S60MCPRLOGSTRING2("S60MCPR<%x>::TAwaitingPreferredCarrierOrCancelOrRejectedOrErrorNotification::Accept() TMPMErrorNotificationMsg %d",(TInt*)&iContext.Node(),msg->iValue)
+            ASSERT( msg->iValue != KErrNone );
+            activity.SetError( msg->iValue );
+            result = ETrue;
+            }
 
         return result;
         }