You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by sl...@apache.org on 2020/04/02 21:31:53 UTC

[maven] branch master updated: Revert "[MNG-6867] extract methods, apply SLA"

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

slachiewicz pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven.git


The following commit(s) were added to refs/heads/master by this push:
     new d127bce  Revert "[MNG-6867] extract methods, apply SLA"
d127bce is described below

commit d127bce8c9ba1011ef531c864162368891e8d499
Author: Lewinski, Arne <ar...@DE-L072609.groupinfra.com>
AuthorDate: Sun Feb 16 14:54:11 2020 +0100

    Revert "[MNG-6867] extract methods, apply SLA"
    
    This reverts commit c423a090e385735d2b826860f790077269bbf8ba.
---
 .../plugin/internal/DefaultMavenPluginManager.java | 68 +++++++++-------------
 1 file changed, 26 insertions(+), 42 deletions(-)

diff --git a/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultMavenPluginManager.java b/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultMavenPluginManager.java
index eec09ef..500ead6 100644
--- a/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultMavenPluginManager.java
+++ b/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultMavenPluginManager.java
@@ -328,15 +328,37 @@ public class DefaultMavenPluginManager
 
         if ( plugin.isExtensions() )
         {
-            setupPluginDescriptor( pluginDescriptor, session );
+            ExtensionRealmCache.CacheRecord extensionRecord;
+            try
+            {
+                RepositorySystemSession repositorySession = session.getRepositorySession();
+                extensionRecord = setupExtensionsRealm( project, plugin, repositorySession );
+            }
+            catch ( PluginManagerException e )
+            {
+                // extensions realm is expected to be fully setup at this point
+                // any exception means a problem in maven code, not a user error
+                throw new IllegalStateException( e );
+            }
+
+            ClassRealm pluginRealm = extensionRecord.getRealm();
+            List<Artifact> pluginArtifacts = extensionRecord.getArtifacts();
+
+            for ( ComponentDescriptor<?> componentDescriptor : pluginDescriptor.getComponents() )
+            {
+                componentDescriptor.setRealm( pluginRealm );
+            }
+
+            pluginDescriptor.setClassRealm( pluginRealm );
+            pluginDescriptor.setArtifacts( pluginArtifacts );
         }
         else
         {
             Map<String, ClassLoader> foreignImports = calcImports( project, parent, imports );
 
-            PluginRealmCache.Key cacheKey =
-                pluginRealmCache.createKey( plugin, parent, foreignImports, filter,
-                                            project.getRemotePluginRepositories(), session.getRepositorySession() );
+            PluginRealmCache.Key cacheKey = pluginRealmCache.createKey( plugin, parent, foreignImports, filter,
+                                                                        project.getRemotePluginRepositories(),
+                                                                        session.getRepositorySession() );
 
             PluginRealmCache.CacheRecord cacheRecord = pluginRealmCache.get( cacheKey );
 
@@ -361,44 +383,6 @@ public class DefaultMavenPluginManager
         }
     }
 
-    private void setupPluginDescriptor( PluginDescriptor pluginDescriptor, MavenSession session )
-    {
-        setupPluginDescriptor( pluginDescriptor,
-                               setupExtensionsRealmInternal( session.getCurrentProject(), pluginDescriptor.getPlugin(),
-                                                             session.getRepositorySession() ) );
-    }
-
-    private void setupPluginDescriptor( PluginDescriptor pluginDescriptor,
-                                        ExtensionRealmCache.CacheRecord extensionRecord )
-    {
-        setupComponentDescriptors( extensionRecord, pluginDescriptor.getComponents() );
-        pluginDescriptor.setClassRealm( extensionRecord.getRealm() );
-        pluginDescriptor.setArtifacts( extensionRecord.getArtifacts() );
-    }
-
-    private void setupComponentDescriptors( ExtensionRealmCache.CacheRecord extensionRecord,
-                                            List<ComponentDescriptor<?>> components )
-    {
-        components.stream().forEach( descriptor -> descriptor.setRealm( extensionRecord.getRealm() ) );
-    }
-
-    /**
-     * For internal usage. It is assumed that the prerequisites are met so a setup of the extensions realm can be
-     * processed without any error. Any exception thrown indicates a programming error, not a user error!
-     */
-    private ExtensionRealmCache.CacheRecord setupExtensionsRealmInternal( MavenProject project, Plugin plugin,
-                                                                          RepositorySystemSession repositorySystemSession )
-    {
-        try
-        {
-            return setupExtensionsRealm( project, plugin, repositorySystemSession );
-        }
-        catch ( PluginManagerException e )
-        {
-            throw new IllegalStateException( e );
-        }
-    }
-
     private void createPluginRealm( PluginDescriptor pluginDescriptor, MavenSession session, ClassLoader parent,
                                     Map<String, ClassLoader> foreignImports, DependencyFilter filter )
         throws PluginResolutionException, PluginContainerException