Skip to content

Commit cfe0355

Browse files
committed
Apply try-with-resources
1 parent 0a1aaad commit cfe0355

File tree

6 files changed

+74
-168
lines changed

6 files changed

+74
-168
lines changed

src/main/java/org/apache/maven/plugins/assembly/archive/ManifestCreationFinalizer.java

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@
3030
import org.codehaus.plexus.archiver.jar.JarArchiver;
3131
import org.codehaus.plexus.archiver.jar.Manifest;
3232
import org.codehaus.plexus.archiver.jar.ManifestException;
33-
import org.codehaus.plexus.util.IOUtil;
3433

3534
import java.io.File;
3635
import java.io.FileInputStream;
@@ -82,14 +81,10 @@ public void finalizeArchiveCreation( final Archiver archiver )
8281

8382
if ( manifestFile != null )
8483
{
85-
Reader manifestFileReader = null;
86-
try
84+
try ( Reader manifestFileReader =
85+
new InputStreamReader( new FileInputStream( manifestFile ), StandardCharsets.UTF_8 ) )
8786
{
88-
manifestFileReader = new InputStreamReader( new FileInputStream( manifestFile ),
89-
StandardCharsets.UTF_8 );
9087
manifest = new Manifest( manifestFileReader );
91-
manifestFileReader.close();
92-
manifestFileReader = null;
9388
}
9489
catch ( final FileNotFoundException e )
9590
{
@@ -99,10 +94,6 @@ public void finalizeArchiveCreation( final Archiver archiver )
9994
{
10095
throw new ArchiverException( "Error processing manifest: " + e.getMessage(), e );
10196
}
102-
finally
103-
{
104-
IOUtil.close( manifestFileReader );
105-
}
10697
}
10798
else
10899
{

src/main/java/org/apache/maven/plugins/assembly/filter/AbstractLineAggregatingHandler.java

Lines changed: 8 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@
2525
import org.codehaus.plexus.archiver.ResourceIterator;
2626
import org.codehaus.plexus.archiver.UnArchiver;
2727
import org.codehaus.plexus.components.io.fileselectors.FileInfo;
28-
import org.codehaus.plexus.util.IOUtil;
2928

3029
import javax.annotation.Nonnull;
3130
import java.io.BufferedReader;
@@ -80,32 +79,27 @@ void addToArchive( final Archiver archiver )
8079
final String name = entry.getKey();
8180
final String fname = new File( name ).getName();
8281

83-
PrintWriter writer = null;
8482
File f;
8583
try
8684
{
8785
f = File.createTempFile( "assembly-" + fname, ".tmp" );
8886
f.deleteOnExit();
8987

90-
writer = new PrintWriter( new OutputStreamWriter( new FileOutputStream( f ), getEncoding() ) );
91-
for ( final String line : entry.getValue() )
88+
try ( PrintWriter writer =
89+
new PrintWriter( new OutputStreamWriter( new FileOutputStream( f ), getEncoding() ) ) )
9290
{
93-
writer.println( line );
91+
for ( final String line : entry.getValue() )
92+
{
93+
writer.println( line );
94+
}
9495
}
95-
96-
writer.close();
97-
writer = null;
9896
}
9997
catch ( final IOException e )
10098
{
10199
throw new ArchiverException(
102100
"Error adding aggregated content for: " + fname + " to finalize archive creation. Reason: "
103101
+ e.getMessage(), e );
104102
}
105-
finally
106-
{
107-
IOUtil.close( writer );
108-
}
109103

110104
excludeOverride = true;
111105
archiver.addFile( f, name );
@@ -157,25 +151,16 @@ public boolean isSelected( @Nonnull final FileInfo fileInfo )
157151
void readLines( final FileInfo fileInfo, final List<String> lines )
158152
throws IOException
159153
{
160-
BufferedReader reader = null;
161-
try
154+
try ( BufferedReader reader =
155+
new BufferedReader( new InputStreamReader( fileInfo.getContents(), getEncoding() ) ) )
162156
{
163-
reader = new BufferedReader( new InputStreamReader( fileInfo.getContents(), getEncoding() ) );
164-
165157
for ( String line = reader.readLine(); line != null; line = reader.readLine() )
166158
{
167159
if ( !lines.contains( line ) )
168160
{
169161
lines.add( line );
170162
}
171163
}
172-
173-
reader.close();
174-
reader = null;
175-
}
176-
finally
177-
{
178-
IOUtil.close( reader );
179164
}
180165
}
181166

src/main/java/org/apache/maven/plugins/assembly/filter/ComponentsXmlArchiverFileFilter.java

Lines changed: 3 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@
2727
import org.codehaus.plexus.archiver.UnArchiver;
2828
import org.codehaus.plexus.component.annotations.Component;
2929
import org.codehaus.plexus.components.io.fileselectors.FileInfo;
30-
import org.codehaus.plexus.util.IOUtil;
3130
import org.codehaus.plexus.util.xml.Xpp3Dom;
3231
import org.codehaus.plexus.util.xml.Xpp3DomBuilder;
3332
import org.codehaus.plexus.util.xml.Xpp3DomWriter;
@@ -107,10 +106,9 @@ private void addToArchive( final Archiver archiver )
107106
final File f = File.createTempFile( "maven-assembly-plugin", "tmp" );
108107
f.deleteOnExit();
109108

110-
Writer fileWriter = null;
111-
try
109+
110+
try ( Writer fileWriter = WriterFactory.newXmlWriter( new FileOutputStream( f ) ) )
112111
{
113-
fileWriter = WriterFactory.newXmlWriter( new FileOutputStream( f ) );
114112
final Xpp3Dom dom = new Xpp3Dom( "component-set" );
115113
final Xpp3Dom componentDom = new Xpp3Dom( "components" );
116114
dom.addChild( componentDom );
@@ -121,13 +119,6 @@ private void addToArchive( final Archiver archiver )
121119
}
122120

123121
Xpp3DomWriter.write( fileWriter, dom );
124-
125-
fileWriter.close();
126-
fileWriter = null;
127-
}
128-
finally
129-
{
130-
IOUtil.close( fileWriter );
131122
}
132123

133124
excludeOverride = true;
@@ -192,13 +183,9 @@ public boolean isSelected( @Nonnull final FileInfo fileInfo )
192183

193184
if ( ComponentsXmlArchiverFileFilter.COMPONENTS_XML_PATH.equals( entry ) )
194185
{
195-
Reader reader = null;
196-
try
186+
try ( Reader reader = new BufferedReader( ReaderFactory.newXmlReader( fileInfo.getContents() ) ) )
197187
{
198-
reader = new BufferedReader( ReaderFactory.newXmlReader( fileInfo.getContents() ) );
199188
addComponentsXml( reader );
200-
reader.close();
201-
reader = null;
202189
}
203190
catch ( final XmlPullParserException e )
204191
{
@@ -207,11 +194,6 @@ public boolean isSelected( @Nonnull final FileInfo fileInfo )
207194

208195
throw error;
209196
}
210-
finally
211-
{
212-
IOUtil.close( reader );
213-
}
214-
215197
return false;
216198
}
217199
else

src/main/java/org/apache/maven/plugins/assembly/filter/SimpleAggregatingDescriptorHandler.java

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232

3333
import javax.annotation.Nonnull;
3434
import java.io.File;
35+
import java.io.FileNotFoundException;
3536
import java.io.FileOutputStream;
3637
import java.io.IOException;
3738
import java.io.InputStreamReader;
@@ -103,44 +104,43 @@ public void finalizeArchiveCreation( final Archiver archiver )
103104
private File writePropertiesFile()
104105
{
105106
File f;
106-
107-
Writer writer = null;
108107
try
109108
{
110109
f = File.createTempFile( "maven-assembly-plugin", "tmp" );
111110
f.deleteOnExit();
112111

113-
writer = AssemblyFileUtils.isPropertyFile( f )
114-
? new OutputStreamWriter( new FileOutputStream( f ), StandardCharsets.ISO_8859_1 )
115-
: new OutputStreamWriter( new FileOutputStream( f ) ); // Still platform encoding
116-
117-
writer.write( commentChars + " Aggregated on " + new Date() + " from: " );
118-
119-
for ( final String filename : filenames )
112+
try ( Writer writer = getWriter( f ) )
120113
{
121-
writer.write( "\n" + commentChars + " " + filename );
122-
}
123-
124-
writer.write( "\n\n" );
114+
writer.write( commentChars + " Aggregated on " + new Date() + " from: " );
125115

126-
writer.write( aggregateWriter.toString() );
116+
for ( final String filename : filenames )
117+
{
118+
writer.write( "\n" + commentChars + " " + filename );
119+
}
127120

128-
writer.close();
129-
writer = null;
121+
writer.write( "\n\n" );
122+
writer.write( aggregateWriter.toString() );
123+
}
130124
}
131125
catch ( final IOException e )
132126
{
133127
throw new ArchiverException(
134128
"Error adding aggregated properties to finalize archive creation. Reason: " + e.getMessage(), e );
135129
}
136-
finally
137-
{
138-
IOUtil.close( writer );
139-
}
140130

141131
return f;
142132
}
143133

