@Override public void force(boolean b) throws IOException { fs.ensureHasSpace(); inner.force(b); }
@Override public int read(ByteBuffer byteBuffer, long l) throws IOException { return inner.read(byteBuffer, l); }
@Override public long size() throws IOException { return inner.size(); }
@Override public LimitedFileChannel truncate(long l) throws IOException { return new LimitedFileChannel(inner.truncate(l), fs); }
@Override public long position() throws IOException { return inner.position(); }
@Override public LimitedFileChannel position(long l) throws IOException { return new LimitedFileChannel(inner.position(l), fs); }
@Override public int write(ByteBuffer byteBuffer) throws IOException { fs.ensureHasSpace(); return inner.write(byteBuffer); }
@Override public long write(ByteBuffer[] byteBuffers, int i, int i1) throws IOException { fs.ensureHasSpace(); return inner.write(byteBuffers, i, i1); }
@Override public void close() throws IOException { inner.close(); }
@Override public long read(ByteBuffer[] byteBuffers, int i, int i1) throws IOException { return inner.read(byteBuffers, i, i1); }
@Override public boolean isOpen() { return inner.isOpen(); }
@Override public MappedByteBuffer map(FileChannel.MapMode mapMode, long l, long l1) throws IOException { return inner.map(mapMode, l, l1); }
@Override public void writeAll(ByteBuffer src) throws IOException { fs.ensureHasSpace(); inner.writeAll(src); }
@Override public int write(ByteBuffer byteBuffer, long l) throws IOException { return inner.write(byteBuffer, l); }
@Override public FileLock tryLock() throws IOException { return inner.tryLock(); }