void CClassB::ExternalizeL(RWriteStream& aStream) const { aStream << iFixBuffer; aStream.WriteInt32L(iIntValue); aStream.WriteUint32L(iUintValue); aStream.WriteReal64L(iRealValue); }
// ----------------------------------------------------------------------------- // CHttpCacheEntry::Externalize // // ----------------------------------------------------------------------------- // void CHttpCacheEntry::ExternalizeL( RWriteStream& aWriteStream, const TDesC& aDirectory ) { // check directory matches filename ASSERT(aDirectory.CompareF(iFileName->Left(aDirectory.Length())) == 0); // url length aWriteStream.WriteInt32L( iUrl->Length() ); // url aWriteStream.WriteL( iUrl->Des() ); // filename // know that filenames are 8 chars and no extension. Can reconstruct on // import from directory and last char. See HttpCacheUtil::GenerateNameLC. aWriteStream.WriteL( iFileName->Des().Right( KFilenameLength ) ); // la aWriteStream.WriteReal64L( iLastAccessed ); // ref aWriteStream.WriteUint32L( iRef ); // size aWriteStream.WriteUint32L( iBodySize ); // size aWriteStream.WriteUint32L( iHeaderSize ); // protected aWriteStream.WriteInt32L( iProtected ); // header data length aWriteStream.WriteInt32L( iHeaderBuffer->Length() ); // header data aWriteStream.WriteL( iHeaderBuffer->Des() ); }
// ----------------------------------------------------------------------------- // CSyncMLFilterProperty::ExternalizeL // Externalizes filter property. // ----------------------------------------------------------------------------- EXPORT_C void CSyncMLFilterProperty::ExternalizeL( RWriteStream& aStream ) const { if ( iDisplayName ) { aStream.WriteUint32L( iDisplayName->Length() ); aStream << iDisplayName->Des(); } else { aStream.WriteUint32L( 0 ); } // data type for default values aStream.WriteInt8L( ( TInt8 )iDataTypeForDefaultValues ); // data type for query value aStream.WriteInt8L( ( TInt8 )iDataTypeForQueryValue ); // max text length aStream.WriteUint32L( iMaxTextLength ); // default values switch( iDataTypeForDefaultValues ) { case ESyncMLDataTypeBool: case ESyncMLDataTypeNumber: { aStream.WriteInt32L( iDefaultValueIntOrBoolList.Count() ); for ( TInt i = 0; i < iDefaultValueIntOrBoolList.Count(); i++ ) { aStream.WriteInt32L( iDefaultValueIntOrBoolList[i] ); } break; } case ESyncMLDataTypeTime: case ESyncMLDataTypeDate: { aStream.WriteInt32L( iDefaultValueDateOrTimeList.Count() ); for ( TInt i = 0; i < iDefaultValueDateOrTimeList.Count(); i++ ) { aStream.WriteReal64L( ( iDefaultValueDateOrTimeList[i] )->Int64() ); } break; } case ESyncMLDataTypeText8: { aStream.WriteInt32L( iDefaultValueText8List.Count() ); for ( TInt i = 0; i < iDefaultValueText8List.Count(); i++ ) { if ( iDefaultValueText8List[i] ) { aStream.WriteUint32L( iDefaultValueText8List[i]->Length() ); aStream << *iDefaultValueText8List[i]; } else { aStream.WriteInt32L( 0 ); } } break; } case ESyncMLDataTypeText16: { aStream.WriteInt32L( iDefaultValueText16List.Count() ); for ( TInt i = 0; i < iDefaultValueText16List.Count(); i++ ) { if ( iDefaultValueText16List[i] ) { aStream.WriteUint32L( iDefaultValueText16List[i]->Length() ); aStream << *iDefaultValueText16List[i]; } else { aStream.WriteInt32L( 0 ); } } break; } default: { aStream.WriteInt32L( 0 ); break; } } // default values and query values switch( iDataTypeForQueryValue ) { case ESyncMLDataTypeBool: case ESyncMLDataTypeNumber: { aStream.WriteInt32L( iQueryValueIntOrBool ); break; } case ESyncMLDataTypeTime: case ESyncMLDataTypeDate: { aStream.WriteReal64L( iQueryValueDateOrTime.Int64() ); break; } case ESyncMLDataTypeText8: { if ( iQueryValueText8 ) { aStream.WriteUint32L( iQueryValueText8->Length() ); aStream << iQueryValueText8->Des(); } else { aStream.WriteUint32L( 0 ); } break; } case ESyncMLDataTypeText16: { if ( iQueryValueText16 ) { aStream.WriteUint32L( iQueryValueText16->Length() ); aStream << iQueryValueText16->Des(); } else { aStream.WriteUint32L( 0 ); } break; } default: { aStream.WriteInt32L( 0 ); break; } } // default value selection aStream.WriteInt32L( iDefaultValueSelected.Count() ); for ( TInt i = 0; i < iDefaultValueSelected.Count(); i++ ) { aStream.WriteInt32L( iDefaultValueSelected[i] ); } // can use query value aStream.WriteInt8L( iCanUseQueryValue ); // supports multiple selection aStream.WriteInt8L( iSupportsMultpleSelection ); // supports empty selection aStream.WriteInt8L( iSupportsEmptySelection ); // query value selected aStream.WriteInt8L( iQueryValueSelected ); }