/// <inheritdoc /> public override void WriteMember(TContainingType obj, IWireStreamWriterStrategy dest) { WriteCollectionSizeToField(obj); //TODO: Should we spend CPU cycles to reset the original value? This kind of changes the state of the DTO DecoratedMediator.WriteMember(obj, dest); }
/// <inheritdoc /> public override Task SetMemberAsync(TContainingType obj, IWireStreamReaderStrategyAsync source) { //We need to reconvert the size back to bytes to reinsert into the stream //so that the collection can recieve it and then be able to deserialize the elements. byte[] bytes = ((TSizeType)SizeMemberGetter.Getter(obj)).Reinterpret(); //We don't need to modify how we set the size member return(DecoratedMediator.SetMemberAsync(obj, source.PreprendWithBytesAsync(bytes))); }
/// <inheritdoc /> public void SetMember(TContainingType obj, IWireStreamReaderStrategy source) { //Check if we should read if (!(bool)isReadWriteEnabledGetter.Getter(obj)) { return; } DecoratedMediator.SetMember(obj, source); }
/// <inheritdoc /> public void WriteMember(TContainingType obj, IWireStreamWriterStrategy dest) { //Check if we should read if (!(bool)isReadWriteEnabledGetter.Getter(obj)) { return; } DecoratedMediator.WriteMember(obj, dest); }
/// <inheritdoc /> public async Task WriteMemberAsync(TContainingType obj, IWireStreamWriterStrategyAsync dest) { //Check if we should read if (!(bool)isReadWriteEnabledGetter.Getter(obj)) { return; } await DecoratedMediator.WriteMemberAsync(obj, dest) .ConfigureAwait(false); }
/// <inheritdoc /> public async Task SetMemberAsync(object obj, IWireStreamReaderStrategyAsync source) { //Check if we should read if (!(bool)isReadWriteEnabledGetter.Getter((TContainingType)obj)) { return; } await DecoratedMediator.SetMemberAsync(obj, source) .ConfigureAwait(false); }
/// <inheritdoc /> public override Task WriteMemberAsync(TContainingType obj, IWireStreamWriterStrategyAsync dest) { return(DecoratedMediator.WriteMemberAsync(obj, new SkipSomeBytesWireStreamWriterStrategyDecoratorAsync(dest, SizeOfCollectionSizeType))); }
/// <inheritdoc /> public override void WriteMember(TContainingType obj, IWireStreamWriterStrategy dest) { //TODO: Should we spend CPU cycles to reset the original value? This kind of changes the state of the DTO DecoratedMediator.WriteMember(obj, new SkipSomeBytesWireStreamWriterStrategyDecorator(dest, SizeOfCollectionSizeType)); }
/// <inheritdoc /> public override Task SetMemberAsync(TContainingType obj, IWireStreamReaderStrategyAsync source) { //We don't need to modify how we set the size member return(DecoratedMediator.SetMemberAsync(obj, source)); }
/// <inheritdoc /> public override Task WriteMemberAsync(TContainingType obj, IWireStreamWriterStrategyAsync dest) { WriteCollectionSizeToField(obj); return(DecoratedMediator.WriteMemberAsync(obj, dest)); }
/// <inheritdoc /> public override void SetMember(TContainingType obj, IWireStreamReaderStrategy source) { //We don't need to modify how we set the size member DecoratedMediator.SetMember(obj, source); }