S60 3rd Edition SDK for Symbian OS
Example Applications Guide

CIsvTelInfoAppTelephony Class Reference

#include <IsvTelInfoAppTelephony.h>

List of all members.

Public Member Functions

 CIsvTelInfoAppTelephony (MIsvTelInfoAppTelephonyNotify &aNotify)
void ConstructL ()
 ~CIsvTelInfoAppTelephony ()
void TelApiWrapperGetPhoneIdL ()
void TelApiWrapperGetSubscriberIdL ()
void TelApiWrapperGetNwRegistrationStatusL ()
void TelApiWrapperGetBarringStatusL (CTelephony::TCallBarringCondition aBarCondition)
void TelApiWrapperGetWaitingStatusL ()
void TelApiWrapperGetIdentityStatusL (CTelephony::TIdentityService aIdentityServiceType)
void LoadErrorStringsFromResource ()
void GeneralErrorMessage (TInt aStatus, TBuf16< KMaxErrMsgSize > *aErrMsgBuffer)
void StartWait ()

Static Public Member Functions

static CIsvTelInfoAppTelephony * NewL (MIsvTelInfoAppTelephonyNotify &aNotify)

Public Attributes

CTelephony * iTel

Protected Member Functions

void RunL ()
void DoCancel ()

Private Types

enum  TETelApiCmd {
  EGetPhoneId = 0, EGetSubscriberId, ENwRegistrationStatus, EGetBarringStatus,
  EGetWaitingStatus, EGetIdentityStatus, EAsyncEvent, EMaxCommands,
  ECommandNone
}

Private Attributes

TETelApiCmd iTelApiCmd
CTelephony::TCallBarringCondition iBarringCondition
CTelephony::TIdentityService iIdentityServiceType
CActiveSchedulerWait iWait
CTelephony::TNotificationEvent iEvent
MIsvTelInfoAppTelephonyNotify & iNotify
TBuf16< KMaxErrMsgSize > iErrStrNotFound
TBuf16< KMaxErrMsgSize > iErrStrGeneral
TBuf16< KMaxErrMsgSize > iErrStrCancel
TBuf16< KMaxErrMsgSize > iErrStrNoMemory
TBuf16< KMaxErrMsgSize > iErrStrNotSupported
TBuf16< KMaxErrMsgSize > iErrStrArgument
TBuf16< KMaxErrMsgSize > iErrStrTotalLossOfPrecision
TBuf16< KMaxErrMsgSize > iErrStrBadHandle
TBuf16< KMaxErrMsgSize > iErrStrOverflow
TBuf16< KMaxErrMsgSize > iErrStrUnderflow
TBuf16< KMaxErrMsgSize > iErrStrAlreadyExists
TBuf16< KMaxErrMsgSize > iErrStrInUse
TBuf16< KMaxErrMsgSize > iErrStrServerTerminated
TBuf16< KMaxErrMsgSize > iErrStrServerBusy
TBuf16< KMaxErrMsgSize > iErrStrUnknown
TBuf16< KMaxErrMsgSize > iErrStrCorrupt
TBuf16< KMaxErrMsgSize > iErrStrAccessDenied
TBuf16< KMaxErrMsgSize > iErrStrCommsLineFail
TBuf16< KMaxErrMsgSize > iErrStrTimedOut
TBuf16< KMaxErrMsgSize > iErrStrCouldNotConnect
TBuf16< KMaxErrMsgSize > iErrStrCouldNotDisconnect
TBuf16< KMaxErrMsgSize > iErrStrHardwareNotAvailable
TBuf16< KMaxErrMsgSize > iErrStrSessionClosed
TBuf16< KMaxErrMsgSize > iErrStrPermissionDenied
TBuf16< KMaxErrMsgSize > iErrStrDefault
TBuf16< KMaxErrMsgSize > iEmuApiNotSupported
CTelephony::TPhoneIdV1 iPhoneId
CTelephony::TPhoneIdV1Pckg iPhoneIdPckg
CTelephony::TSubscriberIdV1 iSubscriberId
CTelephony::TSubscriberIdV1Pckg iSubscriberIdPckg
CTelephony::TNetworkRegistrationV1 iNwRegistrationStatus
CTelephony::TNetworkRegistrationV1Pckg iNwRegistrationStatusPckg
CTelephony::TCallBarringSupplServicesV1 iCallBarringServices
CTelephony::TCallBarringSupplServicesV1Pckg iCallBarringServicesPckg
CTelephony::TCallWaitingSupplServicesV1 iCallWaitingServices
CTelephony::TCallWaitingSupplServicesV1Pckg iCallWaitingServicesPckg
CTelephony::TIdentityServiceV1 iIdentityService
CTelephony::TIdentityServiceV1Pckg iIdentityServicePckg


