using SuperSocket.ProtoBase; using System; using System.Buffers; using System.Collections.Generic; using System.Text; using System.Linq; namespace IStation.Server { /// /// /// internal class PipeLineFilter : FixedHeaderPipelineFilter { /// /// /// public PipeLineFilter() : base(20) { } /// /// /// protected override int GetBodyLengthFromHeader(ref ReadOnlySequence buffer) { if (buffer.Length < 20) return default; return BitConverter.ToInt32(buffer.ToArray(), 16); } /// /// 将数据包解析成 MyPackage 的实例 /// protected override PackageInfo DecodePackage(ref ReadOnlySequence buffer) { if (buffer.Length < 20) return default; var reader = buffer.ToArray(); return new PackageInfo(reader); } } }