MSenProviderPolicy Class Reference

#include <mw/MSenProviderPolicy.h>

Link against: SenServDesc.lib

class MSenProviderPolicy

Detailed Description

This abstract class defines provider policy interface. The provider policy sets the conditions in which some service provider is capable to operate in. It is defining context, through which these (possibly remote) services may be contacted and used. The actual properties may include transport layer settings, like predefined Internet Access Point (IAP) ID. In addition, provider policy may declare, that certain service should only be contacted using certain identity provider (in ID-WSF). This can be achieved by mapping certain list of IDP IDs to a provider policy. Provider Policies are WSF wide settings, which are stored in WSF databases, and thus they are shared with all the actual Web Service Consumers (WSCs) accessing same services.

Example structure of ProviderPolicy XML fragment:

<ProviderPolicy> <Transport> <IapId> 1 </IapId> </Transport> <IdentityProviderIDs strict="true"> <IdentityProviderID> urn:first.id.example.com </IdentityProviderID> <IdentityProviderID> urn:second.id.example.com </IdentityProviderID> </IdentityProviderIDs> </ProviderPolicy>
Since
Series60 3.0

Member Function Documentation

Accepts ( MSenProviderPolicy & )

TBool Accepts(MSenProviderPolicy &aPolicyPattern)[pure virtual]
Checks if some policy is accepted by current policy.
Since
Series60 3.0
ParameterDescription
aPolicyPatternis the policy being compared with this instance.

Returns: ETrue if policy candidate is accepted by current policy definition, EFalse if not.

AddIdentityProviderIdL ( TDesC8 & )

TInt AddIdentityProviderIdL(TDesC8 &aProviderId)[pure virtual]
Adds a new IdentityProviderID value at the end of the current list values.
Since
Series60 3.0

Returns: KErrAlreadyExists, if a duplicate is tried to add KErrArgument if a zero-length descriptor is tried to add (aProviderId.Length() == 0)

IapId ( TUint32 & )

TInt IapId(TUint32 &aCurrentIapId)[pure virtual]
Getter for IAP ID
Since
Series60 3.0
ParameterDescription
aCurrentIapIdwill contain the current Internet Access Point ID

Returns: KErrNone if <IapId> element is found and has valid contentKErrNotFound if no <IapId> element has been found or it has no contentTLex error codes, if <IapId> element has non-numeric value, which cannot be resolved

IdentityProviderIds8L ( )

const CSenIdentityProviderIdArray8 &IdentityProviderIds8L()[pure virtual]
Getter for IdentityProvider IDs.
Since
Series60 3.0

Returns: a list of IDP arrays if such value(s) have been set or an empty array if no IDP:s have been specified.

RebuildFrom ( MSenProviderPolicy & )

TInt RebuildFrom(MSenProviderPolicy &aTemplate)[pure virtual]
Method reads provider policy class instance values from given template. Values may include an IAP ID, preferred IdentityProvider IDs etc.
Since
Series60 3.0
ParameterDescription
aTemplatefrom which the values are read.

Returns: KErrNone Everything went ok. KErrAlreadyExists Duplicates were found KErrArgument Invalid providerIds were found Other error codes are system-wide Symbian error codes.

SetIapIdL ( TUint32 )

voidSetIapIdL(TUint32aIapId)[pure virtual]
Setter for Internet Access Point (IAP) ID. Method is used to define default access point to avoid IAP selection dialog prompt.
Since
Series60 3.0
ParameterDescription
aIapIdis the ID found from CommDB.

SetIdentityProviderIdsL ( CSenIdentityProviderIdArray8 & )

voidSetIdentityProviderIdsL(CSenIdentityProviderIdArray8 &aList)[pure virtual]
Setter for IdentityProvider IDs. Overrides current values with the given values from the array. When initiating a new service connection, this list of ProviderIDs define, which IdentityProviders are preferred OR which are strictly acceptable ones.
Since
Series60 3.0
ParameterDescription
aListlist of IdentityProvider IDs.

SetSnapIdL ( TUint32 )

voidSetSnapIdL(TUint32)[inline]

SnapId ( TUint32 & )

TInt SnapId(TUint32 &)[inline]