private ITransportFrameHeader ConvertFromProto(MessageFrameHeader frameHeader) { return(_headerFactory.CreateFrameHeader( frameHeader.ChannelId.ConvertFromProtoStrict(), frameHeader.HasMore, (int)frameHeader.Length)); }
private static MessageFrameHeader MergeToProto(MessageFrameHeader proto, ITransportFrameHeader frameMessageHeader) { proto = proto ?? new MessageFrameHeader(); proto.ChannelId = proto.ChannelId.MergeFrom(frameMessageHeader.ChannelId); proto.Length = (uint)frameMessageHeader.Length; proto.HasMore = frameMessageHeader.HasMore; return(proto); }
public IPooledBuffer Handle(ITransportFrameHeader header, Nothing _) { using (var headerProto = Header.Rent()) using (var frameProto = MessageFrameHeader.Rent()) { headerProto.MessageFrame = MergeToProto(frameProto, header); return(headerProto.Serialize()); } }