def toBytes(self): self.totalBytes = []; self.totolMessageBytesSize = 0; for message in self.messages: self.totolMessageBytesSize = self.totolMessageBytesSize + len(message.toByteArray()); messageBodyByteBuffer = ByteBuffer(); messageBodyByteBuffer.putShort(0);#requestKey messageBodyByteBuffer.putShort(len(bytearray(self.topicName))); messageBodyByteBuffer.putBytes(bytearray(self.topicName)); messageBodyByteBuffer.putInt(-1);#partition messageBodyByteBuffer.putInt(self.totolMessageBytesSize); for message in self.messages: messageBodyByteBuffer.putBytes(message.toByteArray()); totolByteBuffer = ByteBuffer(); totolByteBuffer.putInt(len(messageBodyByteBuffer.array())); totolByteBuffer.putBytes(messageBodyByteBuffer.array()); return totolByteBuffer.array(); # request = ProducerRequest("demo",["a","b"]); # print request.toBytes(); # producter = Producer("localhost",9092); # producter.connect(); # producter.sendMessage("demo",["liao","haha"]);
def toBytes(self): self.totalBytes = [] self.totolMessageBytesSize = 0 for message in self.messages: self.totolMessageBytesSize = self.totolMessageBytesSize + len( message.toByteArray()) messageBodyByteBuffer = ByteBuffer() messageBodyByteBuffer.putShort(0) #requestKey messageBodyByteBuffer.putShort(len(bytearray(self.topicName))) messageBodyByteBuffer.putBytes(bytearray(self.topicName)) messageBodyByteBuffer.putInt(-1) #partition messageBodyByteBuffer.putInt(self.totolMessageBytesSize) for message in self.messages: messageBodyByteBuffer.putBytes(message.toByteArray()) totolByteBuffer = ByteBuffer() totolByteBuffer.putInt(len(messageBodyByteBuffer.array())) totolByteBuffer.putBytes(messageBodyByteBuffer.array()) return totolByteBuffer.array() # request = ProducerRequest("demo",["a","b"]); # print request.toBytes(); # producter = Producer("localhost",9092); # producter.connect(); # producter.sendMessage("demo",["liao","haha"]);
class StringMessage(Message): def getMessage(self): return str(self.byteBuffer.getBytes(self.msgSize)); def buildMessage(self,messageStr): self.byteBuffer = ByteBuffer(); self.byteBuffer.put(1);#magic self.byteBuffer.put(0);#attribute crcValue = binascii.crc32(messageStr); self.byteBuffer.putInt(crcValue);#crc32 self.byteBuffer.putBytes(bytearray(messageStr)); self.messageSize = len(self.byteBuffer.array()); def toByteArray(self): messageByteBuffer = ByteBuffer(); messageByteBuffer.putInt(self.messageSize); messageByteBuffer.putBytes(self.byteBuffer.array()); return messageByteBuffer.array();
class StringMessage(Message): def getMessage(self): return str(self.byteBuffer.getBytes(self.msgSize)) def buildMessage(self, messageStr): self.byteBuffer = ByteBuffer() self.byteBuffer.put(1) #magic self.byteBuffer.put(0) #attribute crcValue = binascii.crc32(messageStr) self.byteBuffer.putInt(crcValue) #crc32 self.byteBuffer.putBytes(bytearray(messageStr)) self.messageSize = len(self.byteBuffer.array()) def toByteArray(self): messageByteBuffer = ByteBuffer() messageByteBuffer.putInt(self.messageSize) messageByteBuffer.putBytes(self.byteBuffer.array()) return messageByteBuffer.array()
def toByteArray(self): messageByteBuffer = ByteBuffer() messageByteBuffer.putInt(self.messageSize) messageByteBuffer.putBytes(self.byteBuffer.array()) return messageByteBuffer.array()
def toByteArray(self): messageByteBuffer = ByteBuffer(); messageByteBuffer.putInt(self.messageSize); messageByteBuffer.putBytes(self.byteBuffer.array()); return messageByteBuffer.array();