public List mergeReleases()

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;
    }