diff -r 75a71fdb4c92 -r 7d11f9a6646f omadm/omadmextensions/adapters/globalwlansettings/inc/globalwlanadapter.h --- a/omadm/omadmextensions/adapters/globalwlansettings/inc/globalwlanadapter.h Tue Feb 02 00:03:17 2010 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,392 +0,0 @@ -/* -* Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Global WLAN settings adapter -* -*/ - - - -#ifndef __GLOBALWLANADAPTER_H__ -#define __GLOBALWLANADAPTER_H__ - - -// ----------------------------------------------------------------------------------------------- -// Includes -// ----------------------------------------------------------------------------------------------- -#include -#include -#include -#include -#include - - -// ----------------------------------------------------------------------------------------------- -// Constants -// ----------------------------------------------------------------------------------------------- - -// The nodes of the DDF structure -_LIT8( KNSmlWLan, "WLAN" ); -_LIT8( KNSmlWLanInternetConnectivityTest, "InternetConnectivityTest" ); -_LIT8( KNSmlWLanUseDefaultSettings, "UseDefaultSettings" ); -_LIT8( KNSmlWLanLongRetryLimit, "LongRetryLimit" ); -_LIT8( KNSmlWLanShortRetryLimit, "ShortRetryLimit" ); -_LIT8( KNSmlWLanRTSThreshold, "RTSThreshold" ); -_LIT8( KNSmlWLanTXPowerLevel, "TXPowerLevel" ); -_LIT8( KNSmlWLanPowerSaving, "PowerSaving" ); -_LIT8( KNSmlWLanBackgroundScanInterval, "BackgroundScanInterval" ); -_LIT8( KNSmlWLanScanRate, "ScanRate" ); -_LIT8( KNSmlWLanRCPITrigger, "RCPITrigger" ); -_LIT8( KNSmlWLanMinActiveChannelTime, "MinActiveChannelTime" ); -_LIT8( KNSmlWLanMaxActiveChannelTime, "MaxActiveChannelTime" ); -_LIT8( KNSmlWLanMaxTxMSDULifeTime, "MaxTxMSDULifeTime" ); -_LIT8( KNSmlWLanScanExpirationTimer, "ScanExpirationTimer" ); -_LIT8( KNSmlWLanUnloadDriverTimer, "UnloadDriverTimer" ); -_LIT8( KNSmlWLanRoamTimer, "RoamTimer" ); -_LIT8( KNSmlWLanRCPIDifference, "RCPIDifference" ); -_LIT8( KNSmlWLanConnRegainTimer, "ConnRegainTimer" ); -_LIT8( KNSmlWLanMaxTriesToFindNw, "MaxTriesToFindNw" ); -_LIT8( KNSmlWLanDelayBetweenFindNw, "DelayBetweenFindNw" ); -_LIT8( KNSmlWLanAllowRadioMeasurements, "AllowRadioMeasurements" ); -_LIT8( KNSmlWLanMinPassiveChannelTime, "MinPassiveChannelTime" ); -_LIT8( KNSmlWLanMaxPassiveChannelTime, "MaxPassiveChannelTime" ); -_LIT8( KNSmlWLanMaxApFailureCount, "MaxApFailureCount" ); -_LIT8( KNSmlWLanLongBeaconFindCount, "LongBeaconFindCount" ); -_LIT8( KNSmlWLanQosNullFrameInterval, "QosNullFrameInterval" ); -_LIT8( KNSmlWLanQosNullFrameTimeout, "QosNullFrameTimeout" ); -_LIT8( KNSmlWLanMTU, "MTU" ); -_LIT8( KNSmlWLanNode, "InternetConnectivityTest/UseDefaultSettings/LongRetryLimit/ShortRetryLimit/RTSThreshold/TXPowerLevel/PowerSaving/BackgroundScanInterval/ScanRate/RCPITrigger/MinActiveChannelTime/MaxActiveChannelTime/MaxTxMSDULifeTime/ScanExpirationTimer/UnloadDriverTimer/RoamTimer/RCPIDifference/ConnRegainTimer/MaxTriesToFindNw/DelayBetweenFindNw/AllowRadioMeasurements/MinPassiveChannelTime/MaxApFailureCount/LongBeaconFindCount/QosNullFrameInterval/QosNullFrameTimeout" ); - -//DDF version number -_LIT8( KNSmGlobalWlanAdapterDDFversion, "1.0"); -_LIT8( KNSmlMimeType, "text/plain" ); -_LIT8( KNSmlEmpty, ""); - - -const TInt KUriSegListLength = 128; -// Maximum input size for nodes -const TInt KInputMaxLength = 50; -// Max lenght of the DDF type -const TInt KTypeMaxLength = 40; -// Repository id -const TUid KCRUidWlanDeviceSettingsRegistryId = {0x101f8e44}; - - -// WLan engine central repository parameters -const TUint32 KWlanScanRate = 0x00000004; -const TUint32 KWlanRcpiTrigger = 0x00000005; -const TUint32 KWlanMinActiveChannelTime = 0x00000006; -const TUint32 KWlanMaxActiveChannelTime = 0x00000007; -const TUint32 KWlanMaxTxMSDULifeTime = 0x00000008; -const TUint32 KWlanScanExpirationTimer = 0x00000009; -const TUint32 KWlanUnloadDriverTimer = 0x0000000A; -const TUint32 KWlanRoamTimer = 0x0000000B; -const TUint32 KWlanRcpiDifference = 0x0000000C; -const TUint32 KWlanConnRegainTimer = 0x0000000D; -const TUint32 KWlanMaxTriesToFindNw = 0x0000000E; -const TUint32 KWlanDelayBetweenFindNw = 0x0000000F; -const TUint32 KWlanMTU = 0x00000010; -const TUint32 KWlanMinPassiveChannelTime = 0x00000011; -const TUint32 KWlanMaxPassiveChannelTime = 0x00000012; -const TUint32 KWlanMaxApFailureCount = 0x00000013; -const TUint32 KWlanLongBeaconFindCount = 0x00000014; -const TUint32 KWlanQosNullFrameInterval = 0x00000015; -const TUint32 KWlanQosNullFrameTimeout = 0x00000016; - -// ----------------------------------------------------------------------------------------------- -// Structures -// ----------------------------------------------------------------------------------------------- - -// Structure for storing the settings to be stored into cenrep and commsdb -struct TGlobalSettings -{ - TUint32 internetConnectivityTest; - TBool internetConnectivityTestPresent; - TBool useDefaultSettings; - TBool useDefaultSettingsPresent; - TUint32 longRetryLimit; - TBool longRetryLimitPresent; - TUint32 shortRetryLimit; - TBool shortRetryLimitPresent; - TUint32 RTSThreshold; - TBool RTSThresholdPresent; - TUint32 TXPowerLevel; - TBool TXPowerLevelPresent; - TBool powerSaving; - TBool powerSavingPresent; - TUint32 backgroundScanInterval; - TBool backgroundScanIntervalPresent; - TUint32 scanRate; - TBool scanRatePresent; - TUint32 RCPITrigger; - TBool RCPITriggerPresent; - TUint32 minActiveChannelTime; - TBool minActiveChannelTimePresent; - TUint32 maxActiveChannelTime; - TBool maxActiveChannelTimePresent; - TUint32 maxTxMSDULifeTime; - TBool maxTxMSDULifeTimePresent; - TUint32 scanExpirationTimer; - TBool scanExpirationTimerPresent; - TUint32 unloadDriverTimer; - TBool unloadDriverTimerPresent; - TUint32 roamTimer; - TBool roamTimerPresent; - TUint32 RCPIDifference; - TBool RCPIDifferencePresent; - TUint32 connRegainTimer; - TBool connRegainTimerPresent; - TUint32 maxTriesToFindNw; - TBool maxTriesToFindNwPresent; - TUint32 delayBetweenFindNw; - TBool delayBetweenFindNwPresent; - TBool allowRadioMeasurements; - TBool allowRadioMeasurementsPresent; - TUint32 minPassiveChannelTime; - TBool minPassiveChannelTimePresent; - TUint32 maxPassiveChannelTime; - TBool maxPassiveChannelTimePresent; - TUint32 maxApFailureCount; - TBool maxApFailureCountPresent; - TUint32 longBeaconFindCount; - TBool longBeaconFindCountPresent; - TUint32 qosNullFrameInterval; - TBool qosNullFrameIntervalPresent; - TUint32 qosNullFrameTimeout; - TBool qosNullFrameTimeoutPresent; - TUint32 MTU; - TBool MTUPresent; -}; - -// Structure for storing the result and status variables from every addition/fetch command -struct TStatusResult -{ - TInt internetConnectivityTestStatus; - TInt internetConnectivityTestResult; - TInt useDefaultSettingsStatus; - TInt useDefaultSettingsResult; - TInt longRetryLimitStatus; - TInt longRetryLimitResult; - TInt shortRetryLimitStatus; - TInt shortRetryLimitResult; - TInt RTSThresholdStatus; - TInt RTSThresholdResult; - TInt TXPowerLevelStatus; - TInt TXPowerLevelResult; - TInt powerSavingStatus; - TInt powerSavingResult; - TInt backgroundScanIntervalStatus; - TInt backgroundScanIntervalResult; - TInt scanRateStatus; - TInt scanRateResult; - TInt RCPITriggerStatus; - TInt RCPITriggerResult; - TInt minActiveChannelTimeStatus; - TInt minActiveChannelTimeResult; - TInt maxActiveChannelTimeStatus; - TInt maxActiveChannelTimeResult; - TInt maxTxMSDULifeTimeStatus; - TInt maxTxMSDULifeTimeResult; - TInt scanExpirationTimerStatus; - TInt scanExpirationTimerResult; - TInt unloadDriverTimerStatus; - TInt unloadDriverTimerResult; - TInt roamTimerStatus; - TInt roamTimerResult; - TInt RCPIDifferenceStatus; - TInt RCPIDifferenceResult; - TInt connRegainTimerStatus; - TInt connRegainTimerResult; - TInt maxTriesToFindNwStatus; - TInt maxTriesToFindNwResult; - TInt delayBetweenFindNwStatus; - TInt delayBetweenFindNwResult; - TInt allowRadioMeasurementsStatus; - TInt allowRadioMeasurementsResult; - TInt minPassiveChannelTimeStatus; - TInt minPassiveChannelTimeResult; - TInt maxPassiveChannelTimeStatus; - TInt maxPassiveChannelTimeResult; - TInt maxApFailureCountStatus; - TInt maxApFailureCountResult; - TInt longBeaconFindCountStatus; - TInt longBeaconFindCountResult; - TInt qosNullFrameIntervalStatus; - TInt qosNullFrameIntervalResult; - TInt qosNullFrameTimeoutStatus; - TInt qosNullFrameTimeoutResult; - TInt MTUStatus; - TInt MTUResult; -}; - - -// ----------------------------------------------------------------------------------------------- -// Enumerations -// ----------------------------------------------------------------------------------------------- - - -// ------------------------------------------------------------------------------------------------ -// CGlobalWLanAdapter -// ------------------------------------------------------------------------------------------------ -class CGlobalWLANAdapter : public CSmlDmAdapter - { -public: - static CGlobalWLANAdapter* NewL( MSmlDmCallback* aDmCallback ); - static CGlobalWLANAdapter* NewLC( MSmlDmCallback* aDmCallback ); - void ConstructL( ); - virtual ~CGlobalWLANAdapter(); - -// Adapter interface - void DDFVersionL( CBufBase& aDDFVersion ); - void DDFStructureL( MSmlDmDDFObject& aDDF ); - void AddLeafObjectL( const TDesC8& aURI, - const TDesC8& aParentLUID, - const TDesC8& aObject, - const TDesC8& aType, - const TInt aStatusRef ); - void UpdateLeafObjectL( const TDesC8& aURI, - const TDesC8& aLUID, - const TDesC8& aObject, - const TDesC8& aType, - const TInt aStatusRef ); - void UpdateLeafObjectL( const TDesC8& aURI, - const TDesC8& aLUID, - RWriteStream*& aStream, - const TDesC8& aType, - TInt aStatusRef ); - void DeleteObjectL( const TDesC8& aURI, - const TDesC8& aLUID, - const TInt aStatusRef ); - void FetchLeafObjectL( const TDesC8& aURI, - const TDesC8& aLUID, - const TDesC8& aType, - const TInt aResultsRef, - const TInt aStatusRef ); - void FetchLeafObjectSizeL( const TDesC8& aURI, - const TDesC8& aLUID, - const TDesC8& aType, - TInt aResultsRef, - TInt aStatusRef ); - void ChildURIListL( const TDesC8& aURI, - const TDesC8& aLUID, - const CArrayFix& aPreviousURISegmentList, - const TInt aResultsRef, - const TInt aStatusRef ); - void AddNodeObjectL( const TDesC8& aURI, - const TDesC8& aParentLUID, - const TInt aStatusRef ); - void ExecuteCommandL( const TDesC8& aURI, - const TDesC8& aLUID, - const TDesC8& aArgument, - const TDesC8& aType, - TInt aStatusRef ); - void ExecuteCommandL( const TDesC8& aURI, - const TDesC8& aLUID, - RWriteStream*& aStream, - const TDesC8& aType, - TInt aStatusRef ); - void CopyCommandL( const TDesC8& aTargetURI, - const TDesC8& aTargetLUID, - const TDesC8& aSourceURI, - const TDesC8& aSourceLUID, - const TDesC8& aType, - TInt aStatusRef ); - void StartAtomicL(); - void CommitAtomicL(); - void RollbackAtomicL(); - TBool StreamingSupport( TInt& aItemSize ); - void StreamCommittedL(); - void CompleteOutstandingCmdsL(); - - -private: - CGlobalWLANAdapter(TAny* aEcomArguments); - void FillNodeInfoL( MSmlDmDDFObject& aNode, - TSmlDmAccessTypes aAccTypes, - MSmlDmDDFObject::TOccurence aOccurrence, - MSmlDmDDFObject::TScope aScope, - MSmlDmDDFObject::TDFFormat aFormat, - const TDesC8& aDescription ); - void ExecuteBufferL( TBool aFinal = EFalse ); - - /** - * Stores the central repository parameters - * - * @return - */ - void StoreCenRepParamsL(); - - /** - * Stores the CommsDB parameters - * - * @return - */ - void StoreCommsDBParamsL(); - - /** - * Reads the central repository parameters - * - * @return - */ - void ReadCenRepParamsL(); - - /** - * Returns the central repository parameters and updates statuses - * - * @return - */ - void UpdateStatusAndResultL( TInt aResult, TInt aStatus, TDesC8& aValue, TDesC8& aType, TInt aStoreErr ); - - /** - * Reads the CommsDB parameters - * - * @return - */ - void ReadCommsDBParamsL(); - - /** - * Gets the number of uri segments in the URI - * - * @since S60 ?S60_version - * @param aUri The URI whose segments are counted - * @return The amount of segments - */ - TInt NumOfUriSegs( const TDesC8& aUri ); - - /** - * Gets the last uri segment - * - * @since S60 ?S60_version - * @param aUri The URI whose segments are counted - * @return The last segment - */ - TPtrC8 GetLastUriSeg(const TDesC8& aURI); - - TInt DesToInt( const TDesC8& aLuid ); - void InitMemberVariables(); - - MSmlDmCallback* iCallBack; - - // Variable to store the received parameters - TGlobalSettings* iWriteSettings; - // Variable to store whick parameters are to be fetched - TGlobalSettings* iReadSettings; - // Status and result information related to fetches and additions - TStatusResult* iReadStatuses; - TStatusResult* iWriteStatuses; - - TBool iWlanSupported; - - }; - -#endif __GLOBALWLANADAPTER_H__