public static byte[] EncodeSendMessageRequest(SendMessageRequest request) { //queueId var queueIdBytes = BitConverter.GetBytes(request.QueueId); //messageCode var messageCodeBytes = BitConverter.GetBytes(request.Message.Code); //createdTimeTicks var messageCreatedTimeTicksBytes = BitConverter.GetBytes(request.Message.CreatedTime.Ticks); //topic var topicBytes = Encoding.UTF8.GetBytes(request.Message.Topic); var topicLengthBytes = BitConverter.GetBytes(topicBytes.Length); //tag var tagBytes = EmptyBytes; if (!string.IsNullOrEmpty(request.Message.Tag)) { tagBytes = Encoding.UTF8.GetBytes(request.Message.Tag); } var tagLengthBytes = BitConverter.GetBytes(tagBytes.Length); return Combine( queueIdBytes, messageCodeBytes, messageCreatedTimeTicksBytes, topicLengthBytes, topicBytes, tagLengthBytes, tagBytes, request.Message.Body); }
public static byte[] EncodeSendMessageRequest(SendMessageRequest request) { var queueIdBytes = BitConverter.GetBytes(request.QueueId); var codeBytes = BitConverter.GetBytes(request.Message.Code); var topicBytes = Encoding.UTF8.GetBytes(request.Message.Topic); var topicLengthBytes = BitConverter.GetBytes(topicBytes.Length); var routingKeyBytes = Encoding.UTF8.GetBytes(request.RoutingKey); var routingKeyLengthBytes = BitConverter.GetBytes(routingKeyBytes.Length); return Combine(queueIdBytes, codeBytes, topicLengthBytes, topicBytes, routingKeyLengthBytes, routingKeyBytes, request.Message.Body); }
public static byte[] EncodeSendMessageRequest(SendMessageRequest request) { var queueIdBytes = BitConverter.GetBytes(request.QueueId); var topicBytes = Encoding.UTF8.GetBytes(request.Message.Topic); var topicLengthBytes = BitConverter.GetBytes(topicBytes.Length); var data = new byte[queueIdBytes.Length + topicLengthBytes.Length + topicBytes.Length + request.Message.Body.Length]; queueIdBytes.CopyTo(data, 0); topicLengthBytes.CopyTo(data, queueIdBytes.Length); topicBytes.CopyTo(data, queueIdBytes.Length + topicLengthBytes.Length); request.Message.Body.CopyTo(data, queueIdBytes.Length + topicLengthBytes.Length + topicBytes.Length); return data; }
private RemotingRequest BuildSendMessageRequest(Message message, int queueId, object routingKey) { var request = new SendMessageRequest { Message = message, QueueId = queueId, RoutingKey = routingKey.ToString() }; var data = MessageUtils.EncodeSendMessageRequest(request); return new RemotingRequest((int)RequestCode.SendMessage, data); }
private RemotingRequest BuildSendMessageRequest(Message message, int queueId) { var request = new SendMessageRequest { Message = message, QueueId = queueId }; var data = MessageUtils.EncodeSendMessageRequest(request); return new RemotingRequest((int)RequestCode.SendMessage, data); }
private RemotingRequest BuildSendMessageRequest(Message message, int queueId) { var request = new SendMessageRequest { Message = message, QueueId = queueId }; var data = MessageUtils.EncodeSendMessageRequest(request); if (data.Length > Setting.MessageMaxSize) { throw new Exception("Message size cannot exceed max message size:" + Setting.MessageMaxSize); } return new RemotingRequest((int)RequestCode.SendMessage, data); }