public void Serialize(ref MessagePackWriter writer, MessageHeader value, MessagePackSerializerOptions options) { writer.Write(value.UserName); writer.Write(value.MessageId); writer.Write(value.CreateTime); writer.Write(value.RequestTime); writer.Write(value.IsFragmented); MsgPackUtils.WriteNullableBool(value.FirstFragment, ref writer); MsgPackUtils.WriteNullableBool(value.LastFragment, ref writer); MsgPackUtils.WriteNullableInt(value.Offset, ref writer); MsgPackUtils.WriteNullableInt(value.FullDataSize, ref writer); writer.Write((int)value.DataType); }
public MessageHeader Deserialize(ref MessagePackReader reader, MessagePackSerializerOptions options) { string userName = reader.ReadString(); string messageId = reader.ReadString(); long createTime = reader.ReadInt64(); long requestTime = reader.ReadInt64(); bool isFragmented = reader.ReadBoolean(); bool? firstFragment = MsgPackUtils.ReadNullableBool(ref reader); bool? lastFragment = MsgPackUtils.ReadNullableBool(ref reader); int? offset = MsgPackUtils.ReadNullableInt(ref reader); int? fullDataSize = MsgPackUtils.ReadNullableInt(ref reader); int dataType = reader.ReadInt32(); return(new MessageHeader(userName, messageId, createTime, requestTime, isFragmented, firstFragment, lastFragment, offset, fullDataSize, (DataType)dataType)); }