You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by hb...@apache.org on 2019/01/14 13:02:47 UTC
[maven] 01/05: refactoring: extracted initParent() method
This is an automated email from the ASF dual-hosted git repository.
hboutemy pushed a commit to branch MNG-6533-2
in repository https://gitbox.apache.org/repos/asf/maven.git
commit 2928dc6b68660cc5ac4022b0bfbc84d51d6905e4
Author: Hervé Boutemy <hb...@apache.org>
AuthorDate: Thu Dec 27 01:01:10 2018 +0100
refactoring: extracted initParent() method
---
.../maven/project/DefaultProjectBuilder.java | 150 +++++++++++----------
1 file changed, 78 insertions(+), 72 deletions(-)
diff --git a/maven-core/src/main/java/org/apache/maven/project/DefaultProjectBuilder.java b/maven-core/src/main/java/org/apache/maven/project/DefaultProjectBuilder.java
index a402040..a44e932 100644
--- a/maven-core/src/main/java/org/apache/maven/project/DefaultProjectBuilder.java
+++ b/maven-core/src/main/java/org/apache/maven/project/DefaultProjectBuilder.java
@@ -637,78 +637,7 @@ public class DefaultProjectBuilder
project.setOriginalModel( result.getRawModel() );
project.setFile( model.getPomFile() );
- Model parentModel = result.getModelIds().size() > 1 && !result.getModelIds().get( 1 ).isEmpty()
- ? result.getRawModel( result.getModelIds().get( 1 ) )
- : null;
-
- if ( parentModel != null )
- {
- final String parentGroupId = inheritedGroupId( result, 1 );
- final String parentVersion = inheritedVersion( result, 1 );
-
- project.setParentArtifact( repositorySystem.createProjectArtifact( parentGroupId,
- parentModel.getArtifactId(),
- parentVersion ) );
-
- // org.apache.maven.its.mng4834:parent:0.1
- String parentModelId = result.getModelIds().get( 1 );
- File parentPomFile = result.getRawModel( parentModelId ).getPomFile();
- MavenProject parent = projects.get( parentModelId );
- if ( parent == null )
- {
- //
- // At this point the DefaultModelBuildingListener has fired and it populates the
- // remote repositories with those found in the pom.xml, along with the existing externally
- // defined repositories.
- //
- projectBuildingRequest.setRemoteRepositories( project.getRemoteArtifactRepositories() );
- if ( parentPomFile != null )
- {
- project.setParentFile( parentPomFile );
- try
- {
- parent = build( parentPomFile, projectBuildingRequest ).getProject();
- }
- catch ( ProjectBuildingException e )
- {
- // MNG-4488 where let invalid parents slide on by
- if ( logger.isDebugEnabled() )
- {
- // Message below is checked for in the MNG-2199 core IT.
- logger.warn( "Failed to build parent project for " + project.getId(), e );
- }
- else
- {
- // Message below is checked for in the MNG-2199 core IT.
- logger.warn( "Failed to build parent project for " + project.getId() );
- }
- }
- }
- else
- {
- Artifact parentArtifact = project.getParentArtifact();
- try
- {
- parent = build( parentArtifact, projectBuildingRequest ).getProject();
- }
- catch ( ProjectBuildingException e )
- {
- // MNG-4488 where let invalid parents slide on by
- if ( logger.isDebugEnabled() )
- {
- // Message below is checked for in the MNG-2199 core IT.
- logger.warn( "Failed to build parent project for " + project.getId(), e );
- }
- else
- {
- // Message below is checked for in the MNG-2199 core IT.
- logger.warn( "Failed to build parent project for " + project.getId() );
- }
- }
- }
- }
- project.setParent( parent );
- }
+ initParent( project, projects, result, projectBuildingRequest );
Artifact projectArtifact =
repositorySystem.createArtifact( project.getGroupId(), project.getArtifactId(), project.getVersion(), null,
@@ -885,6 +814,83 @@ public class DefaultProjectBuilder
}
}
+ private void initParent( MavenProject project, Map<String, MavenProject> projects, ModelBuildingResult result,
+ ProjectBuildingRequest projectBuildingRequest )
+ {
+ Model parentModel = result.getModelIds().size() > 1 && !result.getModelIds().get( 1 ).isEmpty()
+ ? result.getRawModel( result.getModelIds().get( 1 ) )
+ : null;
+
+ if ( parentModel != null )
+ {
+ final String parentGroupId = inheritedGroupId( result, 1 );
+ final String parentVersion = inheritedVersion( result, 1 );
+
+ project.setParentArtifact( repositorySystem.createProjectArtifact( parentGroupId,
+ parentModel.getArtifactId(),
+ parentVersion ) );
+
+ // org.apache.maven.its.mng4834:parent:0.1
+ String parentModelId = result.getModelIds().get( 1 );
+ File parentPomFile = result.getRawModel( parentModelId ).getPomFile();
+ MavenProject parent = projects.get( parentModelId );
+ if ( parent == null )
+ {
+ //
+ // At this point the DefaultModelBuildingListener has fired and it populates the
+ // remote repositories with those found in the pom.xml, along with the existing externally
+ // defined repositories.
+ //
+ projectBuildingRequest.setRemoteRepositories( project.getRemoteArtifactRepositories() );
+ if ( parentPomFile != null )
+ {
+ project.setParentFile( parentPomFile );
+ try
+ {
+ parent = build( parentPomFile, projectBuildingRequest ).getProject();
+ }
+ catch ( ProjectBuildingException e )
+ {
+ // MNG-4488 where let invalid parents slide on by
+ if ( logger.isDebugEnabled() )
+ {
+ // Message below is checked for in the MNG-2199 core IT.
+ logger.warn( "Failed to build parent project for " + project.getId(), e );
+ }
+ else
+ {
+ // Message below is checked for in the MNG-2199 core IT.
+ logger.warn( "Failed to build parent project for " + project.getId() );
+ }
+ }
+ }
+ else
+ {
+ Artifact parentArtifact = project.getParentArtifact();
+ try
+ {
+ parent = build( parentArtifact, projectBuildingRequest ).getProject();
+ }
+ catch ( ProjectBuildingException e )
+ {
+ // MNG-4488 where let invalid parents slide on by
+ if ( logger.isDebugEnabled() )
+ {
+ // Message below is checked for in the MNG-2199 core IT.
+ logger.warn( "Failed to build parent project for " + project.getId(), e );
+ }
+ else
+ {
+ // Message below is checked for in the MNG-2199 core IT.
+ logger.warn( "Failed to build parent project for " + project.getId() );
+ }
+ }
+ }
+ }
+ project.setParent( parent );
+ }
+ }
+
private static String inheritedGroupId( final ModelBuildingResult result, final int modelIndex )
{
String groupId = null;