00001 /* 00002 * ============================================================================ 00003 * Name : ApUtils.h 00004 * Part of : Access Point Engine 00005 * 00006 * Description: Declaration of the class CApUtils 00007 * Contains utility functions for access point handling 00008 * Version: 00009 * 00010 * Copyright (C) 2002 Nokia Corporation. 00011 * This material, including documentation and any related 00012 * computer programs, is protected by copyright controlled by 00013 * Nokia Corporation. All rights are reserved. Copying, 00014 * including reproducing, storing, adapting or translating, any 00015 * or all of this material requires the prior written consent of 00016 * Nokia Corporation. This material also contains confidential 00017 * information which may not be disclosed to others without the 00018 * prior written consent of Nokia Corporation. 00019 * 00020 * ============================================================================ 00021 */ 00022 00023 #ifndef APUTILS_H 00024 #define APUTILS_H 00025 00026 // INCLUDES 00027 #include <commdb.h> 00028 #include <ApEngineVer.h> 00029 #include <ApEngineConsts.h> 00030 00031 00032 00033 // extra data holder. 00034 typedef struct 00035 { 00036 TInt iVariant; 00037 TBool iWlanSupported; 00038 TBool iIsFeatureManagerInitialised; 00039 }TUtilsExtra; 00040 00041 00042 // CLASS DECLARATION 00043 00053 class CApUtils :public CBase 00054 { 00055 public: // Constructors and destructor 00056 00064 IMPORT_C static CApUtils* NewLC( CCommsDatabase& aDb ); 00065 00066 00071 IMPORT_C virtual ~CApUtils(); 00072 00073 00074 protected: // Constructors 00079 IMPORT_C CApUtils(); 00080 00085 IMPORT_C void ConstructL( CCommsDatabase& aDb ); 00086 00087 00088 00089 00090 public: // New functions 00091 00099 IMPORT_C TBool IsAPInUseL( TUint32 aUid ); 00100 00101 00115 IMPORT_C void WapBearerTypeL( TUint32 aUid, TDes& aBearer ); 00116 00117 00124 IMPORT_C TApBearerType BearerTypeL( TUint32 aUid ); 00125 00126 00127 00135 IMPORT_C void ISPTypeL( TUint32 aUid, TCommsDbIspType& aIspType ); 00136 00143 IMPORT_C TBool IsValidNameL( const TDesC& aNameText ); 00144 00145 00154 IMPORT_C TBool MakeValidNameL( TDes& aNameText ); 00155 00156 00166 IMPORT_C void NameL( TUint32 aUid, TDes& aName ); 00167 00168 00179 IMPORT_C void SetNameL( TDes& aName, TUint32 aUid ); 00180 00181 00189 IMPORT_C void SetISPTypeL( TUint32 aUid, TCommsDbIspType aIspType ); 00190 00191 00198 IMPORT_C TUint32 IapIdFromWapIdL( TUint32 aUid ); 00199 00200 00207 IMPORT_C TUint32 WapIdFromIapIdL( TUint32 aUid ); 00208 00209 00210 00220 IMPORT_C TBool HasMandatoryFieldsFilledL( TUint32 aUid ); 00221 00231 IMPORT_C TBool IAPExistsL( TUint32 aUid ); 00232 00241 IMPORT_C TBool WapApExistsL( TUint32 aUid ); 00242 00250 IMPORT_C TBool DoHasMandatoryFieldsFilledL( 00251 TUint32 aUid, 00252 CCommsDbTableView* aWapt = NULL, 00253 TApBearerType aBearertype = EApBearerTypeAllBearers ); 00254 00255 00264 IMPORT_C TBool IsValidNameL( const TDesC& aNameText, 00265 TUint32 aAcceptUid ); 00266 00267 00274 IMPORT_C TBool IsReadOnlyL( TUint32 aUid ); 00275 00276 00277 00284 TBool IsWlanL( TUint32 aLanCommdbId ); 00285 00286 00287 00288 00296 TBool HasWlanSSIDL( TUint32 aLanCommdbId ); 00297 00298 protected: 00299 00300 00313 void DoWapBearerTypeL( TUint32 aUid, TDes& aBearer ); 00314 00315 00321 TApBearerType DoBearerTypeL( TUint32 aUid ); 00322 00323 00330 void DoISPTypeL( TUint32 aUid, TCommsDbIspType& aIspType ); 00331 00332 00341 void DoNameL( TUint32 aUid, TDes& aName ); 00342 00343 00353 void DoSetNameL( TDes& aName, TUint32 aUid ); 00354 00355 00362 void DoSetISPTypeL( TUint32 aUid, TCommsDbIspType aIspType ); 00363 00364 00374 TBool DoesExistsL( TPtrC aTable, TUint32 aUid ); 00375 00376 00384 TBool DoIsWlanL( TUint32 aLanCommdbId ); 00385 00386 00387 private: // Data 00388 CCommsDatabase* iDb; 00389 // TCommDbDatabaseType iDbType; // deprecated and not used but kept 00390 // to maintain class size for BC 00391 // Added a new iExt for expansion instead of TCommDbDatabaseType 00392 // same size, no BC problem... 00393 TUtilsExtra* iExt; 00394 00395 00396 }; 00397 00398 // APUTILS_H 00399 #endif 00400 00401 // End of File