339 |
339 |
340 //Inform the CPR that a potential migration is available. We only support a single data client |
340 //Inform the CPR that a potential migration is available. We only support a single data client |
341 //in this implementation. |
341 //in this implementation. |
342 __ASSERT_DEBUG(activity.iPreferredAPId, User::Panic(KS60MCprPanic, KPanicNoServiceProvider)); |
342 __ASSERT_DEBUG(activity.iPreferredAPId, User::Panic(KS60MCprPanic, KPanicNoServiceProvider)); |
343 |
343 |
344 //Compute all this here to keep EvaluatePreference() as fast as possible |
|
345 activity.iCurrent = static_cast<RMetaServiceProviderInterface*>( |
|
346 iContext.Node().GetFirstClient<TDefaultClientMatchPolicy>( |
|
347 TClientType( TCFClientType::EServProvider, TCFClientType::EStarted ))); |
|
348 |
|
349 __ASSERT_DEBUG(activity.iCurrent, User::Panic(KS60MCprPanic, KPanicNoServiceProvider)); |
|
350 /* Not valid ASSERT |
|
351 __ASSERT_DEBUG(activity.iCurrent->ProviderInfo().APId() == activity.iCurrentAssumedAPId, |
|
352 User::Panic(KS60MCprPanic, KPanicInConsistentMCPRState)); |
|
353 */ |
|
354 // Activity received the necessary information from the policy server earlier |
344 // Activity received the necessary information from the policy server earlier |
355 // and now holds that information which we'll send to IPCPR. |
345 // and now holds that information which we'll send to IPCPR. |
356 TCFMobilityControlClient::TMigrationNotification msg( activity.iCurrentAssumedAPId, |
346 TCFMobilityControlClient::TMigrationNotification msg( activity.iCurrentAssumedAPId, |
357 //activity.iCurrent->ProviderInfo().APId(), |
347 //activity.iCurrent->ProviderInfo().APId(), |
358 activity.iPreferredAPId, |
348 activity.iPreferredAPId, |
556 TCFS60MCPRMessage::TMPMErrorNotificationMsg* msg = |
546 TCFS60MCPRMessage::TMPMErrorNotificationMsg* msg = |
557 message_cast<TCFS60MCPRMessage::TMPMErrorNotificationMsg>( &iContext.iMessage ); |
547 message_cast<TCFS60MCPRMessage::TMPMErrorNotificationMsg>( &iContext.iMessage ); |
558 S60MCPRLOGSTRING2("S60MCPR<%x>::TAwaitingPreferredCarrierOrCancelOrRejectedOrErrorNotification::Accept() TMPMErrorNotificationMsg %d",(TInt*)&iContext.Node(),msg->iValue) |
548 S60MCPRLOGSTRING2("S60MCPR<%x>::TAwaitingPreferredCarrierOrCancelOrRejectedOrErrorNotification::Accept() TMPMErrorNotificationMsg %d",(TInt*)&iContext.Node(),msg->iValue) |
559 ASSERT( msg->iValue != KErrNone ); |
549 ASSERT( msg->iValue != KErrNone ); |
560 activity.SetError( msg->iValue ); |
550 activity.SetError( msg->iValue ); |
561 result = ETrue; |
551 result = EFalse; |
562 } |
552 } |
563 |
553 |
564 return result; |
554 return result; |
565 } |
555 } |
566 |
556 |