This is an automated email from the ASF dual-hosted git repository.

nkollar pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/avro.git


The following commit(s) were added to refs/heads/master by this push:
     new 2f20252  AVRO-2339: Remove Unused LengthLimitedInputStream (#472)
2f20252 is described below

commit 2f2025201bf937cb163d263396a097bbc5fad1b0
Author: BELUGABEHR <[email protected]>
AuthorDate: Thu Mar 7 04:32:58 2019 -0500

    AVRO-2339: Remove Unused LengthLimitedInputStream (#472)
---
 .../apache/avro/file/LengthLimitedInputStream.java | 85 ----------------------
 .../avro/file/TestLengthLimitedInputStream.java    | 58 ---------------
 2 files changed, 143 deletions(-)

diff --git 
a/lang/java/avro/src/main/java/org/apache/avro/file/LengthLimitedInputStream.java
 
b/lang/java/avro/src/main/java/org/apache/avro/file/LengthLimitedInputStream.java
deleted file mode 100644
index 2dfe5a6..0000000
--- 
a/lang/java/avro/src/main/java/org/apache/avro/file/LengthLimitedInputStream.java
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.avro.file;
-
-import java.io.FilterInputStream;
-import java.io.IOException;
-import java.io.InputStream;
-
-/** Represents a substream of certain length. */
-class LengthLimitedInputStream extends FilterInputStream {
-
-  /** Bytes remaining. */
-  private long remaining;
-
-  protected LengthLimitedInputStream(InputStream in, long maxLength) {
-    super(in);
-    remaining = maxLength;
-  }
-
-  @Override
-  public int read() throws IOException {
-    if (remaining > 0) {
-      int v = super.read();
-      if (v != -1) {
-        remaining--;
-      }
-      return v;
-    }
-    return -1;
-  }
-
-  @Override
-  public int read(byte[] b) throws IOException {
-    return read(b, 0, b.length);
-  }
-
-  /**
-   * Returns at most Integer.MAX_VALUE.
-   */
-  private int remainingInt() {
-    return (int)Math.min(remaining, Integer.MAX_VALUE);
-  }
-
-  @Override
-  public int read(byte[] b, int off, int len) throws IOException {
-    if (remaining == 0) {
-      return -1;
-    }
-    if (len > remaining) {
-      len = remainingInt();
-    }
-    int v = super.read(b, off, len);
-    if (v != -1) {
-      remaining -= v;
-    }
-    return v;
-  }
-
-  @Override
-  public int available() throws IOException {
-    return Math.min(super.available(), remainingInt());
-  }
-
-  @Override
-  public long skip(long n) throws IOException {
-    long v = super.skip(Math.min(remaining, n));
-    remaining -= v;
-    return v;
-  }
-}
diff --git 
a/lang/java/avro/src/test/java/org/apache/avro/file/TestLengthLimitedInputStream.java
 
b/lang/java/avro/src/test/java/org/apache/avro/file/TestLengthLimitedInputStream.java
deleted file mode 100644
index 39dbf54..0000000
--- 
a/lang/java/avro/src/test/java/org/apache/avro/file/TestLengthLimitedInputStream.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.avro.file;
-
-import static org.junit.Assert.assertEquals;
-
-import java.io.ByteArrayInputStream;
-import java.io.IOException;
-import java.io.InputStream;
-
-import org.junit.Before;
-import org.junit.Test;
-
-public class TestLengthLimitedInputStream {
-  InputStream raw;
-
-  @Before
-  public void setupRawStream() {
-    byte[] buf = new byte[128];
-    for (int i = 0; i < 128; ++i) {
-      buf[i] = (byte)i;
-    }
-    raw = new ByteArrayInputStream(buf);
-  }
-
-  @Test
-  public void testAvailable() throws IOException {
-    InputStream is = new LengthLimitedInputStream(raw, 10);
-    assertEquals(10, is.available());
-    is.skip(100);
-    assertEquals(0, is.available());
-  }
-
-  @Test
-  public void testRead() throws IOException {
-    InputStream is = new LengthLimitedInputStream(raw, 10);
-    byte[] x = new byte[12];
-    assertEquals(0, is.read());
-    assertEquals(9, is.read(x));
-    assertEquals(-1, is.read(x));
-    assertEquals(x[8], 9);
-  }
-}

Reply via email to