satengine/SatServer/Commands/SetUpIdleModeTextCmd/src/CSetUpIdleModeTextHandler.cpp
--- a/satengine/SatServer/Commands/SetUpIdleModeTextCmd/src/CSetUpIdleModeTextHandler.cpp Tue Aug 31 15:45:17 2010 +0300
+++ b/satengine/SatServer/Commands/SetUpIdleModeTextCmd/src/CSetUpIdleModeTextHandler.cpp Wed Sep 01 12:15:03 2010 +0100
@@ -1,5 +1,5 @@
/*
-* Copyright (c) 2002-2010 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2002-2007 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
* under the terms of "Eclipse Public License v1.0"
@@ -18,7 +18,7 @@
#include <e32property.h>
#include <centralrepository.h>
-#include <networkhandlingdomainpskeys.h>
+#include <NetworkHandlingDomainPSKeys.h>
#include "SATPrivateCRKeys.h"
#include "MSatApi.h"
#include "MSatUtils.h"
@@ -66,6 +66,14 @@
LOG( SIMPLE, "SETUPIDLEMODETEXT: \
CSetUpIdleModeTextHandler::ConstructL calling" )
+ iWaitingForResponse = EFalse;
+
+ // Register to listen Idle mode responses.
+ iUtils->RegisterL( this, MSatUtils::EIdleModeResponseSuccess );
+ iUtils->RegisterL( this, MSatUtils::EIdleModeResponseSuccessNoIcon );
+ iUtils->RegisterL( this, MSatUtils::EIdleModeResponseUnableToProcess );
+ iUtils->RegisterL( this, MSatUtils::EIdleModeResponseBeyondCapabilities );
+
// Register to listen ESimReset execution.
iUtils->RegisterL( this, MSatUtils::ESimResetCalled );
iUtils->RegisterL( this, MSatUtils::ESimResetCancelled );
@@ -127,9 +135,50 @@
{
LOG( SIMPLE,
"SETUPIDLEMODETEXT: CSetUpIdleModeTextHandler::Event calling" )
+ TBool responseOk( EFalse );
+
// Check the response
switch ( aEvent )
{
+ case MSatUtils::EIdleModeResponseSuccess:
+ {
+ LOG( NORMAL, "SETUPIDLEMODETEXT: CSetUpIdleModeTextHandler \
+ KSuccess")
+ iSetUpIdleModeTextRsp.iGeneralResult = RSat::KSuccess;
+ responseOk = ETrue;
+ break;
+ }
+
+ case MSatUtils::EIdleModeResponseSuccessNoIcon:
+ {
+ LOG( NORMAL, "SETUPIDLEMODETEXT: CSetUpIdleModeTextHandler \
+ KSuccessReqIconNotDisplayed")
+ iSetUpIdleModeTextRsp.iGeneralResult =
+ RSat::KSuccessRequestedIconNotDisplayed;
+ responseOk = ETrue;
+ break;
+ }
+
+ case MSatUtils::EIdleModeResponseUnableToProcess:
+ {
+ LOG( NORMAL, "SETUPIDLEMODETEXT: CSetUpIdleModeTextHandler \
+ KMeUnableToProcessCmd")
+ iSetUpIdleModeTextRsp.iGeneralResult =
+ RSat::KMeUnableToProcessCmd;
+ responseOk = ETrue;
+ break;
+ }
+
+ case MSatUtils::EIdleModeResponseBeyondCapabilities:
+ {
+ LOG( NORMAL, "SETUPIDLEMODETEXT: CSetUpIdleModeTextHandler \
+ KBeyondMeCapabilities")
+ iSetUpIdleModeTextRsp.iGeneralResult =
+ RSat::KCmdBeyondMeCapabilities;
+ responseOk = ETrue;
+ break;
+ }
+
case MSatUtils::ESimResetCalled:
{
LOG( NORMAL, "SETUPIDLEMODETEXT: CSetUpIdleModeTextHandler \
@@ -195,6 +244,17 @@
break;
}
}
+
+ if ( responseOk && iWaitingForResponse )
+ {
+ LOG( NORMAL, "SETUPIDLEMODETEXT: CSetUpIdleModeTextHandler \
+ send response")
+ iWaitingForResponse = EFalse;
+
+ // Send terminal response, if the event was solved
+ TerminalRsp( RSat::ESetUpIdleModeText, iSetUpIdleModeTextRspPckg );
+ }
+
LOG( SIMPLE,
"SETUPIDLEMODETEXT: CSetUpIdleModeTextHandler::Event exiting" )
}
@@ -342,6 +402,8 @@
}
else
{
+ iWaitingForResponse = ETrue;
+
// Save data for restore.
iSimResetExecuting = EFalse;
iLastValidText = idleModeText;
@@ -369,9 +431,6 @@
remove the homezone indicator and return %d", errorCode )
}
}
-
- iSetUpIdleModeTextRsp.iGeneralResult = RSat::KSuccess;
- TerminalRsp( RSat::ESetUpIdleModeText, iSetUpIdleModeTextRspPckg );
}
LOG( SIMPLE,