134+
private Writer getWriter( File f )
135+
throws FileNotFoundException
136+
{
137+
Writer writer;
138+
writer = AssemblyFileUtils.isPropertyFile( f )
139+
? new OutputStreamWriter( new FileOutputStream( f ), StandardCharsets.ISO_8859_1 )
140+
: new OutputStreamWriter( new FileOutputStream( f ) ); // Still platform encoding
141+
return writer;
142+
}
143+
144144
@Override
145145
public void finalizeArchiveExtraction( final UnArchiver unarchiver )
146146
{

src/main/java/org/apache/maven/plugins/assembly/io/DefaultAssemblyReader.java

Lines changed: 5 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@
1919
* under the License.
2020
*/
2121

22-
import org.apache.commons.io.IOUtils;
2322
import org.apache.maven.plugins.assembly.AssemblerConfigurationSource;
2423
import org.apache.maven.plugins.assembly.InvalidAssemblerConfigurationException;
2524
import org.apache.maven.plugins.assembly.interpolation.AssemblyExpressionEvaluator;
@@ -210,24 +209,16 @@ private Assembly addAssemblyForDescriptorReference( final String ref,
210209
}
211210
}
212211

213-
Reader reader = null;
214-
try
212+
try ( Reader reader = ReaderFactory.newXmlReader( resourceAsStream ) )
215213
{
216-
reader = ReaderFactory.newXmlReader( resourceAsStream );
217214
final Assembly assembly = readAssembly( reader, ref, null, configSource );
218-
reader.close();
219-
reader = null;
220215
assemblies.add( assembly );
221216
return assembly;
222217
}
223218
catch ( final IOException e )
224219
{
225220
throw new AssemblyReadException( "Problem with descriptor with ID '" + ref + "'", e );
226221
}
227-
finally
228-
{
229-
IOUtils.closeQuietly( reader );
230-
}
231222
}
232223

