You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by kh...@apache.org on 2022/09/13 21:28:43 UTC

[maven-shade-plugin] branch JDK8_IMPROVEMENTS updated: WIP: IMproved.

This is an automated email from the ASF dual-hosted git repository.

khmarbaise pushed a commit to branch JDK8_IMPROVEMENTS
in repository https://gitbox.apache.org/repos/asf/maven-shade-plugin.git


The following commit(s) were added to refs/heads/JDK8_IMPROVEMENTS by this push:
     new fd9b82e  WIP: IMproved.
fd9b82e is described below

commit fd9b82ee687dfa0a33b2adbefe5450491b996063
Author: Karl Heinz Marbaise <kh...@apache.org>
AuthorDate: Tue Sep 13 23:28:39 2022 +0200

    WIP: IMproved.
---
 .../shade/resource/DontIncludeResourceTransformer.java    | 15 +++++----------
 .../resource/ResourceBundleAppendingTransformer.java      |  9 ++-------
 .../maven/plugins/shade/resource/ResourceTransformer.java |  1 +
 .../shade/resource/ServicesResourceTransformer.java       |  8 ++++----
 .../shade/resource/SisuIndexResourceTransformer.java      |  2 +-
 .../plugins/shade/resource/XmlAppendingTransformer.java   |  3 ++-
 6 files changed, 15 insertions(+), 23 deletions(-)

diff --git a/src/main/java/org/apache/maven/plugins/shade/resource/DontIncludeResourceTransformer.java b/src/main/java/org/apache/maven/plugins/shade/resource/DontIncludeResourceTransformer.java
index e1b7bc2..f1d5cf6 100644
--- a/src/main/java/org/apache/maven/plugins/shade/resource/DontIncludeResourceTransformer.java
+++ b/src/main/java/org/apache/maven/plugins/shade/resource/DontIncludeResourceTransformer.java
@@ -44,19 +44,14 @@ public class DontIncludeResourceTransformer
         {
             return true;
         }
-        
-        if ( resources != null )
+
+        if ( resources == null )
         {
-            for ( String resourceEnd : resources )
-            {
-                if ( r.endsWith( resourceEnd ) )
-                {
-                    return true;
-                }
-            }
+            return false;
         }
 
-        return false;
+        return resources.stream().anyMatch( r::endsWith );
+
     }
 
     public void processResource( String resource, InputStream is, List<Relocator> relocators, long time )
