123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- using System.IO;
- using System.Text;
- namespace FunnyCommon.Remoting.Protocol
- {
- public class Response
- {
- public bool Success { get; set; }
- public string Message { get; set; }
- public byte[] ToBytes()
- {
- //var msg = Message ?? "";
- //var msgLen = (byte)Encoding.UTF8.GetByteCount(msg);
- //var buf = new byte[msgLen + 2];
- var buf = new byte[1];
- buf[0] = (byte)(Success ? 1 : 0);
- //buf[1] = msgLen;
- //Encoding.UTF8.GetBytes(msg, 0, msg.Length, buf, 2);
- return buf;
- }
- public static Response ReadFromStream(Stream stream)
- {
- using (var br = new BinaryReader(stream, Encoding.UTF8, true))
- {
- var succ = br.ReadByte();
- //var msgLen = br.ReadByte();
- //var msgBuf = br.ReadBytes(msgLen);
- var obj = new Response
- {
- Success = succ == 1,
- //Message = Encoding.UTF8.GetString(msgBuf)
- };
- return obj;
- }
- }
- public override string ToString()
- {
- return (Success ? "Success" : "Fail")
- + (string.IsNullOrWhiteSpace(Message)
- ? ""
- : $", Message:{Message}"
- );
- }
- }
- }
|