You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by bo...@apache.org on 2013/10/14 13:10:00 UTC
svn commit: r1531853 - in
/commons/proper/compress/trunk/src/main/java/org/apache/commons/compress:
archivers/ArchiveStreamFactory.java archivers/arj/ArjArchiveInputStream.java
compressors/gzip/GzipCompressorInputStream.java
Author: bodewig
Date: Mon Oct 14 11:10:00 2013
New Revision: 1531853
URL: http://svn.apache.org/r1531853
Log:
clean up ARJ header parsing, addrss PMD issues
Modified:
commons/proper/compress/trunk/src/main/java/org/apache/commons/compress/archivers/ArchiveStreamFactory.java
commons/proper/compress/trunk/src/main/java/org/apache/commons/compress/archivers/arj/ArjArchiveInputStream.java
commons/proper/compress/trunk/src/main/java/org/apache/commons/compress/compressors/gzip/GzipCompressorInputStream.java
Modified: commons/proper/compress/trunk/src/main/java/org/apache/commons/compress/archivers/ArchiveStreamFactory.java
URL: http://svn.apache.org/viewvc/commons/proper/compress/trunk/src/main/java/org/apache/commons/compress/archivers/ArchiveStreamFactory.java?rev=1531853&r1=1531852&r2=1531853&view=diff
==============================================================================
--- commons/proper/compress/trunk/src/main/java/org/apache/commons/compress/archivers/ArchiveStreamFactory.java (original)
+++ commons/proper/compress/trunk/src/main/java/org/apache/commons/compress/archivers/ArchiveStreamFactory.java Mon Oct 14 11:10:00 2013
@@ -332,7 +332,7 @@ public class ArchiveStreamFactory {
if (tais != null) {
try {
tais.close();
- } catch (IOException ignored) {
+ } catch (IOException ignored) { // NOPMD
// ignored
}
}
Modified: commons/proper/compress/trunk/src/main/java/org/apache/commons/compress/archivers/arj/ArjArchiveInputStream.java
URL: http://svn.apache.org/viewvc/commons/proper/compress/trunk/src/main/java/org/apache/commons/compress/archivers/arj/ArjArchiveInputStream.java?rev=1531853&r1=1531852&r2=1531853&view=diff
==============================================================================
--- commons/proper/compress/trunk/src/main/java/org/apache/commons/compress/archivers/arj/ArjArchiveInputStream.java (original)
+++ commons/proper/compress/trunk/src/main/java/org/apache/commons/compress/archivers/arj/ArjArchiveInputStream.java Mon Oct 14 11:10:00 2013
@@ -20,7 +20,6 @@ package org.apache.commons.compress.arch
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.DataInputStream;
-import java.io.EOFException;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
@@ -85,11 +84,8 @@ public class ArjArchiveInputStream exten
}
@Override
- public void close() {
- try {
- in.close();
- } catch (IOException ignored) {
- }
+ public void close() throws IOException {
+ in.close();
}
private static void debug(final String message) {
@@ -194,14 +190,13 @@ public class ArjArchiveInputStream exten
mainHeader.encryptionVersion = firstHeader.readUnsignedByte();
mainHeader.lastChapter = firstHeader.readUnsignedByte();
- try {
+ if (firstHeaderSize >= 33) {
mainHeader.arjProtectionFactor = firstHeader.readUnsignedByte();
mainHeader.arjFlags2 = firstHeader.readUnsignedByte();
firstHeader.readUnsignedByte();
firstHeader.readUnsignedByte();
- } catch (EOFException eof) {
}
-
+
mainHeader.name = readString(basicHeader);
mainHeader.comment = readString(basicHeader);
@@ -256,15 +251,8 @@ public class ArjArchiveInputStream exten
localFileHeader.firstChapter = firstHeader.readUnsignedByte();
localFileHeader.lastChapter = firstHeader.readUnsignedByte();
- try {
- localFileHeader.extendedFilePosition = read32(firstHeader);
- localFileHeader.dateTimeAccessed = read32(firstHeader);
- localFileHeader.dateTimeCreated = read32(firstHeader);
- localFileHeader.originalSizeEvenForVolumes = read32(firstHeader);
- pushedBackBytes(16);
- } catch (EOFException eof) {
- }
-
+ readExtraData(firstHeaderSize, firstHeader, localFileHeader);
+
localFileHeader.name = readString(basicHeader);
localFileHeader.comment = readString(basicHeader);
@@ -290,6 +278,20 @@ public class ArjArchiveInputStream exten
return localFileHeader;
}
+ private void readExtraData(int firstHeaderSize, DataInputStream firstHeader,
+ LocalFileHeader localFileHeader) throws IOException {
+ if (firstHeaderSize >= 33) {
+ localFileHeader.extendedFilePosition = read32(firstHeader);
+ if (firstHeaderSize >= 45) {
+ localFileHeader.dateTimeAccessed = read32(firstHeader);
+ localFileHeader.dateTimeCreated = read32(firstHeader);
+ localFileHeader.originalSizeEvenForVolumes = read32(firstHeader);
+ pushedBackBytes(12);
+ }
+ pushedBackBytes(4);
+ }
+ }
+
/**
* Checks if the signature matches what is expected for an arj file.
*
@@ -322,7 +324,8 @@ public class ArjArchiveInputStream exten
@Override
public ArjArchiveEntry getNextEntry() throws IOException {
if (currentInputStream != null) {
- while (currentInputStream.read() >= 0) {
+ while (currentInputStream.read() >= 0) { // NOPMD
+ // drain current input
}
currentLocalFileHeader = null;
currentInputStream = null;
Modified: commons/proper/compress/trunk/src/main/java/org/apache/commons/compress/compressors/gzip/GzipCompressorInputStream.java
URL: http://svn.apache.org/viewvc/commons/proper/compress/trunk/src/main/java/org/apache/commons/compress/compressors/gzip/GzipCompressorInputStream.java?rev=1531853&r1=1531852&r2=1531853&view=diff
==============================================================================
--- commons/proper/compress/trunk/src/main/java/org/apache/commons/compress/compressors/gzip/GzipCompressorInputStream.java (original)
+++ commons/proper/compress/trunk/src/main/java/org/apache/commons/compress/compressors/gzip/GzipCompressorInputStream.java Mon Oct 14 11:10:00 2013
@@ -210,7 +210,8 @@ public class GzipCompressorInputStream e
}
private void readToNull(DataInputStream inData) throws IOException {
- while (inData.readUnsignedByte() != 0x00) {}
+ while (inData.readUnsignedByte() != 0x00) { // NOPMD
+ }
}
@Override