protected ByteBuffer readResponse(int expected) { ByteBuffer def = ByteBuffer.allocate(8); def.order(myOrder); readAll(def); def.rewind(); if (def.length() == 0) { errorReturned = BUFFER_READ_ERROR; throw new IOException("Error reading from the buffer server."); } short version = def.getShort(); short _expected = def.getShort(); if (version != VERSION) { errorReturned = VERSION_ERROR; throw new IOException("Invalid VERSION returned."); } else if (_expected != expected) { errorReturned = BUFFER_READ_ERROR; //throw new IOException("Error returned from FieldTrip buffer server."); } else { errorReturned = NO_ERROR; } int size = def.getInt(); ByteBuffer buf = ByteBuffer.allocate(size); buf.order(myOrder); readAll(buf); buf.rewind(); return(buf); }