public int read(byte[] b, int off, int len) throws IOException { if (b == null) throw new NullPointerException(); else if (off < 0 || off > b.length || len < 0 || (off + len) > b.length || (off + len) < 0) throw new IndexOutOfBoundsException(); else if (len == 0) return 0; return nativeRead(impl.getFd(), b, off, len); }
public int read() throws IOException { return nativeRead(impl.getFd()); }
public void close() throws IOException { impl.shutdownInput(); }