CSenXmlServiceDescription Class Reference

class CSenXmlServiceDescription : public CSenDomFragment

CSenXmlServiceDescription class implements the most common value object used in WSF, which is used to describe some invocable service.

Class offers basic properties which describe some service and methods to manipulate this info. These properties are stored in XML fragment format and a class instance can be represented as one XML tree.

The main properties for service description are:
  • contract (typically some URI)

  • endpoint (typically some URL)

  • frameworkID

SenServDesc.lib
Since
Series60 3.0

Inherits from

Public Member Functions
~CSenXmlServiceDescription()
IMPORT_C TBoolAccepts(MSenProviderPolicy &)
IMPORT_C TIntAddFacetL(const CSenFacet &)
IMPORT_C TIntAddIdentityProviderIdL(TDesC8 &)
IMPORT_C HBufC8 *AsXmlL()
IMPORT_C HBufC *AsXmlUnicodeL()
IMPORT_C TPtrC8Contract()
IMPORT_C RCredentialList &Credentials()
IMPORT_C TDescriptionClassTypeDescriptionClassType()
IMPORT_C TPtrC8Endpoint()
IMPORT_C TIntFacetValue(TDesC8 &, HBufC8 *&)
IMPORT_C TIntFacetsL(RFacetArray &)
IMPORT_C TPtrC8FrameworkId()
IMPORT_C TPtrC8FrameworkVersion()
IMPORT_C TBoolHasEqualPrimaryKeysL(MSenServiceDescription &)
IMPORT_C TIntHasFacetL(const TDesC8 &, TBool &)
IMPORT_C TIntIapId(TUint32 &)
IMPORT_C const CSenIdentityProviderIdArray8 &IdentityProviderIds8L()
IMPORT_C TBoolIsLocalL()
IMPORT_C TBoolMatches(MSenServiceDescription &)
IMPORT_C const TDesC8 &NewElementName()
IMPORT_C CSenXmlServiceDescription *NewL()
IMPORT_C CSenXmlServiceDescription *NewL(const TDesC8 &)
IMPORT_C CSenXmlServiceDescription *NewL(const TDesC8 &, const TDesC8 &)
IMPORT_C CSenXmlServiceDescription *NewLC()
IMPORT_C CSenXmlServiceDescription *NewLC(const TDesC8 &)
IMPORT_C CSenXmlServiceDescription *NewLC(const TDesC8 &, const TDesC8 &)
IMPORT_C TBoolPromptUserInfo()
IMPORT_C TPtrC8ProviderId()
IMPORT_C TIntRebuildFrom(MSenProviderPolicy &)
IMPORT_C TIntRemoveFacet(const TDesC8 &)
IMPORT_C voidResumeParsingFromL(const TDesC8 &, const TDesC8 &, const TDesC8 &)
IMPORT_C TIntScoreMatchL(MSenServiceDescription &)
IMPORT_C MSenServicePolicy *ServicePolicy()
IMPORT_C voidSetAttributesL(const RAttributeArray &)
IMPORT_C voidSetContractL(const TDesC8 &)
IMPORT_C voidSetEndPointL(const TDesC8 &)
IMPORT_C TIntSetFacetL(const CSenFacet &)
IMPORT_C voidSetFrameworkIdL(const TDesC8 &)
IMPORT_C voidSetIapIdL(TUint32)
IMPORT_C voidSetIdentityProviderIdsL(CSenIdentityProviderIdArray8 &)
IMPORT_C TIntSetPolicyL(const TDesC8 &)
IMPORT_C TIntSetPolicyL(const TDesC8 &, const TDesC8 &)
IMPORT_C TIntSetPolicyL(const TDesC8 &, const TDesC8 &, const TDesC8 &, const TDesC8 &)
IMPORT_C voidSetPromptUserInfoL(TBool)
IMPORT_C TIntSetProviderIdL(const TDesC8 &)
IMPORT_C voidSetSnapIdL(TUint32)
IMPORT_C TIntSetTransportCueL(const TDesC8 &)
IMPORT_C TIntSetTransportPropertiesL(const TDesC8 &)
IMPORT_C TIntSnapId(TUint32 &)
IMPORT_C TPtrC8TransportCue()
IMPORT_C TIntTransportPropertiesL(HBufC8 *&)
IMPORT_C voidWriteAsXMLToL(RWriteStream &)
Protected Member Functions
CSenXmlServiceDescription(TDescriptionClassType)
IMPORT_C voidConstructL()
IMPORT_C voidConstructL(const TDesC8 &)
IMPORT_C voidConstructL(const TDesC8 &, const TDesC8 &)
IMPORT_C voidEndElementL(const TDesC8 &, const TDesC8 &, const TDesC8 &)
IMPORT_C voidStartElementL(const TDesC8 &, const TDesC8 &, const TDesC8 &, const RAttributeArray &)
Private Member Functions
TInt FacetValueL(TDesC8 &, HBufC8 *&)
TInt RemoveFacetL(const TDesC8 &)
Inherited Functions
CBase::CBase()
CBase::Delete(CBase *)
CBase::Extension_(TUint,TAny *&,TAny *)
CBase::operator new(TUint)
CBase::operator new(TUint,TAny *)
CBase::operator new(TUint,TLeave)
CBase::operator new(TUint,TLeave,TUint)
CBase::operator new(TUint,TUint)
CBase::~CBase()
CSenBaseFragment::AllocContentSaverL()
CSenBaseFragment::AsElement()
CSenBaseFragment::BuildFrom(const TDesC8 &)
CSenBaseFragment::CSenBaseFragment()
CSenBaseFragment::ConsistsOfL(MSenFragment &)
CSenBaseFragment::Content()
CSenBaseFragment::ContentOf(const TDesC8 &)
CSenBaseFragment::DelegateParsingL(MSenFragment &)
CSenBaseFragment::DelegateParsingL(const TDesC8 &,const TDesC8 &,const TDesC8 &,const RAttributeArray &)
CSenBaseFragment::DetachL()
CSenBaseFragment::EnsureNamespace(const TDesC8 &)
CSenBaseFragment::ExtractElement()
CSenBaseFragment::LocalName()const
CSenBaseFragment::Namespace(const TDesC8 &)
CSenBaseFragment::NsPrefix()const
CSenBaseFragment::NsUri()const
CSenBaseFragment::ParseL(const TDesC8 &)
CSenBaseFragment::Reader()
CSenBaseFragment::ResetContentL()
CSenBaseFragment::SaveNamespacesL(const RAttributeArray &,TBool)
CSenBaseFragment::SetContentOfL(const TDesC8 &,const TDesC8 &)
CSenBaseFragment::SetOwner(MSenFragment &)
CSenBaseFragment::SetReader(CSenXmlReader &)
CSenBaseFragment::StartEntity(TDesC8 &)
CSenBaseFragment::~CSenBaseFragment()
CSenDomFragment::BaseConstructL(CSenXmlReader &)
CSenDomFragment::BaseConstructL(const CSenElement &)
CSenDomFragment::BaseConstructL(const TDesC8 &)
CSenDomFragment::BaseConstructL(const TDesC8 &,const TDesC8 &)
CSenDomFragment::BaseConstructL(const TDesC8 &,const TDesC8 &,const TDesC8 &)
CSenDomFragment::BaseConstructL(const TDesC8 &,const TDesC8 &,const TDesC8 &,const RAttributeArray &)
CSenDomFragment::BaseConstructL(const TDesC8 &,const TDesC8 &,const TDesC8 &,const RAttributeArray &,CSenElement &)
CSenDomFragment::CSenDomFragment()
CSenDomFragment::CharactersL(const TDesC8 &,TInt,TInt)
CSenDomFragment::ExpandL(const TDesC8 &,const TDesC8 &,const TDesC8 &,const RAttributeArray &)
CSenDomFragment::NewL(const CSenElement &)
CSenDomFragment::NewL(const TDesC8 &,const TDesC8 &,const TDesC8 &)
CSenDomFragment::NewL(const TDesC8 &,const TDesC8 &,const TDesC8 &,const RAttributeArray &)
CSenDomFragment::NewL(const TDesC8 &,const TDesC8 &,const TDesC8 &,const RAttributeArray &,CSenElement &)
CSenDomFragment::ParseWithL(CSenXmlReader &)
CSenDomFragment::WriteEndElementL(const TDesC8 &,const TDesC8 &,const TDesC8 &)
CSenDomFragment::WriteStartElementL(const TDesC8 &,const TDesC8 &,const TDesC8 &,const RAttributeArray &)
CSenDomFragment::~CSenDomFragment()
Protected Attributes
const TDescriptionClassTypeiType
Private Attributes
CSenCredential *iCredential
RCredentialList iCredentialList
TTime iNotOnOrAfter
CSenProviderPolicy *iProviderPolicy
CSenServicePolicy *iServicePolicy
Inherited Attributes
CSenBaseFragment::iState
CSenBaseFragment::iWs
CSenBaseFragment::iXmlReader
CSenBaseFragment::ipElement
CSenBaseFragment::ipOwner
CSenDomFragment::ipDomDelegate