Detailed Description

CIsvTelInfoAppTelephony: This class derives from CActive and wraps the CTelephony class. Provides a command table based execution for telephony commands with command specific parsing capabilities.

Definition at line 42 of file IsvTelInfoAppTelephony.h.


Member Enumeration Documentation

enum CIsvTelInfoAppTelephony::TETelApiCmd [private]
 

Command Table.

Enumerator:
EGetPhoneId  Get Phone Identity.
EGetSubscriberId  Get SubscriberId.
ENwRegistrationStatus  Get Network registration status.
EGetBarringStatus  Get Call barring status.
EGetWaitingStatus  Get Call waiting status.
EGetIdentityStatus  Get identity status.
EAsyncEvent  Async commands.
EMaxCommands  Maximum number of commands.
ECommandNone  Command None

Definition at line 147 of file IsvTelInfoAppTelephony.h.

00148             {
00149             /** 
00150             Get Phone Identity.
00151             */
00152             EGetPhoneId = 0,
00153             /** 
00154             Get SubscriberId.
00155             */
00156             EGetSubscriberId,
00157             /** 
00158             Get Network registration status.
00159             */
00160             ENwRegistrationStatus,
00161             /** 
00162             Get Call barring status.
00163             */
00164             EGetBarringStatus,
00165             /** 
00166             Get Call waiting status.
00167             */
00168             EGetWaitingStatus,
00169             /** 
00170             Get identity status.
00171             */
00172             EGetIdentityStatus,
00173             /** 
00174             Async commands.
00175             */
00176                         EAsyncEvent,
00177             /** 
00178             Maximum number of commands.
00179             */
00180             EMaxCommands,
00181             /**
00182             Command None
00183             */
00184             ECommandNone
00185             };


Constructor & Destructor Documentation

CIsvTelInfoAppTelephony::CIsvTelInfoAppTelephony (  MIsvTelInfoAppTelephonyNotify &  aNotify  ) 
 

Default constructor.

Parameters:
aNotify reference to the object that implements the MIsvTelInfoAppTelephonyNotify interface.

Definition at line 177 of file IsvTelInfoAppTelephony.cpp.

00179     :CActive( EPriorityStandard ),
00180     iNotify( aNotify ), 
00181     iPhoneIdPckg( iPhoneId ),
00182     iSubscriberIdPckg( iSubscriberId ),
00183     iNwRegistrationStatusPckg( iNwRegistrationStatus ),
00184     iCallBarringServicesPckg( iCallBarringServices ),
00185     iCallWaitingServicesPckg( iCallWaitingServices ),
00186     iIdentityServicePckg( iIdentityService )
00187     { 
00188     CActiveScheduler::Add( this );
00189     }

CIsvTelInfoAppTelephony::~CIsvTelInfoAppTelephony (   ) 
 

Destructor.

Definition at line 48 of file IsvTelInfoAppTelephony.cpp.

00049     {
00050     Cancel();
00051     }


Member Function Documentation

void CIsvTelInfoAppTelephony::ConstructL (   ) 
 

Second-phase constructor.

Definition at line 197 of file IsvTelInfoAppTelephony.cpp.

References iTel, and LoadErrorStringsFromResource().

00198     {
00199     //----------------------------------------------------------------------
00200     // Load Error strings from resource file
00201     //----------------------------------------------------------------------
00202     LoadErrorStringsFromResource();
00203    
00204    //Creating Telephony object. 
00205 #ifdef __WINS__
00206 
00207 #else
00208     iTel = CTelephony::NewL();
00209 #endif   
00210     }

CIsvTelInfoAppTelephony * CIsvTelInfoAppTelephony::NewL (  MIsvTelInfoAppTelephonyNotify &  aNotify  )  [static]
 

Two-phased constructor.

Parameters:
aNotify Reference to an object implementing the MIsvTelInfoAppTelephonyNotify interface

Definition at line 33 of file IsvTelInfoAppTelephony.cpp.

