Symbian
Symbian OS Library

SYMBIAN OS V9.3

[Index] [Spacer] [Previous] [Next]



Location: IAPPrefs.h
Link against: imcm.lib

Class CImIAPPreferences

class CImIAPPreferences : public CBase;

Description

Encapsulates preferences relating to IAPs for an email service.

An IAP defines all of the variable factors that determine how an Internet connection is made. These variable factors can include the bearer (CDMA, GSM or GPRS), dial-in number. network login names and passwords.

The Comms Database is capable of storing details of several IAPs, which can then be used to initiate different types of connection. The database also stores the preference order of the IAPs: this defines which IAP should be used as the first choice, and also an optional second choice to be used if the first choice is not available.

The CImIAPPreferences class associates a first choice, and optionally a second choice IAP to use with a particular email service. The preference object is stored in the service entry's message store.

For SMTP, if no object has been stored in the service, then the SMTP client will attempt to use any default Internet settings in the Comms Database, or will use the existing Internet connection if one does already exist. Note that SMTP sessions will normally fail to send any email messages if the SMTP session is not created using an IAP which the SMTP server does not accept.

Note that in Symbian OS v6.0 a single IAP was associated with an email service entry through the iMtmData1 field.

Derivation

Members

Defined in CImIAPPreferences:
AddIAPL(), FindIAPL(), IAPPreference(), KSanityCheck, KSanityCheckOldWins, KUidMsgFileInternetAccessPreferences, NewLC(), NumberOfIAPs(), RemoveIAPL(), ReplaceIAPL(), Version(), anonymous, ~CImIAPPreferences()

Inherited from CBase:
Delete(), Extension_(), operator new()


Construction and destruction


NewLC()

static IMPORT_C CImIAPPreferences *NewLC();

Description

Allocates and creates a new CImIAPPreferences object, leaving the object on the cleanup stack.

Return value

CImIAPPreferences *

New CImIAPPreferences object


~CImIAPPreferences()

IMPORT_C ~CImIAPPreferences();

Description

Destructor.

[Top]


Member functions


Version()

IMPORT_C TInt Version() const;

Description

Gets the version number of the preferences structure.

Return value

TInt

The version number of the preferences structure


NumberOfIAPs()

IMPORT_C TInt NumberOfIAPs() const;

Description

Gets the number of IAPs that are assigned to the current service entry.

Return value

TInt

Number of IAPs


IAPPreference()

IMPORT_C TImIAPChoice IAPPreference(TInt aPreference) const;

Description

Gets the IAP choice of the given preference value.

Note that preference values run from 0 to n, with 0 being the first choice. Currently the number of IAPs per service is limited to two.

Parameters

TInt aPreference

Preference value

Return value

TImIAPChoice

IAP choice for the given preference value


AddIAPL()

IMPORT_C void AddIAPL(TImIAPChoice aIap, TInt aIndex=0);

Description

Adds the given IAP with the given preference value.

Any existing IAPs of equal or lower preference will have their preference lowered further to make way for the new IAP. For example, if an IAP of preference value 0 is already associated with the current service and another IAP of preference 0 is added, then the existing IAP will be relegated to preference value 1. Currently the number of IAPs per service is limited to two.

Parameters

TImIAPChoice aIap

IAP

TInt aIndex

Preference value for this IAP


RemoveIAPL()

IMPORT_C void RemoveIAPL(TInt aPreferenceNumber);

Description

Removes the IAP of the given preference.

Any existing IAPs of lower preference will have their preference increased to fill the gap created by the IAP that has been removed. For example, if two IAPs are associated with the current service with the preference values 0 and 1. If the IAP of preference value 0 is later removed, then the other IAP is promoted to preference value 0. It should be noted that adding or removing an IAP from a CImIAPPreferences object does not change any global IAP settings, it only changes the behaviour associated with a particular with a particular email service.

Parameters

TInt aPreferenceNumber

Preference value


FindIAPL()

IMPORT_C TInt FindIAPL(TUint32 aIAP, TInt &aLocation) const;

Description

Finds the preference value for a specified IAP.

Parameters

TUint32 aIAP

The identifier of the IAP to find, as specified in the CommDb record for the IAP

TInt &aLocation

On return, if the specified IAP was found, its preference value

Return value

TInt

KErrNone if the specified IAP was found; KErrNotFound if not.


ReplaceIAPL()

IMPORT_C void ReplaceIAPL(TInt aPreferenceNumber, TImIAPChoice aIap);

Description

Replaces the current IAP at a specified preference value.

A panic occurs if an IAP is not already set for the preference value.

Parameters

TInt aPreferenceNumber

The preference value for which to set the IAP

TImIAPChoice aIap

The new IAP value for the preference value

[Top]


Member enumerations


Enum anonymous

n/a

Description

KSanityCheckOldWins

KSanityCheck

[Top]


Member data


KUidMsgFileInternetAccessPreferences

const TUid KUidMsgFileInternetAccessPreferences;

Description

ID of the stream used to store IAP preference information in a message store.