public QueueSocketMsg(QueueSocketMsgType type, string name, string topic, string data) { this.Type = (byte)type; this.Name = name; this.Topic = topic; this.Data = data; }
private void SendAsyncBase(QueueSocketMsgType type, byte[] content) { var data = QueueSocketMsg.Parse(content, type).ToBytes(); this.SendAsync(data); Actived = DateTimeHelper.Now; }
/// <summary> /// 按指定格式编码批量处理 /// </summary> /// <param name="cmdType"></param> /// <param name="name"></param> /// <param name="topic"></param> /// <param name="data"></param> /// <returns></returns> public byte[] Encode(QueueSocketMsgType cmdType, string name, string topic, string[] data) { List <byte> list = new List <byte>(); if (data != null) { foreach (var item in data) { list.AddRange(Encode(cmdType, name, topic, data)); } } return(list.ToArray()); }
public static QueueSocketMsg Parse(byte[] data, QueueSocketMsgType type) { var msg = new QueueSocketMsg(); if (data != null) { msg.BodyLength = data.Length; } else { msg.BodyLength = 0; } msg.Type = (byte)type; if (msg.BodyLength > 0) { msg.Content = data; } return(msg); }
/// <summary> /// 按指定格式编码 /// </summary> /// <param name="cmdType"></param> /// <param name="contents"></param> /// <returns></returns> public byte[] Encode(QueueSocketMsgType cmdType, string name, string topic, string data) { return(QCoder.Encode(new QueueSocketMsg(cmdType, name, topic, data))); }
public QueueSocketMsg(QueueSocketMsgType type, string name, string topic) : this(type, name, topic, string.Empty) { }
public QueueSocketMsg(QueueSocketMsgType type) : this(type, string.Empty) { }
private void ReplyBase(IUserToken ut, QueueSocketMsgType type, byte[] content) { var byts = QueueSocketMsg.Parse(content, type).ToBytes(); base.Send(ut, byts); }