00034     {
00035     CIsvTelInfoAppTelephony* selfWrapperClass = 
00036         new ( ELeave ) CIsvTelInfoAppTelephony( aNotify );
00037     CleanupStack::PushL( selfWrapperClass );
00038     selfWrapperClass->ConstructL();
00039     CleanupStack::Pop();
00040     return selfWrapperClass;
00041     }

void CIsvTelInfoAppTelephony::TelApiWrapperGetPhoneIdL (   ) 
 

Wrapper function that calls GetPhoneId of CTelephony class.

Definition at line 217 of file IsvTelInfoAppTelephony.cpp.

References EGetPhoneId, iEmuApiNotSupported, iPhoneIdPckg, iTel, and StartWait().

00218     {
00219     if ( IsActive() )
00220         {
00221         return;
00222         }
00223     
00224     iTelApiCmd = EGetPhoneId;
00225     
00226 #ifdef __WINS__
00227     CAknErrorNote* errorNote = new (ELeave) CAknErrorNote;
00228     errorNote->ExecuteLD(iEmuApiNotSupported);
00229 #else    
00230     iTel->GetPhoneId( iStatus, iPhoneIdPckg );
00231     SetActive();
00232     StartWait();
00233 #endif    
00234     }

void CIsvTelInfoAppTelephony::TelApiWrapperGetSubscriberIdL (   ) 
 

Wrapper function that calls GetSubscriberId of CTelephony class.

Definition at line 241 of file IsvTelInfoAppTelephony.cpp.

References iEmuApiNotSupported, iSubscriberIdPckg, iTel, and StartWait().

00242     {
00243     if ( IsActive() )
00244         {
00245         return;
00246         }
00247         
00248     iTelApiCmd = EGetSubscriberId;
00249     
00250 #ifdef __WINS__
00251     CAknErrorNote* errorNote = new (ELeave) CAknErrorNote;
00252     errorNote->ExecuteLD(iEmuApiNotSupported);
00253 #else    
00254     iTel->GetSubscriberId( iStatus, iSubscriberIdPckg );
00255     SetActive();
00256     StartWait();
00257 #endif    
00258     }

void CIsvTelInfoAppTelephony::TelApiWrapperGetNwRegistrationStatusL (   ) 
 

Wrapper function that calls GetNetworkRegistrationStatus of CTelephony class.

Definition at line 321 of file IsvTelInfoAppTelephony.cpp.

References iEmuApiNotSupported, iNwRegistrationStatusPckg, iTel, and StartWait().

00322     {
00323     if ( IsActive() )
00324         {
00325         return;
00326         }
00327     
00328     iTelApiCmd = ENwRegistrationStatus;
00329     
00330 #ifdef __WINS__
00331     CAknErrorNote* errorNote = new (ELeave) CAknErrorNote;
00332     errorNote->ExecuteLD(iEmuApiNotSupported);
00333 #else    
00334     iTel->GetNetworkRegistrationStatus( iStatus, iNwRegistrationStatusPckg );
00335     SetActive();
00336     StartWait();
00337 #endif    
00338     }

void CIsvTelInfoAppTelephony::TelApiWrapperGetBarringStatusL (  CTelephony::TCallBarringCondition  aBarCondition  ) 
 

Wrapper function that calls GetCallBarringStatus of CTelephony class.

Parameters:
CTelephony::TCallBarringCondition aBarCondition Barring Condition

Definition at line 265 of file IsvTelInfoAppTelephony.cpp.

References iBarringCondition, iCallBarringServicesPckg, iEmuApiNotSupported, iTel, and StartWait().

00267     {
00268     if ( IsActive() )
00269         {
00270         return;
00271         }
00272     
00273     iTelApiCmd = EGetBarringStatus;
00274    
00275     //Find the barring condition for which the status is to be fetched.
00276     iBarringCondition = aBarCondition;
00277     if ( ( TInt )iBarringCondition == KErrNotFound )
00278         {
00279         return;
00280         }
00281 #ifdef __WINS__
00282     CAknErrorNote* errorNote = new (ELeave) CAknErrorNote;
00283     errorNote->ExecuteLD(iEmuApiNotSupported);
00284 #else    
00285     iTel->GetCallBarringStatus( iStatus, iBarringCondition, 
00286         iCallBarringServicesPckg );
00287     SetActive();
00288     StartWait();
00289 #endif    
00290     }