233224
private Assembly addAssemblyFromDescriptorFile( final File descriptor,
@@ -249,17 +240,11 @@ private Assembly addAssemblyFromDescriptorFile( final File descriptor,
249240
}
250241
}
251242

252-
Reader r = null;
253-
try
243+
try ( Reader r = ReaderFactory.newXmlReader( descriptor ) )
254244
{
255-
r = ReaderFactory.newXmlReader( descriptor );
256-
257245
final Assembly assembly =
258246
readAssembly( r, descriptor.getAbsolutePath(), descriptor.getParentFile(), configSource );
259247

260-
r.close();
261-
r = null;
262-
263248
assemblies.add( assembly );
264249

265250
return assembly;
@@ -268,10 +253,6 @@ private Assembly addAssemblyFromDescriptorFile( final File descriptor,
268253
{
269254
throw new AssemblyReadException( "Error reading assembly descriptor: " + descriptor, e );
270255
}
271-
finally
272-
{
273-
IOUtil.close( r );
274-
}
275256
}
276257

277258
private Assembly addAssemblyFromDescriptor( final String spec, final Locator locator,
@@ -296,11 +277,9 @@ private Assembly addAssemblyFromDescriptor( final String spec, final Locator loc
296277
}
297278
}
298279

299-
Reader r = null;
300-
try
280+
281+
try ( Reader r = ReaderFactory.newXmlReader( location.getInputStream() ) )
301282
{
302-
r = ReaderFactory.newXmlReader( location.getInputStream() );
303-
304283
File dir = null;
305284
if ( location.getFile() != null )
306285
{
@@ -309,9 +288,6 @@ private Assembly addAssemblyFromDescriptor( final String spec, final Locator loc
309288

310289
final Assembly assembly = readAssembly( r, spec, dir, configSource );
311290

312-
r.close();
313-
r = null;
314-
315291
assemblies.add( assembly );
316292

317293
return assembly;
@@ -320,11 +296,6 @@ private Assembly addAssemblyFromDescriptor( final String spec, final Locator loc
320296
{
321297
throw new AssemblyReadException( "Error reading assembly descriptor: " + spec, e );
322298
}
323-
finally
324-
{
325-
IOUtil.close( r );
326-
}
327-
328299
}
329300

330301
public Assembly readAssembly( Reader reader, final String locationDescription, final File assemblyDir,
@@ -443,21 +414,15 @@ protected void mergeComponentsWithMainAssembly( final Assembly assembly, final F
443414
}
444415

445416
Component component = null;
446-
Reader reader = null;
447-
try
417+
try ( Reader reader = new InputStreamReader( resolvedLocation.getInputStream() ) )
448418
{
449-
reader = new InputStreamReader( resolvedLocation.getInputStream() );
450419
component = new ComponentXpp3Reader( transformer ).read( reader );
451420
}
452421
catch ( final IOException | XmlPullParserException e )
453422
{
454423
throw new AssemblyReadException( "Error reading component descriptor: " + location + " (resolved to: "
455424
+ resolvedLocation.getSpecification() + ")", e );
456425
}
457-
finally
458-
{
459-
IOUtil.close( reader );
460-
}
461426

462427
mergeComponentWithAssembly( component, assembly );
463428
}

0 commit comments

Comments
 (0)