CLbsAdminImpl Class Reference

class CLbsAdminImpl : public CBase

Inherits from

Constructor & Destructor Documentation

CLbsAdminImpl(MLbsAdminObserver *)

CLbsAdminImpl ( MLbsAdminObserver * aObserver ) [private]

Default constructor

Parameters

MLbsAdminObserver * aObserver

~CLbsAdminImpl()

~CLbsAdminImpl ( ) [virtual]

Default destructor

Member Functions Documentation

CheckCenRepL()

void CheckCenRepL ( ) [private]
Check the admin cenrep values are within range
leave
KErrGeneral if one of the values is not within range

ClearNotificationMask()

void ClearNotificationMask ( )

Cancels an outstanding setting event request TLbsAdminSetting

ConstructL()

void ConstructL ( ) [private]

ConstructL(const TLbsAdminSettingGroup &)

void ConstructL ( const TLbsAdminSettingGroup & aSettingsMask ) [private]
Second phase constructor
capability
WriteDeviceData if the configuration settings need to be created/initialised, none otherwise

Parameters

const TLbsAdminSettingGroup & aSettingsMask

DefineArrayProperties(const TLbsAdminSetting, TUint32)

TInt DefineArrayProperties ( const TLbsAdminSetting aAdminSetting,
TUint32 aKeyBase
) [private]

Defines the properties for array types. These are read from a number of central repository keys starting at 'aKeyBase'

Parameters

const TLbsAdminSetting aAdminSetting setting to be defined
TUint32 aKeyBase base cenrep value for range

DefinePropertiesL()

void DefinePropertiesL ( ) [private]

Initialises the configuration

leave
One of the system wide error codes
capability
WriteDeviceData if the configuration settings need to be created/initialised, none otherwise

DeleteSubscribers()

void DeleteSubscribers ( ) [private]

Deletes all the setting subscribers.

It automatically cancels outstanding setting event request (if any).

capability
WriteDeviceData

DeleteSubscribersNotInMask(TLbsAdminSettingGroup &)

void DeleteSubscribersNotInMask ( TLbsAdminSettingGroup & aMask ) [private]

Deletes all the setting subscribers whose setting is not selected by aMask. If there is a subscriber for a setting selected by aMask, then that setting is removed from aMask. That way, when the method finishes, the resulting mask selects only those settings for which a subscriber is missing.

capability
WriteDeviceData

Parameters

TLbsAdminSettingGroup & aMask

GetProtocolModulesValidated(TLbsAdminSetting, TInt &, const TLbsAdminSetting)

TInt GetProtocolModulesValidated ( TLbsAdminSetting aSetting,
TInt & aValue,
const TLbsAdminSetting aDefault
) [private]

Populate the passed TLbsAdminProtocolModulesInfo class with the module ids held in the RProperty byte array

Parameters

TLbsAdminSetting aSetting The setting to be read.
TInt & aValue The value of the setting (returned).
const TLbsAdminSetting aDefault default module cenrep key

GetSettingValidated(TLbsAdminSetting, TInt &)

TInt GetSettingValidated ( TLbsAdminSetting aSetting,
TInt & aValue
)

Returns an LBS Administration setting obtained from the corresponding property. This method should be used by one of overloaded DoGet()s after validating the attributes.

For the KLbsSpecialFeatureMaximumRequestDelay read-only seting KErrArgument is returned if the value is greater than KLbsMaximumRequestDelayMax.

TLbsAdminSetting KLbsMaximumRequestDelayMax

Parameters

TLbsAdminSetting aSetting The setting to be read.
TInt & aValue The value of the setting (returned).

NewL()

CLbsAdminImpl * NewL ( ) [static]
Static constructor.
capability
WriteDeviceData if the configuration settings need to be created/initialised, none otherwise

NewL(MLbsAdminObserver &, const TLbsAdminSettingGroup &)

CLbsAdminImpl * NewL ( MLbsAdminObserver & aObserver,
const TLbsAdminSettingGroup & aSettingsMask
) [static]
Static constructor.
capability
WriteDeviceData if the configuration settings need to be created/initialised, none otherwise

Parameters

MLbsAdminObserver & aObserver
const TLbsAdminSettingGroup & aSettingsMask

ResetToDefault()

TInt ResetToDefault ( )

SetInfoBaseValidated(TLbsAdminSetting, const TLbsAdminInfoBase &)

TInt SetInfoBaseValidated ( TLbsAdminSetting aSetting,
const TLbsAdminInfoBase & aInfo
)

Updates a setting in a relevant property and in the corresponding Central Repository setting. This method should be used by one of overloaded DoSet()s after validating the attributes.

capability
WriteDeviceData
TLbsAdminSetting

Parameters

TLbsAdminSetting aSetting The setting to be changed.
const TLbsAdminInfoBase & aInfo

SetNotificationMaskL(const TLbsAdminSettingGroup &)

void SetNotificationMaskL ( const TLbsAdminSettingGroup & aSettingsMask )

Parameters

const TLbsAdminSettingGroup & aSettingsMask

SetSettingValidated(TLbsAdminSetting, const TInt &)

TInt SetSettingValidated ( TLbsAdminSetting aSetting,
const TInt & aValue
)

Updates a setting in a relevant property and in the corresponding Central Repository setting. This method should be used by one of overloaded DoSet()s after validating the attributes.

capability
WriteDeviceData
TLbsAdminSetting

Parameters

TLbsAdminSetting aSetting The setting to be changed.
const TInt & aValue The new value of the setting.

SyncCenrep(TLbsAdminSetting)

TInt SyncCenrep ( TLbsAdminSetting aSetting ) [private]

As a result of race conditions when there are two or more simultaneous calls of the set functions the values stored in the P&S and CenRep may be different. So we may need to sync the CenRep value with the last P&S value. We run the cycle only once. It must be enough for handling two concurrent calls. We consider the probability of three or more concurrent calls as very low.

Parameters

TLbsAdminSetting aSetting

Member Data Documentation

CRepository * iCenRep

CRepository * iCenRep [private]

RMutex iMutex

RMutex iMutex [private]

MLbsAdminObserver * iObserver

MLbsAdminObserver * iObserver [private]

RPointerArray< CAdminSettingSubscriber > iSubscribers

RPointerArray < CAdminSettingSubscriber > iSubscribers [private]