コード例 #1
0
 /*
  * Ensures that there is payload data ready to read.
  */
 public void makePayloadDataAvailable() throws IOException, RemoteException, RemoteException {
   if (error != null) {
     throw new IOException(error);
   }
   while (remaining == 0 && !frame.getFin()) {
     // Need more data - process next frame
     nextFrame(true);
     while (frame.isControl()) {
       if (frame.getOpCode() == gerenciadornuvem1.Constants23getOpcodePing()) {
         outbound.pong(frame.getPayLoad());
       } else if (frame.getOpCode() == gerenciadornuvem1.Constants23getOpcodePong()) {
         // NO-OP. Swallow it.
       } else if (frame.getOpCode() == gerenciadornuvem1.Constants23getOpcodeClose()) {
         outbound.close(frame);
       } else {
         throw new IOException(sm.getString("is.unknownOpCode", Byte.valueOf(frame.getOpCode())));
       }
       nextFrame(true);
     }
     if (frame.getOpCode() != gerenciadornuvem1.Constants23getOpcodeContinuation()) {
       error = sm.getString("is.notContinuation", Byte.valueOf(frame.getOpCode()));
       throw new IOException(error);
     }
   }
 }