void CIsvTelInfoAppTelephony::TelApiWrapperGetWaitingStatusL (   ) 
 

Wrapper function that calls GetCallWaitingStatus of CTelephony class.

Definition at line 297 of file IsvTelInfoAppTelephony.cpp.

References iCallWaitingServicesPckg, iEmuApiNotSupported, iTel, and StartWait().

00298     {
00299     if ( IsActive() )
00300         {
00301         return;
00302         }
00303     
00304     iTelApiCmd = EGetWaitingStatus;
00305     
00306 #ifdef __WINS__
00307     CAknErrorNote* errorNote = new (ELeave) CAknErrorNote;
00308     errorNote->ExecuteLD(iEmuApiNotSupported);
00309 #else    
00310     iTel->GetCallWaitingStatus( iStatus, iCallWaitingServicesPckg );
00311     SetActive();
00312     StartWait();
00313 #endif    
00314     }

void CIsvTelInfoAppTelephony::TelApiWrapperGetIdentityStatusL (  CTelephony::TIdentityService  aIdentityServiceType  ) 
 

Wrapper function that calls GetIdentityServiceStatus of CTelephony class.

Definition at line 345 of file IsvTelInfoAppTelephony.cpp.

References iEmuApiNotSupported, iIdentityServicePckg, iIdentityServiceType, iTel, and StartWait().

00347     {
00348     if ( IsActive() )
00349         {
00350         return;
00351         }
00352     
00353     iTelApiCmd = EGetIdentityStatus;
00354    
00355        //Find the identity service for which the status is to be fetched.
00356     iIdentityServiceType = aIdentityServiceType;
00357        
00358     if ( ( TInt )iIdentityServiceType == KErrNotFound )
00359         {
00360         return;
00361         }
00362 #ifdef __WINS__
00363     CAknErrorNote* errorNote = new (ELeave) CAknErrorNote;
00364     errorNote->ExecuteLD(iEmuApiNotSupported);
00365 #else    
00366     iTel->GetIdentityServiceStatus( iStatus, iIdentityServiceType, 
00367         iIdentityServicePckg );
00368     SetActive();
00369     StartWait();
00370 #endif    
00371     }

void CIsvTelInfoAppTelephony::LoadErrorStringsFromResource (   ) 
 

Loads error strings from resource files

Definition at line 391 of file IsvTelInfoAppTelephony.cpp.

References iEmuApiNotSupported, iErrStrAccessDenied, iErrStrAlreadyExists, iErrStrArgument, iErrStrBadHandle, iErrStrCancel, iErrStrCommsLineFail, iErrStrCorrupt, iErrStrCouldNotConnect, iErrStrCouldNotDisconnect, iErrStrDefault, iErrStrGeneral, iErrStrHardwareNotAvailable, iErrStrInUse, iErrStrNoMemory, iErrStrNotFound, iErrStrNotSupported, iErrStrOverflow, iErrStrPermissionDenied, iErrStrServerBusy, iErrStrServerTerminated, iErrStrSessionClosed, iErrStrTimedOut, iErrStrTotalLossOfPrecision, iErrStrUnderflow, and iErrStrUnknown.

