// ----------------------------------------------------------------------------- void CPresenceCacheBuddyInfo::SetAnyFieldL( const TDesC16& aKey, const TDesC8& aValue ) { if( NPresenceCacheFieldName::KExpiry().CompareF( aKey ) == 0 ) { TPckg<TInt64> expiryPck( iExpiryTime ); expiryPck.Copy( aValue ); // write also to key-value map } // Remove old values first RemoveField( aKey ); HBufC8* valueBuffer = aValue.AllocLC(); HBufC* keyBuffer = aKey.AllocLC(); TInt insertPos = iIds.Find(0); if ( insertPos < 0 ) { insertPos = iIds.Count(); iIds.Append( keyBuffer ); iValues.Append( valueBuffer ); } else { iIds[insertPos] = keyBuffer; iValues[insertPos] = valueBuffer; } iHashMap.InsertL( keyBuffer, insertPos ); CleanupStack::Pop( keyBuffer ); CleanupStack::Pop( valueBuffer ); }
// ----------------------------------------------------------------------------- // CSyncMLFilterProperty::AddDefaultValueText16L // Adds default value for text16 property. // This is useful only if data type is text16. // ----------------------------------------------------------------------------- EXPORT_C void CSyncMLFilterProperty::AddDefaultValueText16L( TDesC16& aNewDefaultValue, const TBool aSelected ) { if ( iDataTypeForDefaultValues != ESyncMLDataTypeText16 ) { User::Leave( KErrNotSupported ); } if ( aNewDefaultValue.Length() > iMaxTextLength ) { User::Leave( KErrArgument ); } iDefaultValueText16List.AppendL( aNewDefaultValue.AllocLC() ); CleanupStack::Pop(); // aNewDefaultValue.AllocLC() iDefaultValueSelected.AppendL( aSelected ); }