Constructor & Destructor Documentation

CSenXmlServiceDescription(TDescriptionClassType)

IMPORT_CCSenXmlServiceDescription(TDescriptionClassTypeaType)[protected]

C++ default constructor.

Parameters

TDescriptionClassType aTypeenumeration defining the type of this class.

~CSenXmlServiceDescription()

IMPORT_C~CSenXmlServiceDescription()[virtual]

Destructor.

Member Functions Documentation

Accepts(MSenProviderPolicy &)

IMPORT_C TBoolAccepts(MSenProviderPolicy &aPolicyPattern)[virtual]

Parameters

MSenProviderPolicy & aPolicyPattern

AddFacetL(const CSenFacet &)

IMPORT_C TIntAddFacetL(const CSenFacet &aFacet)[virtual]

Parameters

const CSenFacet & aFacet

AddIdentityProviderIdL(TDesC8 &)

IMPORT_C TIntAddIdentityProviderIdL(TDesC8 &aProviderId)[virtual]

Parameters

TDesC8 & aProviderId

AsXmlL()

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

AsXmlUnicodeL()

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

ConstructL()

IMPORT_C voidConstructL()[protected]

Basic ConstructL function.

ConstructL(const TDesC8 &)

IMPORT_C voidConstructL(const TDesC8 &aNamespaceURI)[protected]
Basic ConstructL function.
Since
Series60 3.0

