Exemplo n.º 1
0
 def sendRequest(self,request):
         requestBytes = self.getRequestBytes(request);
         self.jafkaSocket.sendall(bytearray(requestBytes));
         responseBytes = self.jafkaSocket.recv(64 * 1024);#It is the same as java client
         # print("receive responseBytes:"+str(len(responseBytes)));
         responseByteBuffer = ByteBuffer(responseBytes,None);
         msgByteSize = responseByteBuffer.getInt();
         resultCode = responseByteBuffer.getShort();
         if(resultCode != 0):
             print("Can not get message success which resultCode:"+str(resultCode));
             return;
         while(len(responseBytes) != msgByteSize + 4):#if not receive completely we will get when read complete
             responseBytes = responseBytes + self.jafkaSocket.recv(64 * 1024);
         responseByteBuffer = ByteBuffer(responseBytes,None);
         responseByteBuffer.currentIndex = responseByteBuffer.currentIndex + 6;#add 6 is because the responseBytes is new and we don't need read msgByteSize and resultCode
         # print("receive responseBytes length:"+str(len(responseBytes)));
         # print "receive message size:"+str(msgByteSize);
         # print("resultCode:"+str(resultCode));
         messageByteBuffer = responseByteBuffer.slice();
         return messageByteBuffer;
Exemplo n.º 2
0
 def sendRequest(self, request):
     requestBytes = self.getRequestBytes(request)
     self.jafkaSocket.sendall(bytearray(requestBytes))
     responseBytes = self.jafkaSocket.recv(64 * 1024)
     #It is the same as java client
     # print("receive responseBytes:"+str(len(responseBytes)));
     responseByteBuffer = ByteBuffer(responseBytes, None)
     msgByteSize = responseByteBuffer.getInt()
     resultCode = responseByteBuffer.getShort()
     if (resultCode != 0):
         print("Can not get message success which resultCode:" +
               str(resultCode))
         return
     while (len(responseBytes) != msgByteSize +
            4):  #if not receive completely we will get when read complete
         responseBytes = responseBytes + self.jafkaSocket.recv(64 * 1024)
     responseByteBuffer = ByteBuffer(responseBytes, None)
     responseByteBuffer.currentIndex = responseByteBuffer.currentIndex + 6
     #add 6 is because the responseBytes is new and we don't need read msgByteSize and resultCode
     # print("receive responseBytes length:"+str(len(responseBytes)));
     # print "receive message size:"+str(msgByteSize);
     # print("resultCode:"+str(resultCode));
     messageByteBuffer = responseByteBuffer.slice()
     return messageByteBuffer