00392     {
00393     CCoeEnv::Static()->ReadResource(iErrStrNotFound,
00394         R_ISVTELINFOAPP_TELSTR_ERRNOTFOUND);
00395     CCoeEnv::Static()->ReadResource(iErrStrGeneral,
00396         R_ISVTELINFOAPP_TELSTR_ERRGENERAL);
00397     CCoeEnv::Static()->ReadResource(iErrStrCancel,
00398         R_ISVTELINFOAPP_TELSTR_ERRCANCEL);
00399     CCoeEnv::Static()->ReadResource(iErrStrNoMemory,
00400         R_ISVTELINFOAPP_TELSTR_ERRNOMEMORY);
00401     CCoeEnv::Static()->ReadResource(iErrStrNotSupported,
00402         R_ISVTELINFOAPP_TELSTR_ERRNOTSUPPORTED);
00403     CCoeEnv::Static()->ReadResource(iErrStrArgument,
00404         R_ISVTELINFOAPP_TELSTR_ERRARGUMENT);
00405     CCoeEnv::Static()->ReadResource(iErrStrTotalLossOfPrecision,
00406         R_ISVTELINFOAPP_TELSTR_ERRTOTALLOSSOFPRECISION);
00407     CCoeEnv::Static()->ReadResource(iErrStrBadHandle,
00408         R_ISVTELINFOAPP_TELSTR_ERRBADHANDLE);
00409     CCoeEnv::Static()->ReadResource(iErrStrOverflow,
00410         R_ISVTELINFOAPP_TELSTR_ERROVERFLOW);
00411     CCoeEnv::Static()->ReadResource(iErrStrUnderflow,
00412         R_ISVTELINFOAPP_TELSTR_ERRUNDERFLOW);
00413     CCoeEnv::Static()->ReadResource(iErrStrAlreadyExists,
00414         R_ISVTELINFOAPP_TELSTR_ERRALREADYEXISTS);
00415     CCoeEnv::Static()->ReadResource(iErrStrInUse,
00416         R_ISVTELINFOAPP_TELSTR_ERRINUSE);
00417     CCoeEnv::Static()->ReadResource(iErrStrServerTerminated,
00418         R_ISVTELINFOAPP_TELSTR_ERRSERVERTERMINATED);
00419     CCoeEnv::Static()->ReadResource(iErrStrServerBusy,
00420         R_ISVTELINFOAPP_TELSTR_ERRSERVERBUSY);
00421     CCoeEnv::Static()->ReadResource(iErrStrUnknown,
00422         R_ISVTELINFOAPP_TELSTR_ERRUNKNOWN);
00423     CCoeEnv::Static()->ReadResource(iErrStrCorrupt,
00424         R_ISVTELINFOAPP_TELSTR_ERRCORRUPT);
00425     CCoeEnv::Static()->ReadResource(iErrStrAccessDenied,
00426         R_ISVTELINFOAPP_TELSTR_ERRACCESSDENIED);
00427     CCoeEnv::Static()->ReadResource(iErrStrCommsLineFail,
00428         R_ISVTELINFOAPP_TELSTR_ERRCOMMSLINEFAIL);
00429     CCoeEnv::Static()->ReadResource(iErrStrTimedOut,
00430         R_ISVTELINFOAPP_TELSTR_ERRTIMEDOUT);
00431     CCoeEnv::Static()->ReadResource(iErrStrCouldNotConnect,
00432         R_ISVTELINFOAPP_TELSTR_ERRCOULDNOTCONNECT);
00433     CCoeEnv::Static()->ReadResource(iErrStrCouldNotDisconnect,
00434         R_ISVTELINFOAPP_TELSTR_ERRCOULDNOTDISCONNECT);
00435     CCoeEnv::Static()->ReadResource(iErrStrHardwareNotAvailable,
00436         R_ISVTELINFOAPP_TELSTR_ERRHARDWARENOTAVAILABLE);
00437     CCoeEnv::Static()->ReadResource(iErrStrSessionClosed,
00438         R_ISVTELINFOAPP_TELSTR_ERRSESSIONCLOSED);
00439     CCoeEnv::Static()->ReadResource(iErrStrPermissionDenied,
00440         R_ISVTELINFOAPP_TELSTR_ERRPERMISSIONDENIED);
00441     CCoeEnv::Static()->ReadResource(iErrStrDefault,
00442         R_ISVTELINFOAPP_TELSTR_ERRORDEFAULT);
00443         CCoeEnv::Static()->ReadResource(iEmuApiNotSupported,
00444             R_ISVTELINFOAPP_ERR_EMUAPINOTSUPPORTED);        
00445     }

void CIsvTelInfoAppTelephony::GeneralErrorMessage (  TInt  aStatus,
TBuf16< KMaxErrMsgSize > *  aErrMsgBuffer
) 
 

Finds the system wide error.

Parameters:
aStatus The system wide error.
aErrMsgBuffer The buffer containing the error message.

Definition at line 453 of file IsvTelInfoAppTelephony.cpp.

References iErrStrNotFound.

