CGetSupplementaryServiceStatusAct Class Reference

class CGetSupplementaryServiceStatusAct : public CAsyncRequestBaseAct

This is an active object responsible for interacting with Multimode ETel

Inherits from

Public Member Functions
~CGetSupplementaryServiceStatusAct()
TInt GetCBSupplementaryServiceStatus(const CTelephony::TCallBarringCondition, TDes8 &, const CTelephony::TServiceGroup)
TInt GetCFSupplementaryServiceStatus(const CTelephony::TCallForwardingCondition, TDes8 &, const CTelephony::TServiceGroup)
TInt GetCWSupplementaryServiceStatus(TDes8 &, const CTelephony::TServiceGroup)
CGetSupplementaryServiceStatusAct *NewL(CTelephonyFunctions *)
Protected Member Functions
voidComplete()
voidDoCancel()
TInt RunError(TInt)
Private Member Functions
CGetSupplementaryServiceStatusAct(CTelephonyFunctions *)
CTelephony::TSupplServiceStatus GetCBSupplServiceStatus(RMobilePhone::TMobilePhoneCBStatus)
CTelephony::TSupplServiceStatus GetCFSupplServiceStatus(RMobilePhone::TMobilePhoneCFStatus)
CTelephony::TSupplServiceStatus GetCWSupplServiceStatus(RMobilePhone::TMobilePhoneCWStatus)
RMobilePhone::TMobilePhoneCBCondition GetMobileCBCondition(const CTelephony::TCallBarringCondition)
RMobilePhone::TMobilePhoneCFCondition GetMobileCFCondition(const CTelephony::TCallForwardingCondition)
RMobilePhone::TMobileService GetMobileServiceGroup(const CTelephony::TServiceGroup)
voidResolveCBListL()
voidResolveCFListL()
voidResolveCWListL()
Inherited Functions
CActive::CActive(TInt)
CActive::Cancel()
CActive::Deque()
CActive::Extension_(TUint,TAny *&,TAny *)
CActive::IsActive()const
CActive::IsAdded()const
CActive::Priority()const
CActive::SetActive()
CActive::SetPriority(TInt)
CActive::~CActive()
CAsyncRequestBaseAct::CAsyncRequestBaseAct()
CAsyncRequestBaseAct::RunL()
CAsyncRequestBaseAct::~CAsyncRequestBaseAct()
CBase::CBase()
CBase::Delete(CBase *)
CBase::operator new(TUint)
CBase::operator new(TUint,TAny *)
CBase::operator new(TUint,TLeave)
CBase::operator new(TUint,TLeave,TUint)
CBase::operator new(TUint,TUint)
CBase::~CBase()
Inherited Enumerations
CActive:TPriority
Private Attributes
CTelephony::TCallBarringCondition iCBCondition
CTelephony::TCallForwardingCondition iCFCondition
CRetrieveMobilePhoneCBList *iGetCBList
CRetrieveMobilePhoneCFList *iGetCFList
CRetrieveMobilePhoneCWList *iGetCWList
CTelephony::TCallBarringSupplServicesV1 *iISVCBInfo
CTelephony::TCallForwardingSupplServicesV1 *iISVCFInfo
CTelephony::TCallWaitingSupplServicesV1 *iISVCWInfo
CTelephonyFunctions::TOperations iISVSSType
RMobilePhone::TMobilePhoneCBCondition iMobileCBCondition
RMobilePhone::TMobilePhoneCFCondition iMobileCFCondition
RMobilePhone::TMobileService iServiceGroup
CTelephonyFunctions *iTelephonyFunctions
Inherited Attributes
CActive::iStatus

Constructor & Destructor Documentation

CGetSupplementaryServiceStatusAct(CTelephonyFunctions *)

CGetSupplementaryServiceStatusAct(CTelephonyFunctions *aTelephonyFunctions)[private]

First-phase constructor which cannot Leave().

Parameters

