/* * 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); } } }