using SuperSocket.ProtoBase; using System; using System.Buffers; using System.Collections.Generic; using System.Text; using System.Linq; namespace IStation.Server { public class MyPipeLineFilter : TerminatorPipelineFilter { public MyPipeLineFilter() :base(null) { } public MyPipeLineFilter(ReadOnlyMemory terminator) : base(terminator) { } public override PackageInfo Filter(ref SequenceReader reader) { var sequeue = reader.Sequence; var info = DecodePackage(ref sequeue); reader.AdvanceToEnd(); return info; } protected override PackageInfo DecodePackage(ref ReadOnlySequence buffer) { var bts = buffer.ToArray(); return new PackageInfo(bts); } } }