00455     {
00456     switch( aStatus )
00457         {
00458         case KErrNotFound:
00459             {
00460             (*aErrMsgBuffer).Copy(iErrStrNotFound);
00461             }
00462             break;
00463         case KErrGeneral:
00464             {    
00465             (*aErrMsgBuffer).Copy(iErrStrGeneral);
00466             }
00467             break;
00468         case KErrCancel:
00469             {
00470             (*aErrMsgBuffer).Copy(iErrStrCancel);
00471             }
00472             break;
00473         case KErrNoMemory:
00474             {
00475             (*aErrMsgBuffer).Copy(iErrStrNoMemory);
00476             }
00477             break;
00478         case KErrNotSupported:
00479             {
00480             (*aErrMsgBuffer).Copy(iErrStrNotSupported);
00481             }
00482             break;
00483         case KErrArgument:
00484             {
00485             (*aErrMsgBuffer).Copy(iErrStrArgument);
00486             }
00487             break;
00488         case KErrTotalLossOfPrecision:
00489             {
00490             (*aErrMsgBuffer).Copy(iErrStrTotalLossOfPrecision);
00491             }
00492             break;
00493         case KErrBadHandle:
00494             {
00495             (*aErrMsgBuffer).Copy(iErrStrBadHandle);
00496             }
00497             break;
00498         case KErrOverflow:
00499             {
00500             (*aErrMsgBuffer).Copy(iErrStrOverflow);
00501             }
00502             break;
00503         case KErrUnderflow:
00504             {
00505             (*aErrMsgBuffer).Copy(iErrStrUnderflow);
00506             }
00507             break;
00508         case KErrAlreadyExists:
00509             {
00510             (*aErrMsgBuffer).Copy(iErrStrAlreadyExists);
00511             }
00512             break;
00513         case KErrInUse:
00514             {
00515             (*aErrMsgBuffer).Copy(iErrStrInUse);
00516             }
00517             break;
00518         case KErrServerTerminated:
00519             {
00520             (*aErrMsgBuffer).Copy(iErrStrServerTerminated);
00521             }
00522             break;
00523         case KErrServerBusy:
00524             {
00525             (*aErrMsgBuffer).Copy(iErrStrServerBusy);
00526             }
00527             break;
00528         case KErrUnknown:
00529             {
00530             (*aErrMsgBuffer).Copy(iErrStrUnknown);
00531             }
00532             break;
00533         case KErrCorrupt:
00534             {
00535             (*aErrMsgBuffer).Copy(iErrStrCorrupt);
00536             }
00537             break;
00538         case KErrAccessDenied:
00539             {
00540             (*aErrMsgBuffer).Copy(iErrStrAccessDenied);
00541             }
00542             break;
00543         case KErrCommsLineFail:
00544             {
00545             (*aErrMsgBuffer).Copy(iErrStrCommsLineFail);
00546             }
00547             break;
00548         case KErrTimedOut:
00549             {
00550             (*aErrMsgBuffer).Copy(iErrStrTimedOut);
00551             }
00552             break;
00553         case KErrCouldNotConnect:
00554             {
00555             (*aErrMsgBuffer).Copy(iErrStrCouldNotConnect);
00556             }
00557             break;
00558         case KErrCouldNotDisconnect:
00559             {
00560             (*aErrMsgBuffer).Copy(iErrStrCouldNotDisconnect);
00561             }
00562             break;
00563         case KErrHardwareNotAvailable:
00564             {
00565             (*aErrMsgBuffer).Copy(iErrStrHardwareNotAvailable);
00566             }
00567             break;
00568         case KErrSessionClosed:
00569             {
00570             (*aErrMsgBuffer).Copy(iErrStrSessionClosed);
00571             }
00572             break;
00573         case KErrPermissionDenied:
00574             {
00575             (*aErrMsgBuffer).Copy(iErrStrPermissionDenied);
00576             }
00577             break;
00578         default:
00579             {
00580             (*aErrMsgBuffer).Copy(iErrStrDefault);
00581             }
00582             break;
00583         }
00584     }

void CIsvTelInfoAppTelephony::StartWait (   ) 
 

Starts the active scheduler wait after testing if it is already started

Definition at line 379 of file IsvTelInfoAppTelephony.cpp.

References iWait.

00380     {
00381     if ( iWait.IsStarted() != (TInt)ETrue )
00382         {
00383         iWait.Start();
00384         }
00385     }

void CIsvTelInfoAppTelephony::RunL (   )  [protected]
 

From CActive, RunL. Handles the active object’s request completion event

Definition at line 58 of file IsvTelInfoAppTelephony.cpp.

