You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@maven.apache.org by Hervé BOUTEMY <he...@free.fr> on 2015/08/17 07:57:32 UTC
Re: maven git commit: MNG-5871 refactoring: put url extrapolation algorithm in inheritance model merger
I just checked this commit through core ITs and everything went well
Any objection if I merge it to master now, before the Maven 3.3.7 release?
Regards,
Hervé
Le jeudi 13 août 2015 00:38:43 hboutemy@apache.org a écrit :
> Repository: maven
> Updated Branches:
> refs/heads/MNG-5871 [created] 48ae9fd4a
>
>
> MNG-5871 refactoring: put url extrapolation algorithm in inheritance
> model merger
>
> Project: http://git-wip-us.apache.org/repos/asf/maven/repo
> Commit: http://git-wip-us.apache.org/repos/asf/maven/commit/48ae9fd4
> Tree: http://git-wip-us.apache.org/repos/asf/maven/tree/48ae9fd4
> Diff: http://git-wip-us.apache.org/repos/asf/maven/diff/48ae9fd4
>
> Branch: refs/heads/MNG-5871
> Commit: 48ae9fd4af5be45c50aa6164dba96d254e902564
> Parents: 7f21ebe
> Author: Hervé Boutemy <hb...@apache.org>
> Authored: Thu Aug 13 02:36:59 2015 +0200
> Committer: Hervé Boutemy <hb...@apache.org>
> Committed: Thu Aug 13 02:36:59 2015 +0200
>
> ----------------------------------------------------------------------
> .../DefaultInheritanceAssembler.java | 54 +++++++++++++++++
> .../maven/model/merge/MavenModelMerger.java | 63 +++-----------------
> 2 files changed, 62 insertions(+), 55 deletions(-)
> ----------------------------------------------------------------------
>
>
> http://git-wip-us.apache.org/repos/asf/maven/blob/48ae9fd4/maven-model-build
> er/src/main/java/org/apache/maven/model/inheritance/DefaultInheritanceAssemb
> ler.java
> ---------------------------------------------------------------------- diff
> --git
> a/maven-model-builder/src/main/java/org/apache/maven/model/inheritance/Defa
> ultInheritanceAssembler.java
> b/maven-model-builder/src/main/java/org/apache/maven/model/inheritance/Defa
> ultInheritanceAssembler.java index 3b812ea..48fdad5 100644
> ---
> a/maven-model-builder/src/main/java/org/apache/maven/model/inheritance/Defa
> ultInheritanceAssembler.java +++
> b/maven-model-builder/src/main/java/org/apache/maven/model/inheritance/Defa
> ultInheritanceAssembler.java @@ -131,6 +131,60 @@ public class
> DefaultInheritanceAssembler
> {
>
> @Override
> + protected String extrapolateChildUrl( String parentUrl, Map<Object,
> Object> context ) + {
> + Object artifactId = context.get( ARTIFACT_ID );
> + Object childPathAdjustment = context.get( CHILD_PATH_ADJUSTMENT
> ); +
> + if ( artifactId != null && childPathAdjustment != null )
> + {
> + // append childPathAdjustment and artifactId to parent url
> + return appendPath( parentUrl, artifactId.toString(),
> childPathAdjustment.toString() ); + }
> + else
> + {
> + return parentUrl;
> + }
> + }
> +
> + private String appendPath( String parentUrl, String childPath,
> String pathAdjustment ) + {
> + String url = parentUrl;
> + url = concatPath( url, pathAdjustment );
> + url = concatPath( url, childPath );
> + return url;
> + }
> +
> + private String concatPath( String base, String path )
> + {
> + String result = base;
> +
> + if ( path != null && path.length() > 0 )
> + {
> + if ( ( result.endsWith( "/" ) && !path.startsWith( "/" ) )
> + || ( !result.endsWith( "/" ) && path.startsWith( "/" )
> ) ) + {
> + result += path;
> + }
> + else if ( result.endsWith( "/" ) && path.startsWith( "/" )
> ) + {
> + result += path.substring( 1 );
> + }
> + else
> + {
> + result += '/';
> + result += path;
> + }
> + if ( base.endsWith( "/" ) && !result.endsWith( "/" ) )
> + {
> + result += '/';
> + }
> + }
> +
> + return result;
> + }
> +
> + @Override
> protected void mergePluginContainer_Plugins( PluginContainer
> target, PluginContainer source, boolean sourceDominant, Map<Object, Object>
> context ) {
>
> http://git-wip-us.apache.org/repos/asf/maven/blob/48ae9fd4/maven-model-build
> er/src/main/java/org/apache/maven/model/merge/MavenModelMerger.java
> ---------------------------------------------------------------------- diff
> --git
> a/maven-model-builder/src/main/java/org/apache/maven/model/merge/MavenModel
> Merger.java
> b/maven-model-builder/src/main/java/org/apache/maven/model/merge/MavenModel
> Merger.java index 66577cb..0007af5 100644
> ---
> a/maven-model-builder/src/main/java/org/apache/maven/model/merge/MavenModel
> Merger.java +++
> b/maven-model-builder/src/main/java/org/apache/maven/model/merge/MavenModel
> Merger.java @@ -65,7 +65,7 @@ public class MavenModelMerger
> /**
> * The context key for the artifact id of the target model.
> */
> - private static final String ARTIFACT_ID = "artifact-id";
> + public static final String ARTIFACT_ID = "artifact-id";
>
> @Override
> protected void mergeModel( Model target, Model source, boolean
> sourceDominant, Map<Object, Object> context ) @@ -102,7 +102,7 @@ public
> class MavenModelMerger
> }
> else if ( target.getUrl() == null )
> {
> - target.setUrl( appendPath( src, context ) );
> + target.setUrl( extrapolateChildUrl( src, context ) );
> target.setLocation( "url", source.getLocation( "url" ) );
> }
> }
> @@ -466,7 +466,7 @@ public class MavenModelMerger
> }
> else if ( target.getUrl() == null )
> {
> - target.setUrl( appendPath( src, context ) );
> + target.setUrl( extrapolateChildUrl( src, context ) );
> target.setLocation( "url", source.getLocation( "url" ) );
> }
> }
> @@ -485,7 +485,7 @@ public class MavenModelMerger
> }
> else if ( target.getUrl() == null )
> {
> - target.setUrl( appendPath( src, context ) );
> + target.setUrl( extrapolateChildUrl( src, context ) );
> target.setLocation( "url", source.getLocation( "url" ) );
> }
> }
> @@ -504,7 +504,7 @@ public class MavenModelMerger
> }
> else if ( target.getConnection() == null )
> {
> - target.setConnection( appendPath( src, context ) );
> + target.setConnection( extrapolateChildUrl( src, context )
> ); target.setLocation( "connection", source.getLocation( "connection" ) );
> }
> }
> @@ -524,7 +524,7 @@ public class MavenModelMerger
> }
> else if ( target.getDeveloperConnection() == null )
> {
> - target.setDeveloperConnection( appendPath( src, context )
> ); + target.setDeveloperConnection( extrapolateChildUrl(
> src, context ) ); target.setLocation( "developerConnection",
> source.getLocation( "developerConnection" ) ); }
> }
> @@ -670,56 +670,9 @@ public class MavenModelMerger
> return exclusion.getGroupId() + ':' + exclusion.getArtifactId();
> }
>
> - private String appendPath( String parentPath, Map<Object, Object>
> context ) + protected String extrapolateChildUrl( String parentUrl,
> Map<Object, Object> context ) {
> - Object artifactId = context.get( ARTIFACT_ID );
> - Object childPathAdjustment = context.get( CHILD_PATH_ADJUSTMENT );
> -
> - if ( artifactId != null && childPathAdjustment != null )
> - {
> - return appendPath( parentPath, artifactId.toString(),
> childPathAdjustment.toString() ); - }
> - else
> - {
> - return parentPath;
> - }
> - }
> -
> - private String appendPath( String parentPath, String childPath, String
> pathAdjustment ) - {
> - String path = parentPath;
> - path = concatPath( path, pathAdjustment );
> - path = concatPath( path, childPath );
> - return path;
> - }
> -
> - private String concatPath( String base, String path )
> - {
> - String result = base;
> -
> - if ( path != null && path.length() > 0 )
> - {
> - if ( ( result.endsWith( "/" ) && !path.startsWith( "/" ) )
> - || ( !result.endsWith( "/" ) && path.startsWith( "/" ) ) )
> - {
> - result += path;
> - }
> - else if ( result.endsWith( "/" ) && path.startsWith( "/" ) )
> - {
> - result += path.substring( 1 );
> - }
> - else
> - {
> - result += '/';
> - result += path;
> - }
> - if ( base.endsWith( "/" ) && !result.endsWith( "/" ) )
> - {
> - result += '/';
> - }
> - }
> -
> - return result;
> + return parentUrl;
> }
>
> }
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org
Re: maven git commit: MNG-5871 refactoring: put url extrapolation algorithm in inheritance model merger
Posted by Hervé BOUTEMY <he...@free.fr>.
ok, done
thank you
Hervé
Le lundi 17 août 2015 08:44:54 Jason van Zyl a écrit :
> Go for it. Let me know when you’re happy and I’ll spin the release.
>
> > On Aug 17, 2015, at 1:57 AM, Hervé BOUTEMY <he...@free.fr> wrote:
> >
> > I just checked this commit through core ITs and everything went well
> >
> > Any objection if I merge it to master now, before the Maven 3.3.7 release?
> >
> > Regards,
> >
> > Hervé
> >
> > Le jeudi 13 août 2015 00:38:43 hboutemy@apache.org a écrit :
> >> Repository: maven
> >>
> >> Updated Branches:
> >> refs/heads/MNG-5871 [created] 48ae9fd4a
> >>
> >> MNG-5871 refactoring: put url extrapolation algorithm in inheritance
> >> model merger
> >>
> >> Project: http://git-wip-us.apache.org/repos/asf/maven/repo
> >> Commit: http://git-wip-us.apache.org/repos/asf/maven/commit/48ae9fd4
> >> Tree: http://git-wip-us.apache.org/repos/asf/maven/tree/48ae9fd4
> >> Diff: http://git-wip-us.apache.org/repos/asf/maven/diff/48ae9fd4
> >>
> >> Branch: refs/heads/MNG-5871
> >> Commit: 48ae9fd4af5be45c50aa6164dba96d254e902564
> >> Parents: 7f21ebe
> >> Author: Hervé Boutemy <hb...@apache.org>
> >> Authored: Thu Aug 13 02:36:59 2015 +0200
> >> Committer: Hervé Boutemy <hb...@apache.org>
> >> Committed: Thu Aug 13 02:36:59 2015 +0200
> >>
> >> ----------------------------------------------------------------------
> >> .../DefaultInheritanceAssembler.java | 54 +++++++++++++++++
> >> .../maven/model/merge/MavenModelMerger.java | 63 +++-----------------
> >> 2 files changed, 62 insertions(+), 55 deletions(-)
> >> ----------------------------------------------------------------------
> >>
> >>
> >> http://git-wip-us.apache.org/repos/asf/maven/blob/48ae9fd4/maven-model-bu
> >> ild
> >> er/src/main/java/org/apache/maven/model/inheritance/DefaultInheritanceAs
> >> semb ler.java
> >> ----------------------------------------------------------------------
> >> diff
> >> --git
> >> a/maven-model-builder/src/main/java/org/apache/maven/model/inheritance/De
> >> fa
> >> ultInheritanceAssembler.java
> >> b/maven-model-builder/src/main/java/org/apache/maven/model/inheritance/De
> >> fa
> >> ultInheritanceAssembler.java index 3b812ea..48fdad5 100644
> >> ---
> >> a/maven-model-builder/src/main/java/org/apache/maven/model/inheritance/De
> >> fa
> >> ultInheritanceAssembler.java +++
> >> b/maven-model-builder/src/main/java/org/apache/maven/model/inheritance/De
> >> fa
> >> ultInheritanceAssembler.java @@ -131,6 +131,60 @@ public class
> >> DefaultInheritanceAssembler
> >>
> >> {
> >>
> >> @Override
> >>
> >> + protected String extrapolateChildUrl( String parentUrl,
> >> Map<Object, Object> context ) + {
> >> + Object artifactId = context.get( ARTIFACT_ID );
> >> + Object childPathAdjustment = context.get(
> >> CHILD_PATH_ADJUSTMENT ); +
> >> + if ( artifactId != null && childPathAdjustment != null )
> >> + {
> >> + // append childPathAdjustment and artifactId to parent
> >> url
> >> + return appendPath( parentUrl, artifactId.toString(),
> >> childPathAdjustment.toString() ); + }
> >> + else
> >> + {
> >> + return parentUrl;
> >> + }
> >> + }
> >> +
> >> + private String appendPath( String parentUrl, String childPath,
> >> String pathAdjustment ) + {
> >> + String url = parentUrl;
> >> + url = concatPath( url, pathAdjustment );
> >> + url = concatPath( url, childPath );
> >> + return url;
> >> + }
> >> +
> >> + private String concatPath( String base, String path )
> >> + {
> >> + String result = base;
> >> +
> >> + if ( path != null && path.length() > 0 )
> >> + {
> >> + if ( ( result.endsWith( "/" ) && !path.startsWith( "/" )
> >> )
> >> + || ( !result.endsWith( "/" ) && path.startsWith( "/"
> >> )
> >> ) ) + {
> >> + result += path;
> >> + }
> >> + else if ( result.endsWith( "/" ) && path.startsWith( "/"
> >> )
> >> ) + {
> >> + result += path.substring( 1 );
> >> + }
> >> + else
> >> + {
> >> + result += '/';
> >> + result += path;
> >> + }
> >> + if ( base.endsWith( "/" ) && !result.endsWith( "/" ) )
> >> + {
> >> + result += '/';
> >> + }
> >> + }
> >> +
> >> + return result;
> >> + }
> >> +
> >> + @Override
> >>
> >> protected void mergePluginContainer_Plugins( PluginContainer
> >>
> >> target, PluginContainer source, boolean sourceDominant, Map<Object,
> >> Object>
> >> context ) {
> >>
> >> http://git-wip-us.apache.org/repos/asf/maven/blob/48ae9fd4/maven-model-bu
> >> ild er/src/main/java/org/apache/maven/model/merge/MavenModelMerger.java
> >> ----------------------------------------------------------------------
> >> diff --git
> >> a/maven-model-builder/src/main/java/org/apache/maven/model/merge/MavenMod
> >> el
> >> Merger.java
> >> b/maven-model-builder/src/main/java/org/apache/maven/model/merge/MavenMod
> >> el
> >> Merger.java index 66577cb..0007af5 100644
> >> ---
> >> a/maven-model-builder/src/main/java/org/apache/maven/model/merge/MavenMod
> >> el
> >> Merger.java +++
> >> b/maven-model-builder/src/main/java/org/apache/maven/model/merge/MavenMod
> >> el
> >> Merger.java @@ -65,7 +65,7 @@ public class MavenModelMerger
> >>
> >> /**
> >>
> >> * The context key for the artifact id of the target model.
> >> */
> >>
> >> - private static final String ARTIFACT_ID = "artifact-id";
> >> + public static final String ARTIFACT_ID = "artifact-id";
> >>
> >> @Override
> >> protected void mergeModel( Model target, Model source, boolean
> >>
> >> sourceDominant, Map<Object, Object> context ) @@ -102,7 +102,7 @@ public
> >> class MavenModelMerger
> >>
> >> }
> >> else if ( target.getUrl() == null )
> >> {
> >>
> >> - target.setUrl( appendPath( src, context ) );
> >> + target.setUrl( extrapolateChildUrl( src, context ) );
> >>
> >> target.setLocation( "url", source.getLocation( "url" ) );
> >>
> >> }
> >>
> >> }
> >>
> >> @@ -466,7 +466,7 @@ public class MavenModelMerger
> >>
> >> }
> >> else if ( target.getUrl() == null )
> >> {
> >>
> >> - target.setUrl( appendPath( src, context ) );
> >> + target.setUrl( extrapolateChildUrl( src, context ) );
> >>
> >> target.setLocation( "url", source.getLocation( "url" ) );
> >>
> >> }
> >>
> >> }
> >>
> >> @@ -485,7 +485,7 @@ public class MavenModelMerger
> >>
> >> }
> >> else if ( target.getUrl() == null )
> >> {
> >>
> >> - target.setUrl( appendPath( src, context ) );
> >> + target.setUrl( extrapolateChildUrl( src, context ) );
> >>
> >> target.setLocation( "url", source.getLocation( "url" ) );
> >>
> >> }
> >>
> >> }
> >>
> >> @@ -504,7 +504,7 @@ public class MavenModelMerger
> >>
> >> }
> >> else if ( target.getConnection() == null )
> >> {
> >>
> >> - target.setConnection( appendPath( src, context ) );
> >> + target.setConnection( extrapolateChildUrl( src, context
> >> )
> >> ); target.setLocation( "connection", source.getLocation( "connection" )
> >> );
> >> }
> >>
> >> }
> >>
> >> @@ -524,7 +524,7 @@ public class MavenModelMerger
> >>
> >> }
> >> else if ( target.getDeveloperConnection() == null )
> >> {
> >>
> >> - target.setDeveloperConnection( appendPath( src, context
> >> )
> >> ); + target.setDeveloperConnection( extrapolateChildUrl(
> >> src, context ) ); target.setLocation( "developerConnection",
> >> source.getLocation( "developerConnection" ) ); }
> >>
> >> }
> >>
> >> @@ -670,56 +670,9 @@ public class MavenModelMerger
> >>
> >> return exclusion.getGroupId() + ':' + exclusion.getArtifactId();
> >>
> >> }
> >>
> >> - private String appendPath( String parentPath, Map<Object, Object>
> >> context ) + protected String extrapolateChildUrl( String parentUrl,
> >> Map<Object, Object> context ) {
> >> - Object artifactId = context.get( ARTIFACT_ID );
> >> - Object childPathAdjustment = context.get( CHILD_PATH_ADJUSTMENT
> >> );
> >> -
> >> - if ( artifactId != null && childPathAdjustment != null )
> >> - {
> >> - return appendPath( parentPath, artifactId.toString(),
> >> childPathAdjustment.toString() ); - }
> >> - else
> >> - {
> >> - return parentPath;
> >> - }
> >> - }
> >> -
> >> - private String appendPath( String parentPath, String childPath,
> >> String
> >> pathAdjustment ) - {
> >> - String path = parentPath;
> >> - path = concatPath( path, pathAdjustment );
> >> - path = concatPath( path, childPath );
> >> - return path;
> >> - }
> >> -
> >> - private String concatPath( String base, String path )
> >> - {
> >> - String result = base;
> >> -
> >> - if ( path != null && path.length() > 0 )
> >> - {
> >> - if ( ( result.endsWith( "/" ) && !path.startsWith( "/" ) )
> >> - || ( !result.endsWith( "/" ) && path.startsWith( "/" ) )
> >> )
> >> - {
> >> - result += path;
> >> - }
> >> - else if ( result.endsWith( "/" ) && path.startsWith( "/" ) )
> >> - {
> >> - result += path.substring( 1 );
> >> - }
> >> - else
> >> - {
> >> - result += '/';
> >> - result += path;
> >> - }
> >> - if ( base.endsWith( "/" ) && !result.endsWith( "/" ) )
> >> - {
> >> - result += '/';
> >> - }
> >> - }
> >> -
> >> - return result;
> >> + return parentUrl;
> >>
> >> }
> >>
> >> }
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> > For additional commands, e-mail: dev-help@maven.apache.org
>
> Thanks,
>
> Jason
>
> ----------------------------------------------------------
> Jason van Zyl
> Founder, Takari and Apache Maven
> http://twitter.com/jvanzyl
> http://twitter.com/takari_io
> ---------------------------------------------------------
>
> I never make the mistake of arguing with people for whose opinions I have no
> respect.
>
> -- Edward Gibbon
>
>
>
>
>
>
>
>
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> For additional commands, e-mail: dev-help@maven.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org
Re: maven git commit: MNG-5871 refactoring: put url extrapolation algorithm in inheritance model merger
Posted by Jason van Zyl <ja...@takari.io>.
Go for it. Let me know when you’re happy and I’ll spin the release.
> On Aug 17, 2015, at 1:57 AM, Hervé BOUTEMY <he...@free.fr> wrote:
>
> I just checked this commit through core ITs and everything went well
>
> Any objection if I merge it to master now, before the Maven 3.3.7 release?
>
> Regards,
>
> Hervé
>
> Le jeudi 13 août 2015 00:38:43 hboutemy@apache.org a écrit :
>> Repository: maven
>> Updated Branches:
>> refs/heads/MNG-5871 [created] 48ae9fd4a
>>
>>
>> MNG-5871 refactoring: put url extrapolation algorithm in inheritance
>> model merger
>>
>> Project: http://git-wip-us.apache.org/repos/asf/maven/repo
>> Commit: http://git-wip-us.apache.org/repos/asf/maven/commit/48ae9fd4
>> Tree: http://git-wip-us.apache.org/repos/asf/maven/tree/48ae9fd4
>> Diff: http://git-wip-us.apache.org/repos/asf/maven/diff/48ae9fd4
>>
>> Branch: refs/heads/MNG-5871
>> Commit: 48ae9fd4af5be45c50aa6164dba96d254e902564
>> Parents: 7f21ebe
>> Author: Hervé Boutemy <hb...@apache.org>
>> Authored: Thu Aug 13 02:36:59 2015 +0200
>> Committer: Hervé Boutemy <hb...@apache.org>
>> Committed: Thu Aug 13 02:36:59 2015 +0200
>>
>> ----------------------------------------------------------------------
>> .../DefaultInheritanceAssembler.java | 54 +++++++++++++++++
>> .../maven/model/merge/MavenModelMerger.java | 63 +++-----------------
>> 2 files changed, 62 insertions(+), 55 deletions(-)
>> ----------------------------------------------------------------------
>>
>>
>> http://git-wip-us.apache.org/repos/asf/maven/blob/48ae9fd4/maven-model-build
>> er/src/main/java/org/apache/maven/model/inheritance/DefaultInheritanceAssemb
>> ler.java
>> ---------------------------------------------------------------------- diff
>> --git
>> a/maven-model-builder/src/main/java/org/apache/maven/model/inheritance/Defa
>> ultInheritanceAssembler.java
>> b/maven-model-builder/src/main/java/org/apache/maven/model/inheritance/Defa
>> ultInheritanceAssembler.java index 3b812ea..48fdad5 100644
>> ---
>> a/maven-model-builder/src/main/java/org/apache/maven/model/inheritance/Defa
>> ultInheritanceAssembler.java +++
>> b/maven-model-builder/src/main/java/org/apache/maven/model/inheritance/Defa
>> ultInheritanceAssembler.java @@ -131,6 +131,60 @@ public class
>> DefaultInheritanceAssembler
>> {
>>
>> @Override
>> + protected String extrapolateChildUrl( String parentUrl, Map<Object,
>> Object> context ) + {
>> + Object artifactId = context.get( ARTIFACT_ID );
>> + Object childPathAdjustment = context.get( CHILD_PATH_ADJUSTMENT
>> ); +
>> + if ( artifactId != null && childPathAdjustment != null )
>> + {
>> + // append childPathAdjustment and artifactId to parent url
>> + return appendPath( parentUrl, artifactId.toString(),
>> childPathAdjustment.toString() ); + }
>> + else
>> + {
>> + return parentUrl;
>> + }
>> + }
>> +
>> + private String appendPath( String parentUrl, String childPath,
>> String pathAdjustment ) + {
>> + String url = parentUrl;
>> + url = concatPath( url, pathAdjustment );
>> + url = concatPath( url, childPath );
>> + return url;
>> + }
>> +
>> + private String concatPath( String base, String path )
>> + {
>> + String result = base;
>> +
>> + if ( path != null && path.length() > 0 )
>> + {
>> + if ( ( result.endsWith( "/" ) && !path.startsWith( "/" ) )
>> + || ( !result.endsWith( "/" ) && path.startsWith( "/" )
>> ) ) + {
>> + result += path;
>> + }
>> + else if ( result.endsWith( "/" ) && path.startsWith( "/" )
>> ) + {
>> + result += path.substring( 1 );
>> + }
>> + else
>> + {
>> + result += '/';
>> + result += path;
>> + }
>> + if ( base.endsWith( "/" ) && !result.endsWith( "/" ) )
>> + {
>> + result += '/';
>> + }
>> + }
>> +
>> + return result;
>> + }
>> +
>> + @Override
>> protected void mergePluginContainer_Plugins( PluginContainer
>> target, PluginContainer source, boolean sourceDominant, Map<Object, Object>
>> context ) {
>>
>> http://git-wip-us.apache.org/repos/asf/maven/blob/48ae9fd4/maven-model-build
>> er/src/main/java/org/apache/maven/model/merge/MavenModelMerger.java
>> ---------------------------------------------------------------------- diff
>> --git
>> a/maven-model-builder/src/main/java/org/apache/maven/model/merge/MavenModel
>> Merger.java
>> b/maven-model-builder/src/main/java/org/apache/maven/model/merge/MavenModel
>> Merger.java index 66577cb..0007af5 100644
>> ---
>> a/maven-model-builder/src/main/java/org/apache/maven/model/merge/MavenModel
>> Merger.java +++
>> b/maven-model-builder/src/main/java/org/apache/maven/model/merge/MavenModel
>> Merger.java @@ -65,7 +65,7 @@ public class MavenModelMerger
>> /**
>> * The context key for the artifact id of the target model.
>> */
>> - private static final String ARTIFACT_ID = "artifact-id";
>> + public static final String ARTIFACT_ID = "artifact-id";
>>
>> @Override
>> protected void mergeModel( Model target, Model source, boolean
>> sourceDominant, Map<Object, Object> context ) @@ -102,7 +102,7 @@ public
>> class MavenModelMerger
>> }
>> else if ( target.getUrl() == null )
>> {
>> - target.setUrl( appendPath( src, context ) );
>> + target.setUrl( extrapolateChildUrl( src, context ) );
>> target.setLocation( "url", source.getLocation( "url" ) );
>> }
>> }
>> @@ -466,7 +466,7 @@ public class MavenModelMerger
>> }
>> else if ( target.getUrl() == null )
>> {
>> - target.setUrl( appendPath( src, context ) );
>> + target.setUrl( extrapolateChildUrl( src, context ) );
>> target.setLocation( "url", source.getLocation( "url" ) );
>> }
>> }
>> @@ -485,7 +485,7 @@ public class MavenModelMerger
>> }
>> else if ( target.getUrl() == null )
>> {
>> - target.setUrl( appendPath( src, context ) );
>> + target.setUrl( extrapolateChildUrl( src, context ) );
>> target.setLocation( "url", source.getLocation( "url" ) );
>> }
>> }
>> @@ -504,7 +504,7 @@ public class MavenModelMerger
>> }
>> else if ( target.getConnection() == null )
>> {
>> - target.setConnection( appendPath( src, context ) );
>> + target.setConnection( extrapolateChildUrl( src, context )
>> ); target.setLocation( "connection", source.getLocation( "connection" ) );
>> }
>> }
>> @@ -524,7 +524,7 @@ public class MavenModelMerger
>> }
>> else if ( target.getDeveloperConnection() == null )
>> {
>> - target.setDeveloperConnection( appendPath( src, context )
>> ); + target.setDeveloperConnection( extrapolateChildUrl(
>> src, context ) ); target.setLocation( "developerConnection",
>> source.getLocation( "developerConnection" ) ); }
>> }
>> @@ -670,56 +670,9 @@ public class MavenModelMerger
>> return exclusion.getGroupId() + ':' + exclusion.getArtifactId();
>> }
>>
>> - private String appendPath( String parentPath, Map<Object, Object>
>> context ) + protected String extrapolateChildUrl( String parentUrl,
>> Map<Object, Object> context ) {
>> - Object artifactId = context.get( ARTIFACT_ID );
>> - Object childPathAdjustment = context.get( CHILD_PATH_ADJUSTMENT );
>> -
>> - if ( artifactId != null && childPathAdjustment != null )
>> - {
>> - return appendPath( parentPath, artifactId.toString(),
>> childPathAdjustment.toString() ); - }
>> - else
>> - {
>> - return parentPath;
>> - }
>> - }
>> -
>> - private String appendPath( String parentPath, String childPath, String
>> pathAdjustment ) - {
>> - String path = parentPath;
>> - path = concatPath( path, pathAdjustment );
>> - path = concatPath( path, childPath );
>> - return path;
>> - }
>> -
>> - private String concatPath( String base, String path )
>> - {
>> - String result = base;
>> -
>> - if ( path != null && path.length() > 0 )
>> - {
>> - if ( ( result.endsWith( "/" ) && !path.startsWith( "/" ) )
>> - || ( !result.endsWith( "/" ) && path.startsWith( "/" ) ) )
>> - {
>> - result += path;
>> - }
>> - else if ( result.endsWith( "/" ) && path.startsWith( "/" ) )
>> - {
>> - result += path.substring( 1 );
>> - }
>> - else
>> - {
>> - result += '/';
>> - result += path;
>> - }
>> - if ( base.endsWith( "/" ) && !result.endsWith( "/" ) )
>> - {
>> - result += '/';
>> - }
>> - }
>> -
>> - return result;
>> + return parentUrl;
>> }
>>
>> }
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> For additional commands, e-mail: dev-help@maven.apache.org
>
Thanks,
Jason
----------------------------------------------------------
Jason van Zyl
Founder, Takari and Apache Maven
http://twitter.com/jvanzyl
http://twitter.com/takari_io
---------------------------------------------------------
I never make the mistake of arguing with people for whose opinions I have no respect.
-- Edward Gibbon
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org