public void executeReport()

in src/main/java/org/apache/maven/plugins/changes/ChangesReport.java [195:251]


    public void executeReport(Locale locale) throws MavenReportException {
        Date now = new Date();
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat(publishDateFormat, new Locale(publishDateLocale));
        Properties additionalProperties = new Properties();
        additionalProperties.put("publishDate", simpleDateFormat.format(now));

        ChangesXML changesXml = getChangesFromFile(xmlPath, project, additionalProperties);
        if (changesXml == null) {
            return;
        }

        if (aggregated) {
            final String basePath = project.getBasedir().getAbsolutePath();
            final String absolutePath = xmlPath.getAbsolutePath();
            if (!absolutePath.startsWith(basePath)) {
                getLog().warn("xmlPath should be within the project dir for aggregated changes report.");
                return;
            }
            final String relativePath = absolutePath.substring(basePath.length());

            List<Release> releaseList = changesXml.getReleaseList();
            for (MavenProject childProject : project.getCollectedProjects()) {
                final File changesFile = new File(childProject.getBasedir(), relativePath);
                final ChangesXML childXml = getChangesFromFile(changesFile, childProject, additionalProperties);
                if (childXml != null) {
                    releaseList =
                            ReleaseUtils.mergeReleases(releaseList, childProject.getName(), childXml.getReleaseList());
                }
            }
            changesXml.setReleaseList(releaseList);
        }

        ChangesReportRenderer report = new ChangesReportRenderer(getSink(), getBundle(locale), changesXml);

        report.setIssueLinksPerSystem(prepareIssueLinksPerSystem());
        report.setSystem(system);
        report.setTeam(team);
        report.setUrl(url);
        report.setAddActionDate(addActionDate);

        if (url == null || url.isEmpty()) {
            getLog().warn("No issue management URL defined in POM. Links to your issues will not work correctly.");
        }

        boolean feedGenerated = false;

        if (feedType != null && !feedType.isEmpty()) {
            feedGenerated = generateFeed(changesXml, locale);
        }

        report.setLinkToFeed(feedGenerated);

        report.render();

        // Copy the images
        copyStaticResources();
    }