References EAsyncEvent, EGetBarringStatus, EGetIdentityStatus, EGetPhoneId, EGetSubscriberId, EGetWaitingStatus, ENwRegistrationStatus, GeneralErrorMessage(), MIsvTelInfoAppTelephonyNotify::GetBarringStatusApiCompleteL(), MIsvTelInfoAppTelephonyNotify::GetIdentityServiceStatusApiCompleteL(), MIsvTelInfoAppTelephonyNotify::GetNwRegistrationStatusApiCompleteL(), MIsvTelInfoAppTelephonyNotify::GetPhoneIdApiCompleteL(), MIsvTelInfoAppTelephonyNotify::GetSubscriberIdApiCompleteL(), MIsvTelInfoAppTelephonyNotify::GetWaitingStatusApiCompleteL(), iBarringCondition, iCallBarringServices, iCallWaitingServices, iIdentityService, iIdentityServiceType, iNotify, iNwRegistrationStatus, iPhoneId, iSubscriberId, iTelApiCmd, and iWait.

00059     {
00060     if ( iTelApiCmd != EAsyncEvent ) 
00061         {
00062             iWait.AsyncStop();
00063         }
00064 
00065     TBuf16<KMaxErrMsgSize> errMsgBuffer;
00066     
00067     //Find the type of error message and store in errMsgBuffer.
00068         GeneralErrorMessage( iStatus.Int(), &errMsgBuffer );
00069    
00070     //Based on the command, invoke the appropriate "command complete" routines
00071     //in the notify-object.
00072     switch( iTelApiCmd )
00073         {
00074         case EGetPhoneId :
00075             {
00076             iNotify.GetPhoneIdApiCompleteL( iStatus.Int(), iPhoneId, errMsgBuffer );
00077             }
00078             break;
00079         
00080         case EGetSubscriberId :
00081             {
00082             iNotify.GetSubscriberIdApiCompleteL( iStatus.Int(), 
00083                 iSubscriberId, 
00084                 errMsgBuffer );
00085             }
00086             break;
00087 
00088         case ENwRegistrationStatus :
00089             {
00090             iNotify.GetNwRegistrationStatusApiCompleteL( iStatus.Int(),
00091                 iNwRegistrationStatus, errMsgBuffer );
00092             }
00093             break;
00094 
00095         case EGetBarringStatus :
00096             {
00097             iNotify.GetBarringStatusApiCompleteL( iStatus.Int(),
00098                 iBarringCondition, 
00099                 iCallBarringServices, 
00100                 errMsgBuffer );
00101             }
00102             break;
00103         
00104        case EGetWaitingStatus :
00105             {
00106             iNotify.GetWaitingStatusApiCompleteL( iStatus.Int(), 
00107                 iCallWaitingServices, 
00108                 errMsgBuffer );
00109             }
00110             break;
00111                 
00112        case EGetIdentityStatus :
00113             {
00114             iNotify.GetIdentityServiceStatusApiCompleteL( iStatus.Int(),
00115                 iIdentityServiceType, 
00116                 iIdentityService, 
00117                 errMsgBuffer );
00118             }
00119             break;
00120 
00121       default :
00122             break;
00123         }
00124     return;
00125     }

void CIsvTelInfoAppTelephony::DoCancel (   )  [protected]
 

From CActive, DoCancel. Implements cancellation of an outstanding request.

Definition at line 132 of file IsvTelInfoAppTelephony.cpp.

References EGetPhoneId, and iTel.

00133     {
00134     //Based on the command, invoke the appropriate CancelAsync APIs
00135     switch( iTelApiCmd )
00136         {
00137         case EGetPhoneId : 
00138             {
00139             iTel->CancelAsync( CTelephony::EGetPhoneIdCancel );
00140             }    
00141             break;
00142             
00143         case EGetSubscriberId : 
00144             {
00145             iTel->CancelAsync( CTelephony::EGetSubscriberIdCancel );
00146             }    
00147             break;
00148             
00149         case EGetBarringStatus :
00150             {
00151             iTel->CancelAsync( CTelephony::EGetCallBarringStatusCancel );
00152             }
00153             break;
00154         
00155         case EGetWaitingStatus :
00156             {
00157             iTel->CancelAsync( CTelephony::EGetCallWaitingStatusCancel );
00158             }
00159             break;
00160         
00161         case EGetIdentityStatus :
00162             {
00163             iTel->CancelAsync( CTelephony::EGetIdentityServiceStatusCancel );
00164             }
00165             break;
00166 
00167         default :
00168             break;
00169         }
00170     }


© Nokia 2006

Back to top