Parameters

const TDesC8 & aNamespaceURIfor this service description, which is also an XML element.

ConstructL(const TDesC8 &, const TDesC8 &)

IMPORT_C voidConstructL(const TDesC8 &aEndPoint,
const TDesC8 &aContract
)[protected]
Basic ConstructL function.
Since
Series60 3.0

Parameters

const TDesC8 & aEndPoint
const TDesC8 & aContractidentifies the service type, typically some URN.

Contract()

IMPORT_C TPtrC8Contract()

Credentials()

IMPORT_C RCredentialList &Credentials()
Returns list of credentials. Ownership is not transferred, any modifications to the contents of the list modify the real objects.
Since
Series60 3.0

DescriptionClassType()

IMPORT_C TDescriptionClassTypeDescriptionClassType()

EndElementL(const TDesC8 &, const TDesC8 &, const TDesC8 &)

IMPORT_C voidEndElementL(const TDesC8 &aNsUri,
const TDesC8 &aLocalName,
const TDesC8 &aQName
)[protected, virtual]
Callback function which implement the XML content handler interface.
Since
Series60 3.0

Parameters

const TDesC8 & aNsUriThe namespace URI of the new element
const TDesC8 & aLocalNameThe local name of the new element
const TDesC8 & aQNameThe qualified name of the new element

Endpoint()

IMPORT_C TPtrC8Endpoint()

FacetValue(TDesC8 &, HBufC8 *&)

IMPORT_C TIntFacetValue(TDesC8 &aURI,
HBufC8 *&aValueTo
)[virtual]

Parameters

TDesC8 & aURI
HBufC8 *& aValueTo

FacetValueL(TDesC8 &, HBufC8 *&)

TInt FacetValueL(TDesC8 &aURI,
HBufC8 *&aValueTo
)[private]

Parameters

TDesC8 & aURI
HBufC8 *& aValueTo

