You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by be...@apache.org on 2011/08/19 15:17:41 UTC

svn commit: r1159625 - /maven/maven-3/trunk/maven-model-builder/src/main/java/org/apache/maven/model/merge/MavenModelMerger.java

Author: bentmann
Date: Fri Aug 19 13:17:41 2011
New Revision: 1159625

URL: http://svn.apache.org/viewvc?rev=1159625&view=rev
Log:
[MNG-5155] 'inherited' flag of report sets ignored

Modified:
    maven/maven-3/trunk/maven-model-builder/src/main/java/org/apache/maven/model/merge/MavenModelMerger.java

Modified: maven/maven-3/trunk/maven-model-builder/src/main/java/org/apache/maven/model/merge/MavenModelMerger.java
URL: http://svn.apache.org/viewvc/maven/maven-3/trunk/maven-model-builder/src/main/java/org/apache/maven/model/merge/MavenModelMerger.java?rev=1159625&r1=1159624&r2=1159625&view=diff
==============================================================================
--- maven/maven-3/trunk/maven-model-builder/src/main/java/org/apache/maven/model/merge/MavenModelMerger.java (original)
+++ maven/maven-3/trunk/maven-model-builder/src/main/java/org/apache/maven/model/merge/MavenModelMerger.java Fri Aug 19 13:17:41 2011
@@ -551,6 +551,40 @@ public class MavenModelMerger
     }
 
     @Override
+    protected void mergeReportPlugin_ReportSets( ReportPlugin target, ReportPlugin source, boolean sourceDominant,
+                                                 Map<Object, Object> context )
+    {
+        List<ReportSet> src = source.getReportSets();
+        if ( !src.isEmpty() )
+        {
+            List<ReportSet> tgt = target.getReportSets();
+            Map<Object, ReportSet> merged = new LinkedHashMap<Object, ReportSet>( ( src.size() + tgt.size() ) * 2 );
+
+            for ( ReportSet element : src )
+            {
+                if ( sourceDominant || ( element.getInherited() != null ? element.isInherited() : source.isInherited() ) )
+                {
+                    Object key = getReportSetKey( element );
+                    merged.put( key, element );
+                }
+            }
+
+            for ( ReportSet element : tgt )
+            {
+                Object key = getReportSetKey( element );
+                ReportSet existing = merged.get( key );
+                if ( existing != null )
+                {
+                    mergeReportSet( element, existing, sourceDominant, context );
+                }
+                merged.put( key, element );
+            }
+
+            target.setReportSets( new ArrayList<ReportSet>( merged.values() ) );
+        }
+    }
+
+    @Override
     protected Object getDependencyKey( Dependency dependency )
     {
         return dependency.getManagementKey();