00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032 #include "CIdentityServiceStatus.h"
00033
00041 CIdentityServiceStatus* CIdentityServiceStatus::NewL(MExecAsync* aController)
00042 {
00043 CIdentityServiceStatus* self = new(ELeave) CIdentityServiceStatus(aController);
00044 CleanupStack::PushL(self);
00045 self->ConstructL();
00046 CleanupStack::Pop(self);
00047 return self;
00048 }
00049
00054 CIdentityServiceStatus::~CIdentityServiceStatus()
00055 {
00056 Cancel();
00057 }
00058
00063 void CIdentityServiceStatus::DoStartRequestL()
00064 {
00065 _LIT(KDummyAnswerPanic, "CIdentityServiceStatus Get Method");
00066 __ASSERT_ALWAYS(!IsActive(), User::Panic(KDummyAnswerPanic, 1));
00067 iRequestNotify = EFalse;
00068 CTelephony::TIdentityService condition = CTelephony::EIdServiceCallerPresentation;
00069
00070
00071 iTelephony->GetIdentityServiceStatus(iStatus,
00072 condition,
00073 iIdentityServiceStatusV1Pckg);
00074 SetActive();
00075 }
00076
00083 CIdentityServiceStatus::CIdentityServiceStatus(MExecAsync* aController)
00084 : CISVAPIAsync(aController, KIdentityServiceStatus),
00085 iIdentityServiceStatusV1Pckg(iIdentityServiceStatusV1)
00086 {
00087
00088 }
00089
00093 void CIdentityServiceStatus::ConstructL()
00094 {
00095
00096 }
00097
00102 void CIdentityServiceStatus::RunL()
00103 {
00104 if(iStatus != KErrNone)
00105 {
00106 iConsole->Printf(KError);
00107
00108
00109 iConsole->Printf(_L("%d\n"), iStatus.Int());
00110 }
00111 else
00112 {
00113
00114 iConsole->Printf(KIdentityServiceStatusMsg);
00115 switch(iIdentityServiceStatusV1.iIdentityStatus)
00116 {
00117 case CTelephony::EIdServiceActivePermanent:
00118 iConsole->Printf(_L("Provisioned and permanently active.\n"));
00119 break;
00120 case CTelephony::EIdServiceActiveDefaultRestricted:
00121 iConsole->Printf(_L("Provisioned and active. By default, the number is restricted unless overridden by the user.\n"));
00122 break;
00123 case CTelephony::EIdServiceActiveDefaultAllowed :
00124 iConsole->Printf(_L("Provisioned and active. By default, the number is displayed unless specifically restricted by the user.\n"));
00125 break;
00126 case CTelephony::EIdServiceNotProvisioned:
00127 iConsole->Printf(_L("Not provisioned.\n"));
00128 break;
00129 case CTelephony::EIdServiceUnknown:
00130 iConsole->Printf(_L("Unknown.\n"));
00131 break;
00132 }
00133 }
00134 ExampleComplete();
00135 }
00136
00140 void CIdentityServiceStatus::DoCancel()
00141 {
00142
00143 iTelephony->CancelAsync(CTelephony::EGetIdentityServiceStatusCancel);
00144 }
00145