24
|
1 |
/*
|
|
2 |
* Copyright (c) 2009 Sony Ericsson Mobile Communications AB
|
|
3 |
* All rights reserved.
|
|
4 |
* This component and the accompanying materials are made available
|
|
5 |
* under the terms of "Eclipse Public License v1.0"
|
|
6 |
* which accompanies this distribution, and is available
|
|
7 |
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
|
|
8 |
*
|
|
9 |
* Initial Contributors:
|
|
10 |
* Sony Ericsson Mobile Communications AB - initial contribution.
|
|
11 |
* Nokia Corporation - additional changes.
|
|
12 |
*
|
|
13 |
* Contributors:
|
|
14 |
*
|
|
15 |
* Description:
|
|
16 |
* TelephonyActSupplServices Active Object class, used by CTelephonyFunctions class.
|
|
17 |
*
|
|
18 |
*/
|
|
19 |
|
|
20 |
|
|
21 |
/**
|
|
22 |
@file
|
|
23 |
*/
|
|
24 |
|
|
25 |
#include <etel.h>
|
|
26 |
#include <etelmm.h>
|
|
27 |
#include <mmretrieve.h>
|
|
28 |
#include "Etel3rdParty.h"
|
|
29 |
|
|
30 |
class CTelephony;
|
|
31 |
class CTelephonyFunctions; // forward reference
|
|
32 |
class CAsyncRequestBaseAct;
|
|
33 |
|
|
34 |
|
|
35 |
class CGetSupplementaryServiceStatusAct : public CAsyncRequestBaseAct
|
|
36 |
/**
|
|
37 |
This is an active object responsible for interacting with Multimode ETel
|
|
38 |
*/
|
|
39 |
{
|
|
40 |
public:
|
|
41 |
static CGetSupplementaryServiceStatusAct* NewL(CTelephonyFunctions* aTelephonyFunctions);
|
|
42 |
~CGetSupplementaryServiceStatusAct();
|
|
43 |
TInt GetCFSupplementaryServiceStatus(const CTelephony::TCallForwardingCondition aCondition, TDes8& aId, const CTelephony::TServiceGroup aServiceGroup);
|
|
44 |
TInt GetCBSupplementaryServiceStatus(const CTelephony::TCallBarringCondition aCondition, TDes8& aId, const CTelephony::TServiceGroup aServiceGroup);
|
|
45 |
TInt GetCWSupplementaryServiceStatus(TDes8& aId, const CTelephony::TServiceGroup aServiceGroup);
|
|
46 |
|
|
47 |
protected:
|
|
48 |
void Complete();
|
|
49 |
TInt RunError(TInt aLeaveCode);
|
|
50 |
void DoCancel();
|
|
51 |
|
|
52 |
private:
|
|
53 |
CGetSupplementaryServiceStatusAct(CTelephonyFunctions* aTelephonyFunctions);
|
|
54 |
RMobilePhone::TMobilePhoneCBCondition GetMobileCBCondition(const CTelephony::TCallBarringCondition aCBCondition) const;
|
|
55 |
RMobilePhone::TMobilePhoneCFCondition GetMobileCFCondition(const CTelephony::TCallForwardingCondition aCFCondition) const;
|
|
56 |
RMobilePhone::TMobileService GetMobileServiceGroup( const CTelephony::TServiceGroup aServiceGroup);
|
|
57 |
void ResolveCBListL();
|
|
58 |
void ResolveCFListL();
|
|
59 |
void ResolveCWListL();
|
|
60 |
CTelephony::TSupplServiceStatus GetCBSupplServiceStatus(RMobilePhone::TMobilePhoneCBStatus aStatus);
|
|
61 |
CTelephony::TSupplServiceStatus GetCFSupplServiceStatus(RMobilePhone::TMobilePhoneCFStatus aStatus);
|
|
62 |
CTelephony::TSupplServiceStatus GetCWSupplServiceStatus(RMobilePhone::TMobilePhoneCWStatus aStatus);
|
|
63 |
private:
|
|
64 |
CTelephonyFunctions* iTelephonyFunctions;
|
|
65 |
|
|
66 |
CRetrieveMobilePhoneCFList* iGetCFList;
|
|
67 |
CRetrieveMobilePhoneCBList* iGetCBList;
|
|
68 |
CRetrieveMobilePhoneCWList* iGetCWList;
|
|
69 |
|
|
70 |
CTelephonyFunctions::TOperations iISVSSType;
|
|
71 |
RMobilePhone::TMobileService iServiceGroup;
|
|
72 |
RMobilePhone::TMobilePhoneCBCondition iMobileCBCondition;
|
|
73 |
RMobilePhone::TMobilePhoneCFCondition iMobileCFCondition;
|
|
74 |
|
|
75 |
CTelephony::TCallBarringCondition iCBCondition;
|
|
76 |
CTelephony::TCallForwardingCondition iCFCondition;
|
|
77 |
|
|
78 |
CTelephony::TCallForwardingSupplServicesV1* iISVCFInfo;
|
|
79 |
CTelephony::TCallBarringSupplServicesV1* iISVCBInfo;
|
|
80 |
CTelephony::TCallWaitingSupplServicesV1* iISVCWInfo;
|
|
81 |
};
|
|
82 |
|
|
83 |
class CGetIdentityServiceStatusAct : public CAsyncRequestBaseAct
|
|
84 |
/**
|
|
85 |
This is an active object responsible for interacting with Multimode ETel
|
|
86 |
*/
|
|
87 |
{
|
|
88 |
|
|
89 |
public:
|
|
90 |
static CGetIdentityServiceStatusAct* NewL(CTelephonyFunctions* aTelephonyFunctions);
|
|
91 |
~CGetIdentityServiceStatusAct();
|
|
92 |
void GetIdentityServiceStatus(const CTelephony::TIdentityService aService, TDes8& aId);
|
|
93 |
|
|
94 |
protected:
|
|
95 |
void Complete();
|
|
96 |
TInt RunError(TInt aLeaveCode);
|
|
97 |
void DoCancel();
|
|
98 |
|
|
99 |
private:
|
|
100 |
CGetIdentityServiceStatusAct(CTelephonyFunctions* aTelephonyFunctions);
|
|
101 |
CTelephonyFunctions* iTelephonyFunctions;
|
|
102 |
|
|
103 |
CTelephony::TIdentityServiceV1* iISVServiceStatus;
|
|
104 |
|
|
105 |
RMobilePhone::TMobilePhoneIdService iMMService;
|
|
106 |
RMobilePhone::TMobilePhoneIdServiceStatus iMMServiceStatus;
|
|
107 |
};
|