MSenConsumerPolicy Class Reference

#include <mw/MSenConsumerPolicy.h>

Link against: SenServDesc.lib

class MSenConsumerPolicy

Detailed Description

This abstract class defines consumer policy interface. The consumer 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, consumer 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 consumer policy. A consumer policy is effective only for a single session, and thus it applies to one service connection only. This means, that this policy information is "private", and not shared between different WSC applications using WSF, event though they might be using the same (remote) service at the same time. Consumer policy properties are not serialized in any WSF database, but resides in memory only.

Example structure of ConsumerPolicy XML fragment:

<ConsumerPolicy> <Transport> <IapId> 2 </IapId> </Transport> <IdentityProviderIDs strict="false"> <IdentityProviderID> urn:first.example.idp.com </IdentityProviderID> <IdentityProviderID> urn:second.example.idp.com </IdentityProviderID> </IdentityProviderIDs> </ConsumerPolicy>

Since
Series60 3.0

Member Function Documentation

AcceptsConsumerPolicy ( MSenConsumerPolicy & )

TBool AcceptsConsumerPolicy(MSenConsumerPolicy &aPolicyPattern)[pure virtual]
Checks if the policy of this service pattern accepts given policy.
Since
Series60 3.0
ParameterDescription
aPolicyPatternthe consumer policy to check.

Returns: ETrue if accepts, EFalse if not

AddConsumerIdentityProviderIdL ( const TDesC8 & )

TInt AddConsumerIdentityProviderIdL(const TDesC8 &aProviderId)[pure virtual]
Adds a new Identity provider ID value at the end of the current list values.
Since
Series60 3.0
ParameterDescription
aProviderIdunique ProviderID as UTF-8 descriptor

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

ConsumerIapId ( TUint32 & )

TInt ConsumerIapId(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

ConsumerIdentityProviderIds8L ( )

const CSenIdentityProviderIdArray8 &ConsumerIdentityProviderIds8L()[pure virtual]
Getter for Identity provider 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.

RebuildFromConsumerPolicy ( MSenConsumerPolicy & )

TInt RebuildFromConsumerPolicy(MSenConsumerPolicy &aTemplate)[pure virtual]
Rebuilds the consumer policy of this service pattern from the given consumer policy.
Since
Series60 3.0
ParameterDescription
aTemplatethe consumer policy to rebuild from.

Returns: KErrNone or other system-wide Symbian error codes.

SetConsumerIapIdL ( TUint32 )

voidSetConsumerIapIdL(TUint32aIapId)[pure virtual]
Setter for Internet Access Point (IAP) ID existing in CommDB.
Since
Series60 3.0
ParameterDescription
aIapIdIAP ID

SetConsumerIdentityProviderIdsL ( CSenIdentityProviderIdArray8 & )

voidSetConsumerIdentityProviderIdsL(CSenIdentityProviderIdArray8 &aList)[pure virtual]
Setter for consumer identity provider IDs. Overrides current values with the given values from the array. If an ID does not exist, it will be added.
Since
Series60 3.0
ParameterDescription
aListlist of identity provider IDs.