class PosixFallocate {

    private PosixFallocate() {
    }

    public static void fallocate(FileDescriptor descriptor, long offset, long length) throws IOException {<FILL_FUNCTION_BODY>}

    private static int getNativeFileDescriptor(FileDescriptor descriptor) throws IOException {
        try {
            final Field field = descriptor.getClass().getDeclaredField("fd");
            Jvm.setAccessible(field);
            return (int) field.get(descriptor);
        } catch (final Exception e) {
            throw new IOException("unsupported FileDescriptor implementation", e);
        }
    }
}

        int fd = getNativeFileDescriptor(descriptor);
        if (fd != -1) {
            int ret = PosixAPI.posix().fallocate(getNativeFileDescriptor(descriptor), 0, offset, length);
            if (ret != 0) {
                throw new IOException("posix_fallocate() returned " + ret);
            }
        }
    
<no_super_class>