public void storeCheckpoint(OutputBuffer buffer) throws IOException {
   if (logger.level <= Logger.FINER) logger.log("storeCheckpoint " + nextSendTime);
   buffer.writeInt(31173);
   buffer.writeLong(nextSendTime);
   buffer.writeBoolean(dest != null);
   if (dest != null) dest.serialize(buffer);
   ByteArrayOutputStream baos = new ByteArrayOutputStream();
   new ObjectOutputStream(baos).writeObject(rand);
   byte[] bytes = baos.toByteArray();
   buffer.writeInt(bytes.length);
   buffer.write(bytes, 0, bytes.length);
   if (logger.level <= Logger.FINEST)
     logger.log("storeCheckpoint:" + Arrays.toString(((SimpleOutputBuffer) buffer).getBytes()));
 }
 public void serialize(HandleImpl i, OutputBuffer buf) throws IOException {
   i.serialize(buf);
 }
 public HandleImpl deserialize(InputBuffer buf) throws IOException {
   return HandleImpl.build(buf);
 }