@SuppressWarnings("unchecked") private P byteBufferToPage(ByteBuffer buffer){
  try (InputStream bais=new ByteBufferInputStream(buffer);ObjectInputStream ois=new ObjectInputStream(bais)){
    int type=ois.readInt();
    if (type == EMPTY_PAGE) {
      return null;
    }
 else     if (type == FILLED_PAGE) {
      return (P)ois.readObject();
    }
 else {
      throw new IllegalArgumentException("Unknown type: " + type);
    }
  }
 catch (  IOException|ClassNotFoundException e) {
    LoggingUtil.exception(e);
    return null;
  }
}

@ SuppressWarnings ( "unchecked" ) private P byteBufferToPage ( ByteBuffer buffer ) { try ( InputStream bais = new ByteBufferInputStream ( buffer ) ; ObjectInputStream ois = new ObjectInputStream ( bais ) ) { int type = ois . readInt ( ) ; if ( type == EMPTY_PAGE ) { return null ; } else if ( type == FILLED_PAGE ) { return ( P ) ois . readObject ( ) ; } else { throw new IllegalArgumentException ( "Unknown type: " + type ) ; } } catch ( IOException | ClassNotFoundException e ) { LoggingUtil . exception ( e ) ; return null ; } }
reconstruct a serialized object from the specified byte array .
