in src/main/java/org/apache/maven/plugins/changes/ReleaseUtils.java [134:177]
public List<Release> mergeReleases( final List<Release> firstReleases, final List<Release> secondReleases )
{
if ( firstReleases == null && secondReleases == null )
{
return Collections.emptyList();
}
if ( firstReleases == null )
{
return secondReleases;
}
if ( secondReleases == null )
{
return firstReleases;
}
List<Release> mergedReleases = new ArrayList<>();
// Loop through the releases from the first issue tracker, merging in
// actions from releases with the same version from the second issue
// tracker
for ( Release firstRelease : firstReleases )
{
Release secondRelease = getRelease( secondReleases, firstRelease.getVersion() );
if ( secondRelease != null )
{
if ( secondRelease.getActions() != null )
{
firstRelease.getActions().addAll( secondRelease.getActions() );
}
}
mergedReleases.add( firstRelease );
}
// Handle releases that are only in the second issue tracker
for ( Release secondRelease : secondReleases )
{
Release mergedRelease = getRelease( mergedReleases, secondRelease.getVersion() );
if ( mergedRelease == null )
{
mergedReleases.add( secondRelease );
}
}
return mergedReleases;
}