// ---------------------------------------------------------------------------- // CSIPClientResolver::AddClientDataL // ---------------------------------------------------------------------------- // void CSIPClientResolver::AddClientDataL( RPointerArray< CSIPClientData >& aRegistry, CImplementationInformation& aInfo, TBool aRomClient ) { TLex8 lex( aInfo.DataType() ); TUint32 uidValue( 0 ); User::LeaveIfError( lex.Val( uidValue, EHex ) ); TUid clientUid; clientUid.iUid = uidValue; const TBool romBased = ( aRomClient && aInfo.RomBased() ); TPtrC8 xml( aInfo.OpaqueData() ); const TBool dynamicCaps = ( xml.Length() == 0 ); CSIPClientData* clientData = CSIPClientData::NewLC( aInfo.ImplementationUid(), clientUid, romBased, dynamicCaps ); if ( !dynamicCaps ) { // XML specified in resource-file. iClientDataParser->ParseL( clientData, xml ); } aRegistry.AppendL( clientData ); CleanupStack::Pop( clientData ); }
void CMMFControllerImplementationInformation::ConstructL(const CImplementationInformation& aImplInfo) { iUriSchemes = new(ELeave) CDesC8ArrayFlat(KDesCArrayGranularity); iUid = aImplInfo.ImplementationUid(); iDisplayName = aImplInfo.DisplayName().AllocL(); iVersion = aImplInfo.Version(); // Parse the opaque data... TaggedDataParser::ParseTaggedDataL(aImplInfo.OpaqueData(), *this); }
void CMMFFormatImplementationInformation::ConstructL(const CImplementationInformation& aImplInfo) { iUid = aImplInfo.ImplementationUid(); iDisplayName = aImplInfo.DisplayName().AllocL(); iBody = CMMFFormatImplementationInformation::CBody::NewL(); // Extract the rest of the data from the opaque data field of aImplInfo... // Parse the opaque data... TaggedDataParser::ParseTaggedDataL(aImplInfo.OpaqueData(), *this); }