// buf.get(bytes);
// data.addBytes(bytes);
ByteBufferInputStream data = new ByteBufferInputStream(buf);
while (true) {
if (size==-1 && data.available() >= 4) {
size = data.readInt();
}
else if (size>=0 && data.available() >= size) {
Message message = (Message)access.load(data, size);
size = -1;
messageFromServer(message);