CTelephonyFunctions * aTelephonyFunctionsObject that constructs us.

~CGetSupplementaryServiceStatusAct()

~CGetSupplementaryServiceStatusAct()

Destructor

Member Functions Documentation

Complete()

voidComplete()[protected, virtual]

Service Completed request.

DoCancel()

voidDoCancel()[protected, virtual]

Cancel request.

Async request to be cancelled.

GetCBSupplServiceStatus(RMobilePhone::TMobilePhoneCBStatus)

CTelephony::TSupplServiceStatus GetCBSupplServiceStatus(RMobilePhone::TMobilePhoneCBStatusaStatus)[private]

GetCBSupplementaryServiceStatus(const CTelephony::TCallBarringCondition, TDes8 &, const CTelephony::TServiceGroup)

TInt GetCBSupplementaryServiceStatus(const CTelephony::TCallBarringConditionaCondition,
TDes8 &aId,
const CTelephony::TServiceGroupaServiceGroup
)

Issue Request

Parameters

const CTelephony::TCallBarringCondition aCondition
TDes8 & aId
const CTelephony::TServiceGroup aServiceGroup

GetCFSupplServiceStatus(RMobilePhone::TMobilePhoneCFStatus)

CTelephony::TSupplServiceStatus GetCFSupplServiceStatus(RMobilePhone::TMobilePhoneCFStatusaStatus)[private]

GetCFSupplementaryServiceStatus(const CTelephony::TCallForwardingCondition, TDes8 &, const CTelephony::TServiceGroup)

TInt GetCFSupplementaryServiceStatus(const CTelephony::TCallForwardingConditionaCondition,
TDes8 &aId,
const CTelephony::TServiceGroupaServiceGroup
)

Issue Request

Parameters

const CTelephony::TCallForwardingCondition aCondition
TDes8 & aId
const CTelephony::TServiceGroup aServiceGroup

GetCWSupplServiceStatus(RMobilePhone::TMobilePhoneCWStatus)

CTelephony::TSupplServiceStatus GetCWSupplServiceStatus(RMobilePhone::TMobilePhoneCWStatusaStatus)[private]

GetCWSupplementaryServiceStatus(TDes8 &, const CTelephony::TServiceGroup)

TInt GetCWSupplementaryServiceStatus(TDes8 &aId,
const CTelephony::TServiceGroupaServiceGroup
)

Issue Request

Parameters

TDes8 & aId
const CTelephony::TServiceGroup aServiceGroup

GetMobileCBCondition(const CTelephony::TCallBarringCondition)

RMobilePhone::TMobilePhoneCBCondition GetMobileCBCondition(const CTelephony::TCallBarringConditionaCBCondition)const [private]

Parameters

const CTelephony::TCallBarringCondition aCBCondition

GetMobileCFCondition(const CTelephony::TCallForwardingCondition)

RMobilePhone::TMobilePhoneCFCondition GetMobileCFCondition(const CTelephony::TCallForwardingConditionaCFCondition)const [private]

Parameters

const CTelephony::TCallForwardingCondition aCFCondition

GetMobileServiceGroup(const CTelephony::TServiceGroup)

RMobilePhone::TMobileService GetMobileServiceGroup(const CTelephony::TServiceGroupaServiceGroup)[private]

Parameters

const CTelephony::TServiceGroup aServiceGroup

NewL(CTelephonyFunctions *)

CGetSupplementaryServiceStatusAct *NewL(CTelephonyFunctions *aTelephonyFunctions)[static]

Public constructor which can Leave().

leave
Leaves if no memory.

Parameters

CTelephonyFunctions * aTelephonyFunctionsObject that constructs us.

ResolveCBListL()

voidResolveCBListL()[private]

Resolve the CB list. The CB list only contains conditions that are active for a particular service group. We want to know the status for a specific service group AND CB condition.

The following scenarios are covered.

