Skip to content

Commit fcc1776

Browse files
committed
Avoid FileInputStream, FileOutputStream, FileReader and FileWriter
https://pmd.github.io/latest/pmd_rules_java_performance.html#avoidfilestream Signed-off-by: Jorge Solórzano <[email protected]>
1 parent 06e3a95 commit fcc1776

32 files changed

+148
-150
lines changed

src/main/java/org/codehaus/plexus/archiver/AbstractUnArchiver.java

+3-2
Original file line numberDiff line numberDiff line change
@@ -18,13 +18,14 @@
1818

1919
import java.io.File;
2020
import java.io.FileNotFoundException;
21-
import java.io.FileOutputStream;
2221
import java.io.IOException;
2322
import java.io.InputStream;
2423
import java.io.OutputStream;
24+
import java.nio.file.Files;
2525
import java.util.ArrayList;
2626
import java.util.Date;
2727
import java.util.List;
28+
2829
import org.codehaus.plexus.archiver.util.ArchiveEntryUtils;
2930
import org.codehaus.plexus.components.io.attributes.SymlinkUtils;
3031
import org.codehaus.plexus.components.io.filemappers.FileMapper;
@@ -363,7 +364,7 @@ else if ( isDirectory )
363364
}
364365
else
365366
{
366-
try ( OutputStream out = new FileOutputStream( targetFileName ) )
367+
try ( OutputStream out = Files.newOutputStream( targetFileName.toPath() ) )
367368
{
368369
IOUtil.copy( compressedInputStream, out );
369370
}

src/main/java/org/codehaus/plexus/archiver/DotDirectiveArchiveFinalizer.java

+4-2
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,12 @@
22

33
import java.io.BufferedReader;
44
import java.io.File;
5-
import java.io.FileReader;
65
import java.io.IOException;
6+
import java.nio.charset.StandardCharsets;
7+
import java.nio.file.Files;
78
import java.util.Collections;
89
import java.util.List;
10+
911
import org.codehaus.plexus.util.FileUtils;
1012
import org.codehaus.plexus.util.StringUtils;
1113

@@ -48,7 +50,7 @@ public void finalizeArchiveCreation( Archiver archiver )
4850

4951
for ( File dotFile : dotFiles )
5052
{
51-
try ( BufferedReader in = new BufferedReader( new FileReader( dotFile ) ) )
53+
try ( BufferedReader in = Files.newBufferedReader( dotFile.toPath(), StandardCharsets.UTF_8 ) )
5254
{
5355

5456
for ( String line = in.readLine(); line != null; line = in.readLine() )

src/main/java/org/codehaus/plexus/archiver/bzip2/PlexusIoBzip2ResourceCollection.java

+4-13
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,18 @@
11
package org.codehaus.plexus.archiver.bzip2;
22

3+
import static org.codehaus.plexus.archiver.util.Streams.fileInputStream;
4+
35
import java.io.File;
4-
import java.io.FileInputStream;
56
import java.io.IOException;
67
import java.io.InputStream;
78
import java.util.HashMap;
89
import javax.annotation.Nonnull;
910
import javax.annotation.WillNotClose;
11+
1012
import org.codehaus.plexus.components.io.attributes.FileAttributes;
1113
import org.codehaus.plexus.components.io.attributes.PlexusIoResourceAttributes;
1214
import org.codehaus.plexus.components.io.resources.PlexusIoCompressedFileResourceCollection;
1315
import org.codehaus.plexus.components.io.resources.PlexusIoResourceCollection;
14-
import org.codehaus.plexus.util.IOUtil;
1516

1617
/**
1718
* Implementation of {@link PlexusIoResourceCollection} for
@@ -27,17 +28,7 @@ public class PlexusIoBzip2ResourceCollection
2728
InputStream getInputStream( File file )
2829
throws IOException
2930
{
30-
InputStream fis = new FileInputStream( file );
31-
try
32-
{
33-
final InputStream result = BZip2UnArchiver.getBZip2InputStream( fis );
34-
fis = null;
35-
return result;
36-
}
37-
finally
38-
{
39-
IOUtil.close( fis );
40-
}
31+
return BZip2UnArchiver.getBZip2InputStream( fileInputStream( file ) );
4132
}
4233

4334
@Override protected PlexusIoResourceAttributes getAttributes( File file ) throws IOException

src/main/java/org/codehaus/plexus/archiver/gzip/GZipCompressor.java

+5-3
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,15 @@
1616
*/
1717
package org.codehaus.plexus.archiver.gzip;
1818

19-
import java.io.FileOutputStream;
19+
import static org.codehaus.plexus.archiver.util.Streams.bufferedOutputStream;
20+
import static org.codehaus.plexus.archiver.util.Streams.fileOutputStream;
21+
2022
import java.io.IOException;
2123
import java.io.OutputStream;
2224
import java.util.zip.GZIPOutputStream;
25+
2326
import org.codehaus.plexus.archiver.ArchiverException;
2427
import org.codehaus.plexus.archiver.util.Compressor;
25-
import org.codehaus.plexus.archiver.util.Streams;
2628

2729
public class GZipCompressor
2830
extends Compressor
@@ -39,7 +41,7 @@ public void compress()
3941
{
4042
try
4143
{
42-
zOut = Streams.bufferedOutputStream( new GZIPOutputStream( new FileOutputStream( getDestFile() ) ) );
44+
zOut = bufferedOutputStream( new GZIPOutputStream( fileOutputStream( getDestFile() ) ) );
4345
compress( getSource(), zOut );
4446
}
4547
catch ( IOException ioe )

src/main/java/org/codehaus/plexus/archiver/gzip/GZipUnArchiver.java

+6-5
Original file line numberDiff line numberDiff line change
@@ -16,17 +16,18 @@
1616
*/
1717
package org.codehaus.plexus.archiver.gzip;
1818

19+
import static org.codehaus.plexus.archiver.util.Streams.copyFully;
20+
import static org.codehaus.plexus.archiver.util.Streams.fileInputStream;
21+
import static org.codehaus.plexus.archiver.util.Streams.fileOutputStream;
22+
1923
import java.io.File;
20-
import java.io.FileInputStream;
2124
import java.io.IOException;
2225
import java.io.InputStream;
2326
import java.util.zip.GZIPInputStream;
27+
2428
import org.codehaus.plexus.archiver.AbstractUnArchiver;
2529
import org.codehaus.plexus.archiver.ArchiverException;
2630
import org.codehaus.plexus.archiver.util.Streams;
27-
import static org.codehaus.plexus.archiver.util.Streams.copyFully;
28-
import static org.codehaus.plexus.archiver.util.Streams.fileInputStream;
29-
import static org.codehaus.plexus.archiver.util.Streams.fileOutputStream;
3031

3132
/**
3233
* @author <a href="mailto:[email protected]">Emmanuel Venisse</a>
@@ -60,7 +61,7 @@ protected void execute()
6061
}
6162
}
6263

63-
private InputStream getGzipInputStream( FileInputStream in )
64+
private InputStream getGzipInputStream( InputStream in )
6465
throws ArchiverException
6566
{
6667
try

src/main/java/org/codehaus/plexus/archiver/gzip/PlexusIoGzipResourceCollection.java

+6-14
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,19 @@
11
package org.codehaus.plexus.archiver.gzip;
22

3+
import static org.codehaus.plexus.archiver.util.Streams.bufferedInputStream;
4+
import static org.codehaus.plexus.archiver.util.Streams.fileInputStream;
5+
36
import java.io.File;
4-
import java.io.FileInputStream;
57
import java.io.IOException;
68
import java.io.InputStream;
79
import java.util.HashMap;
810
import java.util.zip.GZIPInputStream;
11+
912
import javax.annotation.Nonnull;
10-
import org.codehaus.plexus.archiver.util.Streams;
13+
1114
import org.codehaus.plexus.components.io.attributes.FileAttributes;
1215
import org.codehaus.plexus.components.io.attributes.PlexusIoResourceAttributes;
1316
import org.codehaus.plexus.components.io.resources.PlexusIoCompressedFileResourceCollection;
14-
import org.codehaus.plexus.util.IOUtil;
1517

1618
/**
1719
* Abstract base class for compressed files, aka singleton
@@ -32,17 +34,7 @@ protected String getDefaultExtension()
3234
protected InputStream getInputStream( File file )
3335
throws IOException
3436
{
35-
InputStream fis = new FileInputStream( file );
36-
try
37-
{
38-
InputStream result = Streams.bufferedInputStream( new GZIPInputStream( fis ) );
39-
fis = null;
40-
return result;
41-
}
42-
finally
43-
{
44-
IOUtil.close( fis );
45-
}
37+
return bufferedInputStream( new GZIPInputStream( fileInputStream( file ) ) );
4638
}
4739

4840
@Override

src/main/java/org/codehaus/plexus/archiver/jar/JarArchiver.java

+8-8
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,13 @@
1616
*/
1717
package org.codehaus.plexus.archiver.jar;
1818

19+
import static org.codehaus.plexus.archiver.util.Streams.bufferedOutputStream;
20+
import static org.codehaus.plexus.archiver.util.Streams.fileInputStream;
21+
import static org.codehaus.plexus.archiver.util.Streams.fileOutputStream;
22+
1923
import java.io.ByteArrayInputStream;
2024
import java.io.ByteArrayOutputStream;
2125
import java.io.File;
22-
import java.io.FileInputStream;
2326
import java.io.IOException;
2427
import java.io.InputStream;
2528
import java.io.OutputStreamWriter;
@@ -35,6 +38,7 @@
3538
import java.util.StringTokenizer;
3639
import java.util.TreeMap;
3740
import java.util.Vector;
41+
3842
import org.apache.commons.compress.archivers.zip.ZipArchiveEntry;
3943
import org.apache.commons.compress.archivers.zip.ZipArchiveOutputStream;
4044
import org.apache.commons.compress.archivers.zip.ZipFile;
@@ -44,8 +48,6 @@
4448
import org.codehaus.plexus.archiver.zip.ZipArchiver;
4549
import org.codehaus.plexus.logging.Logger;
4650
import org.codehaus.plexus.logging.console.ConsoleLogger;
47-
import static org.codehaus.plexus.archiver.util.Streams.bufferedOutputStream;
48-
import static org.codehaus.plexus.archiver.util.Streams.fileOutputStream;
4951

5052
/**
5153
* Base class for tasks that build archives in JAR file format.
@@ -195,7 +197,7 @@ public void setManifestEncoding( String manifestEncoding )
195197
*
196198
* @param newManifest The new manifest
197199
*
198-
* @throws ManifestException .
200+
* @throws ManifestException
199201
*/
200202
public void addConfiguredManifest( Manifest newManifest )
201203
throws ManifestException
@@ -218,7 +220,6 @@ public void addConfiguredManifest( Manifest newManifest )
218220
* @param manifestFile the manifest file to use.
219221
*
220222
* @throws org.codehaus.plexus.archiver.ArchiverException
221-
* .
222223
*/
223224
@SuppressWarnings(
224225
{
@@ -238,7 +239,7 @@ public void setManifest( File manifestFile )
238239
private Manifest getManifest( File manifestFile )
239240
throws ArchiverException
240241
{
241-
try ( InputStream in = new FileInputStream( manifestFile ) )
242+
try ( InputStream in = fileInputStream( manifestFile ) )
242243
{
243244
return getManifest( in );
244245
}
@@ -403,7 +404,6 @@ protected void finalizeZipOutputStream( ConcurrentJarCreator zOut )
403404
* @throws IOException thrown if there is an error while creating the
404405
* index and adding it to the zip stream.
405406
* @throws org.codehaus.plexus.archiver.ArchiverException
406-
* .
407407
*/
408408
private void createIndexList( ConcurrentJarCreator zOut )
409409
throws IOException, ArchiverException
@@ -772,7 +772,7 @@ public int compare( String o1, String o2 )
772772
* @param files .
773773
* @param dirs .
774774
*
775-
* @throws java.io.IOException .
775+
* @throws java.io.IOException
776776
*/
777777
protected static void grabFilesAndDirs( String file, List<String> dirs, List<String> files )
778778
throws IOException

src/main/java/org/codehaus/plexus/archiver/resources/PlexusIoVirtualFileResource.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
import java.io.IOException;
2020
import java.io.InputStream;
2121
import java.net.URL;
22+
2223
import javax.annotation.Nonnull;
2324
import org.codehaus.plexus.components.io.attributes.AttributeUtils;
2425
import org.codehaus.plexus.components.io.attributes.PlexusIoResourceAttributes;
@@ -60,7 +61,6 @@ public InputStream getContents()
6061
throws IOException
6162
{
6263
throw new UnsupportedOperationException( "We're not really sure we can do this" );
63-
//return new FileInputStream( getFile() );
6464
}
6565

6666
@Override

src/main/java/org/codehaus/plexus/archiver/snappy/PlexusIoSnappyResourceCollection.java

+4-13
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,17 @@
11
package org.codehaus.plexus.archiver.snappy;
22

33
import java.io.File;
4-
import java.io.FileInputStream;
54
import java.io.IOException;
65
import java.io.InputStream;
76
import java.util.HashMap;
7+
88
import javax.annotation.Nonnull;
99
import javax.annotation.WillNotClose;
10+
11+
import org.codehaus.plexus.archiver.util.Streams;
1012
import org.codehaus.plexus.components.io.attributes.FileAttributes;
1113
import org.codehaus.plexus.components.io.attributes.PlexusIoResourceAttributes;
1214
import org.codehaus.plexus.components.io.resources.PlexusIoCompressedFileResourceCollection;
13-
import org.codehaus.plexus.util.IOUtil;
1415

1516
/**
1617
* Implementation of {@link org.codehaus.plexus.components.io.resources.PlexusIoResourceCollection} for
@@ -26,17 +27,7 @@ public class PlexusIoSnappyResourceCollection
2627
InputStream getInputStream( File file )
2728
throws IOException
2829
{
29-
InputStream fis = new FileInputStream( file );
30-
try
31-
{
32-
final InputStream result = SnappyUnArchiver.getSnappyInputStream( fis );
33-
fis = null;
34-
return result;
35-
}
36-
finally
37-
{
38-
IOUtil.close( fis );
39-
}
30+
return SnappyUnArchiver.getSnappyInputStream( Streams.fileInputStream( file ) );
4031
}
4132

4233
@Override protected PlexusIoResourceAttributes getAttributes( File file ) throws IOException

src/main/java/org/codehaus/plexus/archiver/tar/TarArchiver.java

+6-4
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,15 @@
1616
*/
1717
package org.codehaus.plexus.archiver.tar;
1818

19+
import static org.codehaus.plexus.archiver.util.Streams.bufferedOutputStream;
20+
1921
import java.io.File;
20-
import java.io.FileOutputStream;
2122
import java.io.IOException;
2223
import java.io.InputStream;
2324
import java.io.OutputStream;
25+
import java.nio.file.Files;
2426
import java.util.zip.GZIPOutputStream;
27+
2528
import org.apache.commons.compress.archivers.tar.TarArchiveEntry;
2629
import org.apache.commons.compress.archivers.tar.TarArchiveOutputStream;
2730
import org.apache.commons.compress.compressors.bzip2.BZip2CompressorOutputStream;
@@ -39,7 +42,6 @@
3942
import org.codehaus.plexus.util.IOUtil;
4043
import org.codehaus.plexus.util.StringUtils;
4144
import org.iq80.snappy.SnappyOutputStream;
42-
import static org.codehaus.plexus.archiver.util.Streams.bufferedOutputStream;
4345

4446
/**
4547
* @author <a href="mailto:[email protected]">Emmanuel Venisse</a>
@@ -133,7 +135,7 @@ protected void execute()
133135

134136
try
135137
{
136-
tOut = new TarArchiveOutputStream( compress( compression, new FileOutputStream( tarFile ) ), "UTF8" );
138+
tOut = new TarArchiveOutputStream( compress( compression, Files.newOutputStream( tarFile.toPath() ) ), "UTF8" );
137139
if ( longFileMode.isTruncateMode() )
138140
{
139141
tOut.setLongFileMode( TarArchiveOutputStream.LONGFILE_TRUNCATE );
@@ -488,7 +490,7 @@ private OutputStream compress( TarCompressionMethod tarCompressionMethod, final
488490
{
489491
if ( TarCompressionMethod.gzip.equals( tarCompressionMethod ) )
490492
{
491-
return Streams.bufferedOutputStream( new GZIPOutputStream( ostream ) );
493+
return bufferedOutputStream( new GZIPOutputStream( ostream ) );
492494
}
493495
else if ( TarCompressionMethod.bzip2.equals( tarCompressionMethod ) )
494496
{

src/main/java/org/codehaus/plexus/archiver/tar/TarFile.java

+5-3
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,19 @@
11
package org.codehaus.plexus.archiver.tar;
22

3+
import static org.codehaus.plexus.archiver.util.Streams.bufferedInputStream;
4+
35
import java.io.File;
4-
import java.io.FileInputStream;
56
import java.io.FilterInputStream;
67
import java.io.IOException;
78
import java.io.InputStream;
89
import java.lang.reflect.UndeclaredThrowableException;
910
import java.util.Enumeration;
1011
import java.util.NoSuchElementException;
12+
1113
import org.apache.commons.compress.archivers.tar.TarArchiveEntry;
1214
import org.apache.commons.compress.archivers.tar.TarArchiveInputStream;
1315
import org.codehaus.plexus.archiver.ArchiveFile;
14-
import static org.codehaus.plexus.archiver.util.Streams.bufferedInputStream;
16+
import org.codehaus.plexus.archiver.util.Streams;
1517

1618
/**
1719
* <p>
@@ -149,7 +151,7 @@ public void close()
149151
protected InputStream getInputStream( File file )
150152
throws IOException
151153
{
152-
return new FileInputStream( file );
154+
return Streams.fileInputStream( file );
153155
}
154156

155157
private InputStream getInputStream( TarArchiveEntry entry, TarArchiveEntry currentEntry )

0 commit comments

Comments
 (0)