diff --git a/src/changes/changes.xml b/src/changes/changes.xml index 2f08461babf..ada37ee8696 100644 --- a/src/changes/changes.xml +++ b/src/changes/changes.xml @@ -46,7 +46,8 @@ The type attribute can be add,update,fix,remove. - Add GzipParameters.getFileName() and deprecated getFilename(). + Add GzipParameters.getFileName() and deprecate getFilename(). + Add GzipParameters.setFileName(String) and deprecate setFilename(String). Bump org.slf4j:slf4j-api from 2.0.8 to 2.0.9 #413. diff --git a/src/main/java/org/apache/commons/compress/compressors/gzip/GzipCompressorInputStream.java b/src/main/java/org/apache/commons/compress/compressors/gzip/GzipCompressorInputStream.java index 2e41e771ad5..253bac21cca 100644 --- a/src/main/java/org/apache/commons/compress/compressors/gzip/GzipCompressorInputStream.java +++ b/src/main/java/org/apache/commons/compress/compressors/gzip/GzipCompressorInputStream.java @@ -285,7 +285,7 @@ private boolean init(final boolean isFirstMember) throws IOException { // Original file name if ((flg & FNAME) != 0) { - parameters.setFilename(new String(readToNull(inData), GzipUtils.GZIP_ENCODING)); + parameters.setFileName(new String(readToNull(inData), GzipUtils.GZIP_ENCODING)); } // Comment diff --git a/src/main/java/org/apache/commons/compress/compressors/gzip/GzipParameters.java b/src/main/java/org/apache/commons/compress/compressors/gzip/GzipParameters.java index 9530b8bac56..51d2568405c 100644 --- a/src/main/java/org/apache/commons/compress/compressors/gzip/GzipParameters.java +++ b/src/main/java/org/apache/commons/compress/compressors/gzip/GzipParameters.java @@ -147,11 +147,22 @@ public void setDeflateStrategy(final int deflateStrategy) { * Sets the name of the compressed file. * * @param fileName the name of the file without the directory path + * @deprecated Use {@link #setFileName(String)}. */ + @Deprecated public void setFilename(final String fileName) { this.fileName = fileName; } + /** + * Sets the name of the compressed file. + * + * @param fileName the name of the file without the directory path + */ + public void setFileName(final String fileName) { + this.fileName = fileName; + } + /** * Sets the modification time of the compressed file. * diff --git a/src/test/java/org/apache/commons/compress/compressors/GZipTestCase.java b/src/test/java/org/apache/commons/compress/compressors/GZipTestCase.java index 2b1cbad710c..21527a9f4a8 100644 --- a/src/test/java/org/apache/commons/compress/compressors/GZipTestCase.java +++ b/src/test/java/org/apache/commons/compress/compressors/GZipTestCase.java @@ -170,6 +170,9 @@ public void testInteroperabilityWithGzipCompressorInputStream() throws Exception parameters.setCompressionLevel(Deflater.BEST_COMPRESSION); parameters.setOperatingSystem(3); parameters.setFilename("test3.xml"); + assertEquals(parameters.getFilename(), parameters.getFileName()); + parameters.setFileName("test3.xml"); + assertEquals(parameters.getFilename(), parameters.getFileName()); parameters.setComment("Test file"); parameters.setModificationTime(System.currentTimeMillis()); try (GzipCompressorOutputStream out = new GzipCompressorOutputStream(bout, parameters)) { @@ -196,6 +199,9 @@ public void testInteroperabilityWithGZIPInputStream() throws Exception { parameters.setCompressionLevel(Deflater.BEST_COMPRESSION); parameters.setOperatingSystem(3); parameters.setFilename("test3.xml"); + assertEquals(parameters.getFilename(), parameters.getFileName()); + parameters.setFileName("test3.xml"); + assertEquals(parameters.getFilename(), parameters.getFileName()); parameters.setComment("Test file"); parameters.setModificationTime(System.currentTimeMillis()); try (GzipCompressorOutputStream out = new GzipCompressorOutputStream(bout, parameters)) { @@ -234,6 +240,9 @@ public void testMetadataRoundTrip() throws Exception { parameters.setModificationTime(123456000); parameters.setOperatingSystem(13); parameters.setFilename("test3.xml"); + assertEquals(parameters.getFilename(), parameters.getFileName()); + parameters.setFileName("test3.xml"); + assertEquals(parameters.getFilename(), parameters.getFileName()); parameters.setComment("Umlaute möglich?"); try (GzipCompressorOutputStream out = new GzipCompressorOutputStream(bout, parameters)) { Files.copy(getFile("test3" + ".xml").toPath(), out); diff --git a/src/test/java/org/apache/commons/compress/compressors/gzip/GzipCompressorOutputStreamTest.java b/src/test/java/org/apache/commons/compress/compressors/gzip/GzipCompressorOutputStreamTest.java index 4dee3c844b8..2c1c5f2671c 100644 --- a/src/test/java/org/apache/commons/compress/compressors/gzip/GzipCompressorOutputStreamTest.java +++ b/src/test/java/org/apache/commons/compress/compressors/gzip/GzipCompressorOutputStreamTest.java @@ -40,6 +40,9 @@ private void testFileName(final String expected, final String sourceFile) throws final Path targetFile = Files.createTempFile("test", ".gz"); final GzipParameters parameters = new GzipParameters(); parameters.setFilename(sourceFile); + assertEquals(parameters.getFilename(), parameters.getFileName()); + parameters.setFileName(sourceFile); + assertEquals(parameters.getFilename(), parameters.getFileName()); try (OutputStream fos = Files.newOutputStream(targetFile); GzipCompressorOutputStream gos = new GzipCompressorOutputStream(fos, parameters)) { Files.copy(tempSourceFile, gos); }