Kafka.Client.Request.ProducerRequest.GetInternalBytes C# (CSharp) Метод

GetInternalBytes() приватный Метод

Gets the bytes representing the request which is used when generating a multi-request.
The GetBytes method is used for sending a single RequestType.Produce. It prefixes this byte array with the request type and the number of messages. This method is used to supply the MultiProducerRequest with the contents for its message.
private GetInternalBytes ( ) : byte[]
Результат byte[]
        internal byte[] GetInternalBytes()
        {
            List<byte> messagePack = new List<byte>();
            foreach (Message message in Messages)
            {
                byte[] messageBytes = message.GetBytes();
                messagePack.AddRange(BitWorks.GetBytesReversed(messageBytes.Length));
                messagePack.AddRange(messageBytes);
            }

            byte[] topicLengthBytes = BitWorks.GetBytesReversed(Convert.ToInt16(Topic.Length));
            byte[] topicBytes = Encoding.UTF8.GetBytes(Topic);
            byte[] partitionBytes = BitWorks.GetBytesReversed(Partition);
            byte[] messagePackLengthBytes = BitWorks.GetBytesReversed(messagePack.Count);
            byte[] messagePackBytes = messagePack.ToArray();

            List<byte> encodedMessageSet = new List<byte>();
            encodedMessageSet.AddRange(topicLengthBytes);
            encodedMessageSet.AddRange(topicBytes);
            encodedMessageSet.AddRange(partitionBytes);
            encodedMessageSet.AddRange(messagePackLengthBytes);
            encodedMessageSet.AddRange(messagePackBytes);

            return encodedMessageSet.ToArray();
        }