| | |
| | | using ScottPlot.Colormaps; |
| | | using SuperSocket.SocketBase; |
| | | using SuperSocket.SocketBase; |
| | | using SuperSocket.SocketBase.Protocol; |
| | | using System; |
| | | using System.Collections; |
| | | using System.Collections.Generic; |
| | | using System.Text; |
| | | |
| | |
| | | public override StringRequestInfo Filter(byte[] readBuffer, int offset, int length, bool toBeCopied, out int rest) |
| | | { |
| | | rest = 0; |
| | | StringBuilder sb = new StringBuilder(); |
| | | int i = offset; |
| | | List<byte> bytes = new List<byte>(); |
| | | while (i < readBuffer.Length) |
| | |
| | | { |
| | | break; |
| | | } |
| | | sb.Append((char)b); |
| | | bytes.Add(b); |
| | | } |
| | | byte[] arr = bytes.ToArray(); |
| | | return new StringRequestInfo(DateTime.Now + "", Encoding.UTF8.GetString(arr), null);//sb.ToString() |
| | | return new StringRequestInfo(DateTime.Now.ToString("yyyyMMddHHmmssfff"), Encoding.UTF8.GetString(arr), null);//sb.ToString() |
| | | } |
| | | } |
| | | |
| | | public class StringParser : IRequestInfoParser<StringRequestInfo> |
| | | { |
| | | |
| | | public StringRequestInfo ParseRequestInfo(string source) |
| | | { |
| | | return new StringRequestInfo(DateTime.Now.ToString("yyyyMMddHHmmssfff"), source, null); |
| | | } |
| | | } |
| | | |
| | | //public class TcpServer : AppServer<TcpSession> |
| | | //{ |
| | | // public TcpServer() : base(new DefaultReceiveFilterFactory<DTReceiveFilter, StringRequestInfo>()) |
| | | // { |
| | | |
| | | // } |
| | | //} |
| | | |
| | | public class TcpServer : AppServer<TcpSession> |
| | | { |
| | | public TcpServer() : base(new DefaultReceiveFilterFactory<DTReceiveFilter, StringRequestInfo>()) |
| | | public TcpServer() : base(new TerminatorReceiveFilterFactory("\n", Encoding.UTF8, new StringParser())) |
| | | { |
| | | |
| | | } |