FacetsL(RFacetArray &)

IMPORT_C TIntFacetsL(RFacetArray &aFacetArray)[virtual]

Parameters

RFacetArray & aFacetArray

FrameworkId()

IMPORT_C TPtrC8FrameworkId()

FrameworkVersion()

IMPORT_C TPtrC8FrameworkVersion()

HasEqualPrimaryKeysL(MSenServiceDescription &)

IMPORT_C TBoolHasEqualPrimaryKeysL(MSenServiceDescription &aCandidate)

Method returns ETrue if the primary keys of this service description are equal. Definition of primary keys varies on concrete implementations.

In a typical XML sub class implementation the primary keys are Contract and Endpoint elements.

Difference to Match() method is that primary keys - often descriptors - MUST be equal both in this service description and in aCandidate, unlike in Match(), where argument is more like wildcard pattern matching even in cases where it includes fewer fields (less information).

Since
Series60

Parameters

MSenServiceDescription & aCandidateis a service description, which primary keys are checked in this comparison.

HasFacetL(const TDesC8 &, TBool &)

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

Parameters

const TDesC8 & aURIthe facet to check, typically some URI.
TBool & aHasFacetis ETrue if facet is found and EFalse, if not.

IapId(TUint32 &)

IMPORT_C TIntIapId(TUint32 &aCurrentIapId)[virtual]

Parameters

TUint32 & aCurrentIapId

IdentityProviderIds8L()

IMPORT_C const CSenIdentityProviderIdArray8 &IdentityProviderIds8L()[virtual]

IsLocalL()

IMPORT_C TBoolIsLocalL()

Matches(MSenServiceDescription &)

IMPORT_C TBoolMatches(MSenServiceDescription &aPattern)

Parameters

MSenServiceDescription & aPattern

NewElementName()

IMPORT_C const TDesC8 &NewElementName()[virtual]
Method returns the localname for this service description. This is the localname of the element, when this class is represented as an XML element.
Since
Series60 3.0

NewL()

IMPORT_C CSenXmlServiceDescription *NewL()[static]

Standard 2 phase constructor

NewL(const TDesC8 &)

IMPORT_C CSenXmlServiceDescription *NewL(const TDesC8 &aNamespaceURI)[static]

Standard 2 phase constructor

Parameters

const TDesC8 & aNamespaceURInamespace URI for the service description.

NewL(const TDesC8 &, const TDesC8 &)

IMPORT_C CSenXmlServiceDescription *NewL(const TDesC8 &aEndPoint,
const TDesC8 &aContract
)[static]

Standard 2 phase constructors

Parameters

const TDesC8 & aEndPoint
const TDesC8 & aContractidentifies the service type.

NewLC()

IMPORT_C CSenXmlServiceDescription *NewLC()[static]

Standard 2 phase constructor

NewLC(const TDesC8 &)

IMPORT_C CSenXmlServiceDescription *NewLC(const TDesC8 &aNamespaceURI)[static]

Standard 2 phase constructor

Parameters

const TDesC8 & aNamespaceURInamespace URI for the service description.

NewLC(const TDesC8 &, const TDesC8 &)

IMPORT_C CSenXmlServiceDescription *NewLC(const TDesC8 &aEndPoint,
const TDesC8 &aContract
)[static]

Standard 2 phase constructors

Parameters

const TDesC8 & aEndPoint
const TDesC8 & aContractidentifies the service type.

PromptUserInfo()

IMPORT_C TBoolPromptUserInfo()

Getter for current userinfo mode (KSenAttrPromptUserInfo attribute).

ProviderId()

IMPORT_C TPtrC8ProviderId()
Getter for (identity) provider ID
Since
Series60 5.0

RebuildFrom(MSenProviderPolicy &)

IMPORT_C TIntRebuildFrom(MSenProviderPolicy &aTemplate)[virtual]

Parameters

MSenProviderPolicy & aTemplate

RemoveFacet(const TDesC8 &)

IMPORT_C TIntRemoveFacet(const TDesC8 &aURI)[virtual]

Parameters

const TDesC8 & aURI

RemoveFacetL(const TDesC8 &)