1.We do not successfully retrieve the list. If this is true then return the status as EUnknown. 2.An entry has the same service group OR is EAllServices AND the same CB condition as requested. If this is true then return the status of the entry. 3.An entry has the same service group OR is EAllServices AND the entry condition is EAllOutgoingServices. If the requested CB condition was either EBarAllOutgoing, EBarOutgoingInternational or EBarOutgoingInternationalExHC then return the status of the entry. 4.An entry has the same service group OR is EAllServices AND the entry condition is EAllIncomingServices. If the requested CB condition was either EBarAllIncoming or EBarIncomingRoaming then return the status of the entry. 5.Default case return the status as ENotActive.

ResolveCFListL()

voidResolveCFListL()[private]

Resolve the CF list. The CF list should contain an entry for each condition of a particular service group regardless of whether the status is active or inactive.. We want to know the status for a specific service group AND CF condition.

The following scenarios are covered.

1.We do not successfully retrieve the list. If this is true then return the status as EUnknown. 2.An entry has the the same service group OR is EAllServices AND the same CF condition as requested. If this is true then return the status of the entry. 3.An entry has the the same service group OR is EAllServices AND the entry condition is ECallForwardingAllCases. If this is true then return the status of the entry. 4.An entry has the the same service group OR is EAllServices AND the entry condition is ECallForwardingAllConditionalCases. If the requested CF condition was either ECallForwardingBusy, ECallForwardingNoReply or ECallForwardingNotReachable then return the status of the entry.

ResolveCWListL()

voidResolveCWListL()[private]

Resolve the CB list. The CB list only entries for active status's for a particular service group. We want to know the status for a specific service group.

There are four scenarios to cover.

1.We do not successfully retrieve the list. If this is true we shall set the status as EUnknown. 2.An entry in the list matches the requested service group. If this is true we return the status as defined in the entry. 3.An entry in the list has the EAllServices service group. If this is true we return the status as defined in the entry. 4.Default case: return the status as ENotActive.

RunError(TInt)

TInt RunError(TIntaLeaveCode)[protected, virtual]

Handle any Leave() from inside RunL().

Parameters

TInt aLeaveCodepassed in if RunL Leaves.

Member Data Documentation

CTelephony::TCallBarringCondition iCBCondition

CTelephony::TCallBarringCondition iCBCondition[private]

CTelephony::TCallForwardingCondition iCFCondition

CTelephony::TCallForwardingCondition iCFCondition[private]

CRetrieveMobilePhoneCBList * iGetCBList

CRetrieveMobilePhoneCBList *iGetCBList[private]

CRetrieveMobilePhoneCFList * iGetCFList

CRetrieveMobilePhoneCFList *iGetCFList[private]

CRetrieveMobilePhoneCWList * iGetCWList

CRetrieveMobilePhoneCWList *iGetCWList[private]

CTelephony::TCallBarringSupplServicesV1 * iISVCBInfo

CTelephony::TCallBarringSupplServicesV1 *iISVCBInfo[private]

CTelephony::TCallForwardingSupplServicesV1 * iISVCFInfo

CTelephony::TCallForwardingSupplServicesV1 *iISVCFInfo[private]

CTelephony::TCallWaitingSupplServicesV1 * iISVCWInfo

CTelephony::TCallWaitingSupplServicesV1 *iISVCWInfo[private]

CTelephonyFunctions::TOperations iISVSSType

CTelephonyFunctions::TOperations iISVSSType[private]

RMobilePhone::TMobilePhoneCBCondition iMobileCBCondition

RMobilePhone::TMobilePhoneCBCondition iMobileCBCondition[private]

RMobilePhone::TMobilePhoneCFCondition iMobileCFCondition

RMobilePhone::TMobilePhoneCFCondition iMobileCFCondition[private]

RMobilePhone::TMobileService iServiceGroup

RMobilePhone::TMobileService iServiceGroup[private]

CTelephonyFunctions * iTelephonyFunctions

CTelephonyFunctions *iTelephonyFunctions[private]