private boolean checkWithinLimits(int size) throws DataLenghtLimitException { if ((count + size) > maxLen) { if (failOnTooMuchData) { throw new DataLenghtLimitException(); } else { return false; } } return true; } }
private boolean checkWithinLimits(int size) throws DataLenghtLimitException { if ((count + size) > maxLen) { if (failOnTooMuchData) { throw new DataLenghtLimitException(); } else { return false; } } return true; } }
private boolean checkWithinLimits(int size) throws DataLenghtLimitException { if ((count + size) > maxLen) { if (failOnTooMuchData) { throw new DataLenghtLimitException(); } else { return false; } } return true; } }
@Override public int read() throws IOException { if (!failOnTooMuchData && count >= maxLen) { return -1; } int res = super.read(); if (res != -1) { count++; if (failOnTooMuchData && count > maxLen) { throw new DataLenghtLimitException(); } } return res; }
@Override public int read(byte[] b, int off, int len) throws IOException { if (!failOnTooMuchData && count >= maxLen) { return -1; } int dataRead = super.read(b, off, failOnTooMuchData ? len : (int) Math.min(len, maxLen - count)); if (dataRead > 0 && count + dataRead > maxLen && failOnTooMuchData) { throw new DataLenghtLimitException(); } return dataRead; }
@Override public int read() throws IOException { if (!failOnTooMuchData && count >= maxLen) { return -1; } int res = super.read(); if (res != -1) { count++; if (failOnTooMuchData && count > maxLen) { throw new DataLenghtLimitException(); } } return res; }
@Override public int read(byte[] b, int off, int len) throws IOException { if (!failOnTooMuchData && count >= maxLen) { return -1; } int dataRead = super.read(b, off, failOnTooMuchData ? len : (int) Math.min(len, maxLen - count)); if (dataRead > 0 && count + dataRead > maxLen && failOnTooMuchData) { throw new DataLenghtLimitException(); } return dataRead; }
@Override public int read() throws IOException { if (!failOnTooMuchData && count >= maxLen) { return -1; } int res = super.read(); if (res != -1) { count++; if (failOnTooMuchData && count > maxLen) { throw new DataLenghtLimitException(); } } return res; }
@Override public int read(byte[] b, int off, int len) throws IOException { if (!failOnTooMuchData && count >= maxLen) { return -1; } int dataRead = super.read(b, off, failOnTooMuchData ? len : (int) Math.min(len, maxLen - count)); if (dataRead > 0 && count + dataRead > maxLen && failOnTooMuchData) { throw new DataLenghtLimitException(); } return dataRead; }
@Override public long skip(long n) throws IOException { if (!failOnTooMuchData && count >= maxLen) { return -1; } long skip = super.skip(failOnTooMuchData ? n : (int) Math.min(n, maxLen - count)); if (skip > 0 && count + skip > maxLen && failOnTooMuchData) { throw new DataLenghtLimitException(); } return skip; }
@Override public long skip(long n) throws IOException { if (!failOnTooMuchData && count >= maxLen) { return -1; } long skip = super.skip(failOnTooMuchData ? n : (int) Math.min(n, maxLen - count)); if (skip > 0 && count + skip > maxLen && failOnTooMuchData) { throw new DataLenghtLimitException(); } return skip; }
@Override public long skip(long n) throws IOException { if (!failOnTooMuchData && count >= maxLen) { return -1; } long skip = super.skip(failOnTooMuchData ? n : (int) Math.min(n, maxLen - count)); if (skip > 0 && count + skip > maxLen && failOnTooMuchData) { throw new DataLenghtLimitException(); } return skip; }