TInt RemoveFacetL(const TDesC8 &aURI)[private]

Parameters

const TDesC8 & aURI

ResumeParsingFromL(const TDesC8 &, const TDesC8 &, const TDesC8 &)

IMPORT_C voidResumeParsingFromL(const TDesC8 &aNsUri,
const TDesC8 &aLocalName,
const TDesC8 &aQName
)[virtual]
Resumes the parsing. Called by the delegate fragment in order to notify owner, which needs to regain (take over) parsing. For example, when a policy fragment is parsed, the service description fragment should resume parsing the rest of its own XML document representation.
Since
Series60 3.0

Parameters

const TDesC8 & aNsUriThe namespace URI of the current element
const TDesC8 & aLocalNameThe local name of the current element
const TDesC8 & aQNameThe qualified name of the current element

ScoreMatchL(MSenServiceDescription &)

IMPORT_C TIntScoreMatchL(MSenServiceDescription &aPattern)[virtual]

On success, this method returns a positive integer if this service description matches with the given pattern in at least one aspect. Higher numbers mean a closer match.

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 & aPatterna ServiceDescription, typically with partial information.

ServicePolicy()

IMPORT_C MSenServicePolicy *ServicePolicy()

Getter for (web) service policy

SetAttributesL(const RAttributeArray &)

IMPORT_C voidSetAttributesL(const RAttributeArray &aAttributes)[virtual]
Method looks for FrameworkID attribute from the given XML attribute array and if one is found, sets its value for this instance. In addition, all the namespace attributes are copied. All other attributes are discarded.
Since
Series60 3.0

Parameters

const RAttributeArray & aAttributesthe attribute list.

SetContractL(const TDesC8 &)

IMPORT_C voidSetContractL(const TDesC8 &aContract)

Parameters

const TDesC8 & aContract

SetEndPointL(const TDesC8 &)

IMPORT_C voidSetEndPointL(const TDesC8 &aEndPoint)

Parameters

const TDesC8 & aEndPoint

SetFacetL(const CSenFacet &)

IMPORT_C TIntSetFacetL(const CSenFacet &aFacet)[virtual]

Parameters

const CSenFacet & aFacet

SetFrameworkIdL(const TDesC8 &)

IMPORT_C voidSetFrameworkIdL(const TDesC8 &aFrameworkID)
Setter for the framework ID. The developer may use a FrameworkID to search for a session of (i.e. connection to) a certain service invocation framework.
Since
Series60 3.0

Parameters

const TDesC8 & aFrameworkID

SetIapIdL(TUint32)

IMPORT_C voidSetIapIdL(TUint32aIapId)[virtual]

Parameters

TUint32 aIapId

SetIdentityProviderIdsL(CSenIdentityProviderIdArray8 &)

IMPORT_C voidSetIdentityProviderIdsL(CSenIdentityProviderIdArray8 &aList)[virtual]

Parameters

CSenIdentityProviderIdArray8 & aList

SetPolicyL(const TDesC8 &)

IMPORT_C TIntSetPolicyL(const TDesC8 &aName)

Method provides convenient way to add a new value in Client Policy This method will add elements such as <SOAP12> or <UsernameTokenOverTLS> in the Policy to be used by stack. Infact this method adds a new element in xml representation of ServicePolicy.

Parameters

const TDesC8 & aNameis the Name of the attribute.

SetPolicyL(const TDesC8 &, const TDesC8 &)

IMPORT_C TIntSetPolicyL(const TDesC8 &aName,
const TDesC8 &aValue
)

Method provides convenient way to add a new value in Client Policy This method will add elements such as <Addressing> in the Policy to be used by stack. Infact this method adds a new element in xml representation of ServicePolicy and adds its value as contents of the element. <Addressing>http://schemas.xmlsoap.org/ws/2004/03/addressing</Addressing>

Parameters

const TDesC8 & aNameis the Name of the Policy attribute.
const TDesC8 & aValueis the Contents of the Policy attribute.

SetPolicyL(const TDesC8 &, const TDesC8 &, const TDesC8 &, const TDesC8 &)

