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 "CCallBarringStatus.h"
00033
00041 CCallBarringStatus* CCallBarringStatus::NewL(MExecAsync* aController)
00042 {
00043 CCallBarringStatus* self = new(ELeave) CCallBarringStatus(aController);
00044 CleanupStack::PushL(self);
00045 self->ConstructL();
00046 CleanupStack::Pop(self);
00047 return self;
00048 }
00049
00054 CCallBarringStatus::~CCallBarringStatus()
00055 {
00056 Cancel();
00057 }
00058
00063 void CCallBarringStatus::DoStartRequestL()
00064 {
00065 _LIT( KNotifyPanic, "CCallBarringStatus Get Method" );
00066 __ASSERT_ALWAYS( !IsActive(), User::Panic( KNotifyPanic, 1 ));
00067 iRequestNotify = EFalse;
00068 CTelephony::TCallBarringCondition condition = CTelephony::EBarAllIncoming;
00069
00070
00071 iTelephony->GetCallBarringStatus( iStatus,
00072 condition,
00073 iCallBarringStatusV1Pckg);
00074 SetActive();
00075 }
00076
00083 CCallBarringStatus::CCallBarringStatus(MExecAsync* aController)
00084 : CISVAPIAsync(aController, KCallBarringStatus),
00085 iCallBarringStatusV1Pckg(iCallBarringStatusV1)
00086 {
00087
00088 }
00089
00093 void CCallBarringStatus::ConstructL()
00094 {
00095
00096 }
00097
00102 void CCallBarringStatus::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(KCallBarringStatusMsg);
00115 switch(iCallBarringStatusV1.iCallBarring)
00116 {
00117 case CTelephony::EStatusActive:
00118 iConsole->Printf(_L("Call barring status is active.\n"));
00119 break;
00120 case CTelephony::ENotActive:
00121 iConsole->Printf(_L("Call barring status is not active.\n"));
00122 break;
00123 case CTelephony::ENotProvisioned:
00124 iConsole->Printf(_L("Call barring status is not provisioned.\n"));
00125 break;
00126 case CTelephony::ENotAvailable:
00127 iConsole->Printf(_L("Call barring status is not available.\n"));
00128 break;
00129 case CTelephony::EUnknown:
00130 default:
00131 iConsole->Printf(_L("Call barring status is unknown.\n"));
00132 break;
00133 }
00134 }
00135 ExampleComplete();
00136 }
00137
00141 void CCallBarringStatus::DoCancel()
00142 {
00143
00144 iTelephony->CancelAsync(CTelephony::EGetCallBarringStatusCancel);
00145 }
00146