diff --git a/src/main/java/org/apache/maven/plugins/shade/resource/ResourceBundleAppendingTransformer.java b/src/main/java/org/apache/maven/plugins/shade/resource/ResourceBundleAppendingTransformer.java
index a84322e..1cd11cb 100644
--- a/src/main/java/org/apache/maven/plugins/shade/resource/ResourceBundleAppendingTransformer.java
+++ b/src/main/java/org/apache/maven/plugins/shade/resource/ResourceBundleAppendingTransformer.java
@@ -64,13 +64,8 @@ public class ResourceBundleAppendingTransformer
     public void processResource( String resource, InputStream is, List<Relocator> relocators, long time )
         throws IOException
     {
-        ByteArrayOutputStream data = dataMap.get( resource );
-        if ( data == null )
-        {
-            data = new ByteArrayOutputStream();
-            dataMap.put( resource, data );
-        }
-        
+        ByteArrayOutputStream data = dataMap.computeIfAbsent( resource, v -> new ByteArrayOutputStream() );
+
         IOUtil.copy( is, data );
         data.write( '\n' );
 
diff --git a/src/main/java/org/apache/maven/plugins/shade/resource/ResourceTransformer.java b/src/main/java/org/apache/maven/plugins/shade/resource/ResourceTransformer.java
index 7b76666..5f7ea32 100644
--- a/src/main/java/org/apache/maven/plugins/shade/resource/ResourceTransformer.java
+++ b/src/main/java/org/apache/maven/plugins/shade/resource/ResourceTransformer.java
@@ -39,6 +39,7 @@ public interface ResourceTransformer
      * @throws IOException When the IO blows up
      * @deprecated prefer ReproducibleResourceTransformer
      */
+    @Deprecated
     void processResource( String resource, InputStream is, List<Relocator> relocators )
         throws IOException;
 
diff --git a/src/main/java/org/apache/maven/plugins/shade/resource/ServicesResourceTransformer.java b/src/main/java/org/apache/maven/plugins/shade/resource/ServicesResourceTransformer.java
index 7eaeaf5..b73551b 100644
--- a/src/main/java/org/apache/maven/plugins/shade/resource/ServicesResourceTransformer.java
+++ b/src/main/java/org/apache/maven/plugins/shade/resource/ServicesResourceTransformer.java
@@ -45,7 +45,7 @@ public class ServicesResourceTransformer
 {
     private static final String SERVICES_PATH = "META-INF/services";
 
-    private final Map<String, ArrayList<String>> serviceEntries = new HashMap<>();
+    private final Map<String, List<String>> serviceEntries = new HashMap<>();
 
     private long time = Long.MIN_VALUE;
 
@@ -68,7 +68,7 @@ public class ServicesResourceTransformer
         }
         resource = SERVICES_PATH + '/' + resource;
 
-        ArrayList<String> out = serviceEntries.computeIfAbsent( resource, k -> new ArrayList<>() );
+        List<String> out = serviceEntries.computeIfAbsent( resource, k -> new ArrayList<>() );
 
         Scanner scanner = new Scanner( is, StandardCharsets.UTF_8.name() );
         while ( scanner.hasNextLine() )
@@ -98,10 +98,10 @@ public class ServicesResourceTransformer
     public void modifyOutputStream( JarOutputStream jos )
             throws IOException
     {
-        for ( Map.Entry<String, ArrayList<String>> entry : serviceEntries.entrySet() )
+        for ( Map.Entry<String, List<String>> entry : serviceEntries.entrySet() )
         {
             String key = entry.getKey();
-            ArrayList<String> data = entry.getValue();
+            List<String> data = entry.getValue();
 
             JarEntry jarEntry = new JarEntry( key );
             jarEntry.setTime( time );
diff --git a/src/main/java/org/apache/maven/plugins/shade/resource/SisuIndexResourceTransformer.java b/src/main/java/org/apache/maven/plugins/shade/resource/SisuIndexResourceTransformer.java
index 546970d..093fa71 100644
--- a/src/main/java/org/apache/maven/plugins/shade/resource/SisuIndexResourceTransformer.java
+++ b/src/main/java/org/apache/maven/plugins/shade/resource/SisuIndexResourceTransformer.java
@@ -42,7 +42,7 @@ public class SisuIndexResourceTransformer
 {
     private static final String SISU_INDEX_PATH = "META-INF/sisu/javax.inject.Named";
 
-    private final ArrayList<String> indexEntries = new ArrayList<>();
+    private final List<String> indexEntries = new ArrayList<>();
 
     private long time = Long.MIN_VALUE;
 
diff --git a/src/main/java/org/apache/maven/plugins/shade/resource/XmlAppendingTransformer.java b/src/main/java/org/apache/maven/plugins/shade/resource/XmlAppendingTransformer.java
index c60cebc..ca58cf9 100644
--- a/src/main/java/org/apache/maven/plugins/shade/resource/XmlAppendingTransformer.java
+++ b/src/main/java/org/apache/maven/plugins/shade/resource/XmlAppendingTransformer.java
@@ -34,6 +34,7 @@ import org.jdom2.Document;
 import org.jdom2.Element;
 import org.jdom2.JDOMException;
 import org.jdom2.input.SAXBuilder;
+import org.jdom2.input.sax.XMLReaders;
 import org.jdom2.output.Format;
 import org.jdom2.output.XMLOutputter;
 import org.xml.sax.EntityResolver;
@@ -67,7 +68,7 @@ public class XmlAppendingTransformer
         Document r;
         try
         {
-            SAXBuilder builder = new SAXBuilder( false );
+            SAXBuilder builder = new SAXBuilder( XMLReaders.NONVALIDATING );
             builder.setExpandEntities( false );
             if ( ignoreDtd )
             {