* @return {@code true} on success.
* @throws DataStoreException If an error occurred while reading more bytes.
*/
final boolean prefetch() throws DataStoreException {
try {
final ChannelDataInput c = getView(ChannelDataInput.class);
if (c != null) {
return c.prefetch() >= 0;
}
/*
* The above code is the usual case. The code below this point is the fallback used when only
* an ImageInputStream was available. In such case, the ByteBuffer can only be the one created
* by the above createByteBuffer() method, which is known to be backed by a writable array.