IMPORT_C TIntSetPolicyL(const TDesC8 &aName,
const TDesC8 &aValue,
const TDesC8 &aAttribName,
const TDesC8 &aAttribValue
)

Method provides convenient way to add a new value in Client Policy This method will add elements such as <Addressing> in the Policy to be used by stack, plus it will add one specified attribute (name and value) for that element. Infact this method adds a new element - and it's attribute - in the xml representation of ServicePolicy element, which is direct child to ServiceDescription (root element) document. <MetadataEndpoint method="GET">http://www.mypolicyendpoint.com/policy2/</MetadataEndpoint>

Parameters

const TDesC8 & aNameis the Name of the Policy attribute.
const TDesC8 & aValueis the Contents of the Policy attribute.
const TDesC8 & aAttribNameis the Name of the attribute in element aName
const TDesC8 & aAttribValueis the Contents of the aAttribName attribute.

SetPromptUserInfoL(TBool)

IMPORT_C voidSetPromptUserInfoL(TBoolaPromptUserInfoMode)
Setter for userinfo (KSenAttrPromptUserInfo) attribute, which
  • password notifier dialog is shown to end-user or not, when authentication fails (due wrong, or incomplete userinfo).

Parameters

TBool aPromptUserInfoModeEFalse dictates that an error must be returned when creating a service connection and userinfo is not accepted by (remote) authentication, instead of showing the dialog. ETrue (or if attribute does not exist in this XML SD) means that end-user should be prompted (default behaviour). The number of retry attempts (each showing a dialog) is service invocation framework spesific; typically 3 retries are permitted.

SetProviderIdL(const TDesC8 &)

IMPORT_C TIntSetProviderIdL(const TDesC8 &aProviderID)
Setter for (identity) provider ID
Since
Series60 5.0

Parameters

const TDesC8 & aProviderIDthe unique identifier of the (identity) provider

SetSnapIdL(TUint32)

IMPORT_C voidSetSnapIdL(TUint32aIapId)

Sets the SNAP ID.

Parameters

TUint32 aIapIdA TUint32 Snap ID

SetTransportCueL(const TDesC8 &)

IMPORT_C TIntSetTransportCueL(const TDesC8 &aTransportCue)

Parameters

const TDesC8 & aTransportCue

SetTransportPropertiesL(const TDesC8 &)

IMPORT_C TIntSetTransportPropertiesL(const TDesC8 &aProperties)

Parameters

const TDesC8 & aProperties

SnapId(TUint32 &)

IMPORT_C TIntSnapId(TUint32 &aCurrentIapId)

Gets the SNAP ID.

Parameters

TUint32 & aCurrentIapId

StartElementL(const TDesC8 &, const TDesC8 &, const TDesC8 &, const RAttributeArray &)

IMPORT_C voidStartElementL(const TDesC8 &aNsUri,
const TDesC8 &aLocalName,
const TDesC8 &aQName,
const RAttributeArray &aAttributes
)[protected, virtual]
Callback function which implements the XML content handler interface.
Since
Series60 3.0

Parameters

const TDesC8 & aNsUri
const TDesC8 & aLocalNameThe local name of the new element
const TDesC8 & aQNameThe qualified name of the new element
const RAttributeArray & aAttributesThe attributes of the new element

TransportCue()

IMPORT_C TPtrC8TransportCue()

Getter for transport cue, assuming that attribute has been set, and that has "cue" -attribute.

TransportPropertiesL(HBufC8 *&)

IMPORT_C TIntTransportPropertiesL(HBufC8 *&aProperties)

Parameters

HBufC8 *& aProperties

WriteAsXMLToL(RWriteStream &)

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

Parameters

RWriteStream & aWriteStreamto write into.

Member Data Documentation

CSenCredential * iCredential

CSenCredential *iCredential[private]

RCredentialList iCredentialList

RCredentialList iCredentialList[private]

TTime iNotOnOrAfter

TTime iNotOnOrAfter[private]

CSenProviderPolicy * iProviderPolicy

CSenProviderPolicy *iProviderPolicy[private]

CSenServicePolicy * iServicePolicy

CSenServicePolicy *iServicePolicy[private]

const TDescriptionClassType iType

const TDescriptionClassTypeiType[protected]