MSenServiceDescription Class Reference

class MSenServiceDescription
Interface (abstract) class for subclasses implementing the most common value objects used in WSF, which are used to describe some invocable service. All of the subclasses are capable of representing themselves in XML. SenServDesc.lib
Since
Series60 3.0

Member Functions Documentation

AddFacetL(const CSenFacet &)

TInt AddFacetL ( const CSenFacet & aFacet ) [pure virtual]
Method for adding a facet. Will NOT override an already existing facet with a same name.
Since
Series60 3.0

Parameters

const CSenFacet & aFacet is the one to be added. A copy of the the original facet instance will be added.

AsXmlL()

HBufC8 * AsXmlL ( ) [pure virtual]
Gets the service description as XML fragment in UTF-8 format.
Since
Series60 3.0

AsXmlUnicodeL()

HBufC * AsXmlUnicodeL ( ) [pure virtual]
Gets the service description as XML, in Unicode (UCS-2)
Since
Series60 3.0

Contract()

TPtrC8 Contract ( ) [pure virtual]
Getter for contract, which is typically some URI.
Since
Series60 3.0

DescriptionClassType()

TDescriptionClassType DescriptionClassType ( ) [pure virtual]
The DescriptionClassType() method is used to resolve the real subclass type in cases where instance of that class is seen through one of its superclass interfaces.
Since
Series60 3.0

Endpoint()

TPtrC8 Endpoint ( ) [pure virtual]
Getter for endpoint.
Since
Series60 3.0

FacetValue(TDesC8 &, HBufC8 *&)

TInt FacetValue ( TDesC8 & aURI,
HBufC8 *& aValueTo
) [pure virtual]

Parameters

TDesC8 & aURI
HBufC8 *& aValueTo

FacetsL(RFacetArray &)

TInt FacetsL ( RFacetArray & aFacetArray ) [pure virtual]
Method for getting all facets. Copies characteristics (Facets) from the description into array. For each characteristic (Facet) found in array the HasFacetL() method should return "ETrue".
Since
Series60 3.0

Parameters

RFacetArray & aFacetArray is typically an empty array, into where copies of facets will be added. Ownership of the items in this array is transferred to the caller.

FrameworkId()

TPtrC8 FrameworkId ( ) [pure virtual]
Getter for the framework ID.
Since
Series60 3.0

FrameworkVersion()

TPtrC8 FrameworkVersion ( ) [pure virtual]
Getter for the framework version.
Since
Series60 3.0

HasFacetL(const TDesC8 &, TBool &)

TInt HasFacetL ( const TDesC8 & aURI,
TBool & aHasFacet
) [pure virtual]
Method for checking if service description has a certain facet.
Since
Series60 3.0

Parameters

const TDesC8 & aURI the facet to check, typically some URI.
TBool & aHasFacet is ETrue if facet is found and EFalse, if not.

Matches(MSenServiceDescription &)

TBool Matches ( MSenServiceDescription & aPattern ) [pure virtual]
Method returns ETrue if this service description matches the given pattern. The bits of information that are in the pattern are read and compared to corresponding fields in this service description. Note that a pattern may have far fewer fields and that only the non-null and non-zero-length fields are compared. For example, assume that a pattern with only a contract was defined; with the contract set to "urn:example.com:service". Each service description with the same contract will match the pattern, even if such a service description has non-null/non-zero-length fields for other aspects.
Since
Series60 3.0

Parameters

MSenServiceDescription & aPattern is a Service Description, typically with partial information.

RemoveFacet(const TDesC8 &)

TInt RemoveFacet ( const TDesC8 & aURI ) [pure virtual]
Removes a characteristic (Facet) from the description
Since
Series60 3.0

Parameters

const TDesC8 & aURI of the facet to be removed.

ScoreMatchL(MSenServiceDescription &)

TInt ScoreMatchL ( MSenServiceDescription & aPattern ) [pure virtual]

This leaving variant of ScoreMatch() always returns a positive integer if this service description matches with the given pattern in at least one aspect. Higher numbers mean closer match.

In case of system error, method leaves.

The bits of information that are in the pattern are read and compared to corresponding fields in this ServiceDescription. Note that a pattern may have far fewer fields and that only the non-null fields are compared. For example, assume that a pattern with only a contract was defined; with the contract set to "urn:example.com:service". Each ServiceDescription with the same contract will match the pattern, even if such a ServiceDescription has non-null fields for other aspects.
Since
Series60 3.0

Parameters

MSenServiceDescription & aPattern a ServiceDescription, typically with partial information.

SetContractL(const TDesC8 &)

void SetContractL ( const TDesC8 & aContract ) [pure virtual]
Setter for contract.
Since
Series60 3.0

Parameters

const TDesC8 & aContract the contract to be set.

SetEndPointL(const TDesC8 &)

void SetEndPointL ( const TDesC8 & aEndPoint ) [pure virtual]
Setter for endpoint.
Since
Series60 3.0

Parameters

const TDesC8 & aEndPoint

SetFacetL(const CSenFacet &)

TInt SetFacetL ( const CSenFacet & aFacet ) [pure virtual]
Method for setting a facet.Adds a new facet, if non-existent. But, if a facet with same name exists, it will be overridden.
Since
Series60 3.0

Parameters

const CSenFacet & aFacet to be set. A copy of the original will be created.

WriteAsXMLToL(RWriteStream &)

void WriteAsXMLToL ( RWriteStream & aWriteStream ) [pure virtual]
Writes this service description as XML, in UTF-8 form to a stream
Since
Series60 3.0

Parameters

RWriteStream & aWriteStream to write into.

Member Enumerations Documentation

Enum TDescriptionClassType

DescriptionClassType enumeration.

Enumerators

ERoot = 0
EBaseServiceDescription = 1
EXmlServiceDescription = 2
EIdentityProvider = 3
EServicePattern = 4
EServiceSession = 5
EWebServiceSession = 6
EBasicWebServiceSession = 7
EIdWSFServiceSession = 8
EIdWsfServiceInstance = 9
ECoreServiceConsumer = 10
ESenInternalServiceConsumer = 11
EIdWsfAuthenticationServiceClient = 12
EIdWsfDiscoveryServiceClient = 13
ERestServiceSession = 14
EWSStarServiceSession = 15
EWSStarSTSClient = 16
EWSStarPolicyClient = 17
EWSDescription = 18
EWSPattern = 19
EAtomPubServiceSession = 20
EAtomPubAuthClient = 21
EAccount = 22
EOviServiceSession = 23
EOviOAuthClient = 24