diff -r fce0ae2e4223 -r 10852b179f64 supl/locationomasuplprotocolhandler/protocolhandlerver1/src/epos_comasuplsession.cpp --- a/supl/locationomasuplprotocolhandler/protocolhandlerver1/src/epos_comasuplsession.cpp Tue Sep 14 22:09:33 2010 +0300 +++ b/supl/locationomasuplprotocolhandler/protocolhandlerver1/src/epos_comasuplsession.cpp Wed Sep 15 12:40:28 2010 +0300 @@ -193,8 +193,6 @@ iIapNotifier = COMASuplIapNotifier::NewL(*this); - - iDialogTimer = COMASuplDialogTimer::NewL(*this); iIsQoPPresent = EFalse; iIsFirstPOSMessage = ETrue; @@ -253,7 +251,6 @@ SessionEnd(); CompleteSession(KErrCancel); } - iProtocolManager.CancelUiLaunch(); delete this; } @@ -313,7 +310,6 @@ delete iTimer; delete iIapNotifier; iIMSI.Close(); - delete iDialogTimer; delete iNetworkPrivacy; @@ -2060,15 +2056,7 @@ iTrace->Trace(msg,KTraceFileName, __LINE__); } - CSuplSettings::TSuplSettingsUsage usage = iSuplSettings->SUPLUsage(); - - if (usage == CSuplSettings::ESuplUsageDisabled) - { - msg.Copy(_L("SUPL Usage is disabled")); - iTrace->Trace(msg,KTraceFileName, __LINE__); - iSessionObserver.TerminateSession(this, KErrGeneral); - return; - } + COMASuplAsnMessageBase::TSuplMessageType messageType = aDecodedAsnMessage->MessageType(); @@ -3820,16 +3808,6 @@ } -// ----------------------------------------------------------------------------- -// COMASuplSession::SettingsUICompleted -// -// ----------------------------------------------------------------------------- - -void COMASuplSession::SettingsUICompletedL(TInt /*aError*/) - { - - } - // ----------------------------------------------------------------------------- // COMASuplSession::HandleInvalidMessageL @@ -4131,57 +4109,7 @@ OperationCompleteL(KErrTimedOut); } -// ----------------------------------------------------------------------------- -// COMASuplSession::SettingsUsageUICompletedL -// -// ----------------------------------------------------------------------------- -void COMASuplSession::SettingsUsageUICompletedL(TInt aError) - { - iUIFlag = EFalse; - TBuf<64> msg; - msg.Copy(_L("SUPL Usage UI completed with ... ")); - msg.AppendNum(aError); - iTrace->Trace(msg,KTraceFileName, __LINE__); - iPrevUsageResult = aError; - iIhaveLaunchedUsagedialog = EFalse; - - - if (aError == KErrNone) - { - iProtocolManager.UpdateAllSubSessnsInSameSession(iIpcSessionId); - - if (isTimeoutDialogTimerStarted) - { - iTrace->Trace(_L("COMASuplSession::SettingsUsageUICompletedL, stopping timer "), KTraceFileName, __LINE__); - isTimeoutDialogTimerStarted = EFalse; - iDialogTimer->StopTimer(); - - //Compute how log the dialog was on - TTime nowTime; - nowTime.HomeTime(); - nowTime.SecondsFrom(iDlgStartTime, iDiffTime); - } - if (iNwInitError) - { - iNwInitError = EFalse; - HandleSuplInitErrorL(iNwInitCompletionCode); - } - else - InitializeL(iRequestID); - } - else if (aError == KErrCompletion) - CheckForSuplUsageL(); - else - { - TBuf<64> msg; - msg.Copy(_L("Error after SUPL Usage Popup... ")); - msg.AppendNum(aError); - iTrace->Trace(msg,KTraceFileName, __LINE__); - iSessionObserver.TerminateSession(this, KErrGeneral); - return; - } - } // ----------------------------------------------------------------------------- // COMASuplSession::CheckForSuplUsageL @@ -4190,37 +4118,23 @@ void COMASuplSession::CheckForSuplUsageL() { - if (iSuplUsage >= 1) - { - CSuplSettings::TSuplSettingsUsage usage = iSuplSettings->SUPLUsage(); - if (usage == CSuplSettings::ESuplUsageDisabled) - { - iSessionObserver.TerminateSession(this, KErrGeneral); - } - else if (usage == CSuplSettings::ESuplUsageAutomatic) - { + if (iNwInitError) { iNwInitError = EFalse; HandleSuplInitErrorL(iNwInitCompletionCode); } else - InitializeL(iRequestID); - } - - else if (usage == CSuplSettings::ESuplUsageHomeAutomatic || usage == CSuplSettings::ESuplUsageAlwaysAsk) - { - if (iRoaming) + { + if (iRoaming) HandleRoamingCheckCompleteL(KErrNone, EFalse); else { iEtelRoamingCheck = ETrue; iProtocolManager.CheckForRoaming(); } - } - } - else - InitializeL(iRequestID); + } + } @@ -4303,87 +4217,7 @@ { iUsageHomeNW = aHomeNw; iConnRequestor->UpdateSLPListForHomeUsage(iUsageHomeNW); - CSuplSettings::TSuplSettingsUsage usage = iSuplSettings->SUPLUsage(); - - if (usage == CSuplSettings::ESuplUsageAlwaysAsk || iStaleLocIdPrompt) - { - TInt err; - if (!iSuplSettings->IsUIActive() ) - { - if (!aHomeNw) - { - iTrace->Trace(_L("Invoking LaunchSuplUsageSettingsUI, user is roaming"), KTraceFileName, __LINE__); - iIhaveLaunchedUsagedialog = ETrue; - err = iProtocolManager.LaunchSuplUsageSettingsUI(this, ETrue); - } - else - { - iTrace->Trace(_L("Invoking LaunchSuplUsageSettingsUI, user is not roaming"), KTraceFileName, __LINE__); - iIhaveLaunchedUsagedialog = ETrue; - err = iProtocolManager.LaunchSuplUsageSettingsUI(this, EFalse); - } - } - else - err = KErrInUse; - - if(KErrNone != err && KErrInUse == err) - { - iTrace->Trace(_L("Dialog in use, setting flag"), KTraceFileName, __LINE__); - SetSuplUsageFlag(); - } - if( KErrNone == err && iRequestType == ESUPL_NETWORK ) - { - iTrace->Trace(_L("Network Session , starting timer"), KTraceFileName, __LINE__); - COMASuplInit* suplInit = static_cast (iDecodedAsnMessage); - TOMASuplQop qop; - TInt retVal = suplInit->Qop(qop); - TInt delay; - qop.Delay(delay); - //if delay is > 7, it is not valid - if (delay > 7) - delay = 0; - if(retVal == KErrNone && delay > 0) - { - TReal delayReal; - Math::Pow(delayReal, 2, (TReal)delay); - delay = (TInt) delayReal; - TBuf<128> msg(_L("Delay present in message, value is = ")); - msg.AppendNum(delay); - iTrace->Trace(msg, KTraceFileName, __LINE__); - isTimeoutDialogTimerStarted = ETrue; - iDialogTimer->StartTimer(delay); - } - else - { - if (iSuplInitTimeOut > 0) - { - TBuf<256> msg(_L("Delay value in CR is")); - msg.AppendNum(iSuplInitTimeOut); - iTrace->Trace(msg, KTraceFileName, __LINE__); - iDialogTimer->StartTimer(iSuplInitTimeOut * KSecond); - isTimeoutDialogTimerStarted = ETrue; - } - else - iTrace->Trace(_L("Timeout is <= 0"), KTraceFileName, __LINE__); - } - iDlgStartTime.HomeTime(); - } - else if (KErrNone != err) - { - iTrace->Trace(_L("Invoking HandleSuplErrorL"), KTraceFileName, __LINE__); - HandleSuplErrorL(err); - } - - } - else if (usage == CSuplSettings::ESuplUsageHomeAutomatic) - { - if (!aHomeNw) - { - TInt err; - //if (!iSuplSettings->IsUIActive() ) - { - iTrace->Trace(_L("Invoking LaunchSuplUsageSettingsUI, user is roaming"), KTraceFileName, __LINE__); - err = iProtocolManager.LaunchSuplUsageSettingsUI(this, ETrue); + if(iSuplMsgType == ESUPL_INIT) { @@ -4406,47 +4240,35 @@ msg.AppendNum(delay); iTrace->Trace(msg, KTraceFileName, __LINE__); isTimeoutDialogTimerStarted = ETrue; - iDialogTimer->StartTimer(delay); + } else { if (iSuplInitTimeOut > 0) { isTimeoutDialogTimerStarted = ETrue; - iDialogTimer->StartTimer(iSuplInitTimeOut * KSecond); + } else iTrace->Trace(_L("Timeout is <= 0"), KTraceFileName, __LINE__); } } - } - - if(!iSuplSettings->IsUIActive() && KErrNone != err) - { - SetSuplUsageFlag(); - } - else - { - iTrace->Trace(_L("Invoking HandleSuplErrorL"), KTraceFileName, __LINE__); - HandleSuplErrorL(err); - } - } - else - { + if (iNwInitError) { iNwInitError = EFalse; HandleSuplInitErrorL(iNwInitCompletionCode); } else - InitializeL(iRequestID); - } - } + { + iTrace->Trace(_L("COMASuplSession::InitializeL called after roaming check"), KTraceFileName, __LINE__); + InitializeL(iRequestID); + } } - else - { - iSessionObserver.TerminateSession(this, KErrGeneral); - } + else + { + iSessionObserver.TerminateSession(this, KErrGeneral); + } } TInt COMASuplSession::SuplIpcSessionID() { @@ -4511,173 +4333,7 @@ return iUsageDialog; } -void COMASuplSession::StartUsageDialogLaunchL() - { - iTrace->Trace(_L("COMASuplSession::StartUsageDialogLaunchL"), KTraceFileName, __LINE__); - ReSetSuplUsageFlag(); - iTrace->Trace(_L("COMASuplSession::StartUsageDialogLaunchL, flag reset done"), KTraceFileName, __LINE__); - CSuplSettings::TSuplSettingsUsage usage = iSuplSettings->SUPLUsage(); - if (usage == CSuplSettings::ESuplUsageAlwaysAsk) - { - TInt err; - if (!iUsageHomeNW) - { - iTrace->Trace(_L("Invoking LaunchSuplUsageSettingsUI, user is roaming"), KTraceFileName, __LINE__); - err = iProtocolManager.LaunchSuplUsageSettingsUI(this, ETrue); - - if(iRequestType == ESUPL_NETWORK && err == KErrNone) - { - iTrace->Trace(_L("starting Dialog timer "), KTraceFileName, __LINE__); - - COMASuplInit* suplInit = static_cast (iDecodedAsnMessage); - TOMASuplQop qop; - TInt retVal = suplInit->Qop(qop); - TInt delay; - qop.Delay(delay); - //if delay is > 7, it is not valid - if (delay > 7) - delay = 0; - if(retVal == KErrNone && delay > 0) - { - TReal delayReal; - Math::Pow(delayReal, 2, (TReal)delay); - delay = (TInt) delayReal; - TBuf<128> msg(_L("Delay present in message, value is = ")); - msg.AppendNum(delay); - iTrace->Trace(msg, KTraceFileName, __LINE__); - isTimeoutDialogTimerStarted = ETrue; - iDialogTimer->StartTimer(delay); - } - else - { - if (iSuplInitTimeOut > 0) - { - iTrace->Trace(_L("Delay not present in message"), KTraceFileName, __LINE__); - TBuf<256> msg(_L("Delay value in CR is ")); - msg.AppendNum(iSuplInitTimeOut); - iDialogTimer->StartTimer(iSuplInitTimeOut * KSecond); - isTimeoutDialogTimerStarted = ETrue; - } - else - iTrace->Trace(_L("Timeout is <= 0"), KTraceFileName, __LINE__); - } - } - } - else - { - iTrace->Trace(_L("Invoking LaunchSuplUsageSettingsUI, user is not roaming"), KTraceFileName, __LINE__); - err = iProtocolManager.LaunchSuplUsageSettingsUI(this, EFalse); - - if( iRequestType == ESUPL_NETWORK && err == KErrNone) - { - iTrace->Trace(_L("starting Dialog timer "), KTraceFileName, __LINE__); - - COMASuplInit* suplInit = static_cast (iDecodedAsnMessage); - TOMASuplQop qop; - TInt retVal = suplInit->Qop(qop); - TInt delay; - qop.Delay(delay); - //if delay is > 7, it is not valid - if (delay > 7) - delay = 0; - if(retVal == KErrNone && delay > 0) - { - TReal delayReal; - Math::Pow(delayReal, 2, (TReal)delay); - delay = (TInt) delayReal; - TBuf<128> msg(_L("Delay present in message, value is = ")); - msg.AppendNum(delay); - iTrace->Trace(msg, KTraceFileName, __LINE__); - isTimeoutDialogTimerStarted = ETrue; - iDialogTimer->StartTimer(delay); - } - else - { - if (iSuplInitTimeOut > 0) - { - iTrace->Trace(_L("Delay not present in message"), KTraceFileName, __LINE__); - TBuf<256> msg(_L("Delay value in CR is")); - msg.AppendNum(iSuplInitTimeOut); - iDialogTimer->StartTimer(iSuplInitTimeOut * KSecond); - isTimeoutDialogTimerStarted = ETrue; - } - else - iTrace->Trace(_L("Timeout is <= 0"), KTraceFileName, __LINE__); - } - } - } - - if(KErrNone != err) - { - iTrace->Trace(_L("Invoking HandleSuplErrorL"), KTraceFileName, __LINE__); - HandleSuplErrorL(err); - } - } - else if (usage == CSuplSettings::ESuplUsageHomeAutomatic) - { - if (!iUsageHomeNW) - { - TInt err; - iTrace->Trace(_L("Invoking LaunchSuplUsageSettingsUI, user is roaming"), KTraceFileName, __LINE__); - err = iProtocolManager.LaunchSuplUsageSettingsUI(this, ETrue); - - if(KErrNone != err) - { - iTrace->Trace(_L("Invoking HandleSuplErrorL"), KTraceFileName, __LINE__); - HandleSuplErrorL(err); - } - - if(iRequestType == ESUPL_NETWORK && err == KErrNone) - { - iTrace->Trace(_L("starting Dialog timer "), KTraceFileName, __LINE__); - - COMASuplInit* suplInit = static_cast (iDecodedAsnMessage); - TOMASuplQop qop; - TInt retVal = suplInit->Qop(qop); - TInt delay; - qop.Delay(delay); - //if delay is > 7, it is not valid - if (delay > 7) - delay = 0; - if(retVal == KErrNone && delay > 0) - { - TReal delayReal; - Math::Pow(delayReal, 2, (TReal)delay); - delay = (TInt) delayReal; - TBuf<128> msg(_L("Delay present in message, value is = ")); - msg.AppendNum(delay); - iTrace->Trace(msg, KTraceFileName, __LINE__); - isTimeoutDialogTimerStarted = ETrue; - iDialogTimer->StartTimer(delay); - } - else - { - if (iSuplInitTimeOut > 0) - { - iTrace->Trace(_L("Delay not present in message"), KTraceFileName, __LINE__); - TBuf<256> msg(_L("Delay value in CR is")); - msg.AppendNum(iSuplInitTimeOut); - iDialogTimer->StartTimer(iSuplInitTimeOut * KSecond); - isTimeoutDialogTimerStarted = ETrue; - } - else - iTrace->Trace(_L("Timeout is <= 0"), KTraceFileName, __LINE__); - } - } - } - else - { - if (iNwInitError) - { - iNwInitError = EFalse; - HandleSuplInitErrorL(iNwInitCompletionCode); - } - else - InitializeL(iRequestID); - } - } - } TBool COMASuplSession::IsEtelNotifySet() { @@ -4697,38 +4353,6 @@ } -// ----------------------------------------------------------------------------- -// COMASuplSession::DialogTimerExpiredL -// Checks whether UI is displayed or not previously -// -// ----------------------------------------------------------------------------- -void COMASuplSession::DialogTimerExpiredL() -{ - iTrace->Trace(_L("Timer Expired for SUPL Dialog"), KTraceFileName, __LINE__); - - if (!iIapDialogShown) - iProtocolManager.LaunchSuplDialogTimeoutUI(this); - else - iIapDlgTimerExpired = ETrue; - - return; -} - -// ----------------------------------------------------------------------------- -// COMASuplSession::SettingsTimeOutUICompletedL -// -// ----------------------------------------------------------------------------- -void COMASuplSession::SettingsTimeOutUICompletedL(TInt aError) - { - - TBuf<64> msg; - msg.Copy(_L("SUPL Timeout UI completed with ... ")); - msg.AppendNum(aError); - iTrace->Trace(msg,KTraceFileName, __LINE__); - iSessionObserver.TerminateSession(this, KErrGeneral); - return; - - } // ----------------------------------------------------------------------------- // COMASuplSession::StoreCurrentCellIDL