home *** CD-ROM | disk | FTP | other *** search
/ S283 Planetary Science &n…he Search for Life DVD 2 / DVD-ROM.iso / install / jre1_3 / lib / rt.jar / java / io / InputStream.class (.txt) < prev    next >
Encoding:
Java Class File  |  1979-12-31  |  1.1 KB  |  90 lines

  1. package java.io;
  2.  
  3. public abstract class InputStream {
  4.    private static final int SKIP_BUFFER_SIZE = 2048;
  5.    private static byte[] skipBuffer;
  6.  
  7.    public abstract int read() throws IOException;
  8.  
  9.    public int read(byte[] var1) throws IOException {
  10.       return this.read(var1, 0, var1.length);
  11.    }
  12.  
  13.    public int read(byte[] var1, int var2, int var3) throws IOException {
  14.       if (var1 == null) {
  15.          throw new NullPointerException();
  16.       } else if (var2 >= 0 && var2 <= var1.length && var3 >= 0 && var2 + var3 <= var1.length && var2 + var3 >= 0) {
  17.          if (var3 == 0) {
  18.             return 0;
  19.          } else {
  20.             int var4 = this.read();
  21.             if (var4 == -1) {
  22.                return -1;
  23.             } else {
  24.                var1[var2] = (byte)var4;
  25.                int var5 = 1;
  26.  
  27.                try {
  28.                   for(; var5 < var3; ++var5) {
  29.                      var4 = this.read();
  30.                      if (var4 == -1) {
  31.                         break;
  32.                      }
  33.  
  34.                      if (var1 != null) {
  35.                         var1[var2 + var5] = (byte)var4;
  36.                      }
  37.                   }
  38.                } catch (IOException var7) {
  39.                }
  40.  
  41.                return var5;
  42.             }
  43.          }
  44.       } else {
  45.          throw new IndexOutOfBoundsException();
  46.       }
  47.    }
  48.  
  49.    public long skip(long var1) throws IOException {
  50.       long var3 = var1;
  51.       if (skipBuffer == null) {
  52.          skipBuffer = new byte[2048];
  53.       }
  54.  
  55.       byte[] var6 = skipBuffer;
  56.       if (var1 <= 0L) {
  57.          return 0L;
  58.       } else {
  59.          while(var3 > 0L) {
  60.             int var5 = this.read(var6, 0, (int)Math.min(2048L, var3));
  61.             if (var5 < 0) {
  62.                break;
  63.             }
  64.  
  65.             var3 -= (long)var5;
  66.          }
  67.  
  68.          return var1 - var3;
  69.       }
  70.    }
  71.  
  72.    public int available() throws IOException {
  73.       return 0;
  74.    }
  75.  
  76.    public void close() throws IOException {
  77.    }
  78.  
  79.    public synchronized void mark(int var1) {
  80.    }
  81.  
  82.    public synchronized void reset() throws IOException {
  83.       throw new IOException("mark/reset not supported");
  84.    }
  85.  
  86.    public boolean markSupported() {
  87.       return false;
  88.    }
  89. }
  90.