You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by el...@apache.org on 2024/12/07 12:51:09 UTC
(maven-patch-plugin) 01/01: Use Java 8 coding practices: try with resources, generics, etc.
This is an automated email from the ASF dual-hosted git repository.
elharo pushed a commit to branch code
in repository https://gitbox.apache.org/repos/asf/maven-patch-plugin.git
commit 88de2c31264dad5587456dfef6b365b144f494f7
Author: Elliotte Rusty Harold <el...@ibiblio.org>
AuthorDate: Sat Dec 7 07:50:57 2024 -0500
Use Java 8 coding practices: try with resources, generics, etc.
---
.../org/apache/maven/plugin/patch/ApplyMojo.java | 60 ++++++++--------------
1 file changed, 22 insertions(+), 38 deletions(-)
diff --git a/src/main/java/org/apache/maven/plugin/patch/ApplyMojo.java b/src/main/java/org/apache/maven/plugin/patch/ApplyMojo.java
index d253a79..675023b 100644
--- a/src/main/java/org/apache/maven/plugin/patch/ApplyMojo.java
+++ b/src/main/java/org/apache/maven/plugin/patch/ApplyMojo.java
@@ -26,7 +26,6 @@ import org.apache.maven.plugins.annotations.LifecyclePhase;
import org.apache.maven.plugins.annotations.Mojo;
import org.apache.maven.plugins.annotations.Parameter;
import org.codehaus.plexus.util.FileUtils;
-import org.codehaus.plexus.util.IOUtil;
import org.codehaus.plexus.util.StringUtils;
import org.codehaus.plexus.util.cli.CommandLineException;
import org.codehaus.plexus.util.cli.CommandLineUtils;
@@ -38,6 +37,7 @@ import java.io.FileNotFoundException;
import java.io.FileWriter;
import java.io.IOException;
import java.io.StringWriter;
+import java.io.Writer;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Iterator;
@@ -54,15 +54,15 @@ public class ApplyMojo
extends AbstractMojo
{
- public static final List PATCH_FAILURE_WATCH_PHRASES;
+ public static final List<String> PATCH_FAILURE_WATCH_PHRASES;
- public static final List DEFAULT_IGNORED_PATCHES;
+ public static final List<String> DEFAULT_IGNORED_PATCHES;
- public static final List DEFAULT_IGNORED_PATCH_PATTERNS;
+ public static final List<String> DEFAULT_IGNORED_PATCH_PATTERNS;
static
{
- List watches = new ArrayList();
+ List<String> watches = new ArrayList<>();
watches.add( "fail" );
watches.add( "skip" );
@@ -70,14 +70,14 @@ public class ApplyMojo
PATCH_FAILURE_WATCH_PHRASES = watches;
- List ignored = new ArrayList();
+ List<String> ignored = new ArrayList<>();
ignored.add( ".svn" );
ignored.add( "CVS" );
DEFAULT_IGNORED_PATCHES = ignored;
- List ignoredPatterns = new ArrayList();
+ List<String> ignoredPatterns = new ArrayList<>();
ignoredPatterns.add( ".svn/**" );
ignoredPatterns.add( "CVS/**" );
@@ -97,7 +97,7 @@ public class ApplyMojo
* is mutually exclusive with the <code>patchfile</code> parameter.
*/
@Parameter
- protected List patches;
+ protected List<String> patches;
/**
* Whether to skip this goal's execution.
@@ -194,7 +194,7 @@ public class ApplyMojo
* <code>skip</code> and <code>reject</code> are used.
*/
@Parameter
- private List failurePhrases = PATCH_FAILURE_WATCH_PHRASES;
+ private List<String> failurePhrases = PATCH_FAILURE_WATCH_PHRASES;
/**
* The original file which will be modified by the patch. By default, the patch tool will automatically derive the
@@ -296,7 +296,7 @@ public class ApplyMojo
getLog().info( "Exclude pattern: " + excludePatterns );
}
- List foundPatchFiles = FileUtils.getFileNames( patchDirectory, "*", excludePatterns, false );
+ List<String> foundPatchFiles = FileUtils.getFileNames( patchDirectory, "*", excludePatterns, false );
patchesToApply = findPatchesToApply( foundPatchFiles, patchDirectory );
@@ -340,10 +340,7 @@ public class ApplyMojo
throw new MojoFailureException( "unable to read patch tracking file: " + ioe.getMessage() );
}
- for ( Object patche : patches )
- {
- String patch = (String) patche;
-
+ for ( String patch : patches ) {
if ( !alreadyAppliedPatches.contains( patch ) )
{
File patchFile = new File( patchSourceDir, patch );
@@ -425,7 +422,7 @@ public class ApplyMojo
}
}
- private String applyPatches( Map patchesApplied )
+ private String applyPatches( Map<String, Commandline> patchesApplied )
throws MojoExecutionException
{
final StringWriter outputWriter = new StringWriter();
@@ -446,11 +443,9 @@ public class ApplyMojo
// used if failFast is false
List failedPatches = new ArrayList();
- for ( Object o : patchesApplied.entrySet() )
- {
- Entry entry = (Entry) o;
- String patchName = (String) entry.getKey();
- Commandline cli = (Commandline) entry.getValue();
+ for ( Entry<String, Commandline> entry : patchesApplied.entrySet()) {
+ String patchName = entry.getKey();
+ Commandline cli = entry.getValue();
try
{
@@ -481,12 +476,12 @@ public class ApplyMojo
if ( !failedPatches.isEmpty() )
{
getLog().error( "Failed applying one or more patches:" );
- for ( Object failedPatche : failedPatches )
+ for ( Object failedPatch : failedPatches )
{
- getLog().error( "* " + failedPatche );
+ getLog().error( "* " + failedPatch );
}
throw new MojoExecutionException( "Patch command failed for one or more patches."
- + " Please see console and debug output for more information." );
+ + " See console and debug output for more information." );
}
return outputWriter.toString();
@@ -513,12 +508,9 @@ public class ApplyMojo
private void writeTrackingFile( Map patchesApplied )
throws MojoExecutionException
{
- FileWriter writer = null;
- try
- {
- boolean appending = patchTrackingFile.exists();
+ boolean appending = patchTrackingFile.exists();
- writer = new FileWriter( patchTrackingFile, appending );
+ try (Writer writer = new FileWriter( patchTrackingFile, appending )) {
for ( Iterator it = patchesApplied.keySet().iterator(); it.hasNext(); )
{
@@ -536,26 +528,18 @@ public class ApplyMojo
}
}
- writer.close();
- writer = null;
}
catch ( IOException e )
{
throw new MojoExecutionException( "Failed to write patch-tracking file: " + patchTrackingFile, e );
}
- finally
- {
- IOUtil.close( writer );
- }
}
private void checkForWatchPhrases( String output )
throws MojoExecutionException
{
- for ( Object failurePhrase : failurePhrases )
+ for ( String phrase : failurePhrases )
{
- String phrase = (String) failurePhrase;
-
if ( output.contains( phrase ) )
{
throw new MojoExecutionException( "Failed to apply patches (detected watch-phrase: \'" + phrase
@@ -565,7 +549,7 @@ public class ApplyMojo
}
/**
- * Add a new Patch task to the Ant calling mechanism. Give preference to originalFile/destFile, then workDir, and
+ * Add a new Patch task to the calling mechanism. Give preference to originalFile/destFile, then workDir, and
* finally ${basedir}.
*/
private Commandline createPatchCommand( File patchFile )