maven-plugin-report-plugin/src/it/plugin-report-annotations/src/main/java/org/DummyReport.java [83:200]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    private boolean skipReport;

    /**
     * {@inheritDoc}
     */
    protected Renderer getSiteRenderer() {
        return siteRenderer;
    }

    /**
     * {@inheritDoc}
     */
    protected String getOutputDirectory() {
        return outputDirectory.getPath();
    }

    /**
     * {@inheritDoc}
     */
    protected MavenProject getProject() {
        return project;
    }

    /**
     * {@inheritDoc}
     */
    public boolean canGenerateReport() {
        return true;
    }

    /**
     * {@inheritDoc}
     */
    protected void executeReport(Locale locale) throws MavenReportException {
        if (!canGenerateReport()) {
            return;
        }
        if (skip || skipReport) {
            getLog().info("Maven Plugin Plugin Report generation skipped.");
            return;
        }

        // Generate the plugin's documentation
        generatePluginDocumentation(locale);
    }

    /**
     * {@inheritDoc}
     */
    public String getDescription(Locale locale) {
        return getBundle(locale).getString("report.plugin.description");
    }

    /**
     * {@inheritDoc}
     */
    public String getName(Locale locale) {
        return getBundle(locale).getString("report.plugin.name");
    }

    /**
     * {@inheritDoc}
     */
    public String getOutputName() {
        return "plugin-info";
    }

    /**
     * @param pluginDescriptor not null
     * @param locale           not null
     * @throws MavenReportException if any
     */
    private void generatePluginDocumentation(Locale locale) throws MavenReportException {
        File outputDir = new File(getOutputDirectory());
        outputDir.mkdirs();
        PluginOverviewRenderer r = new PluginOverviewRenderer(getSink(), locale);
        r.render();
    }

    /**
     * @param locale not null
     * @return the bundle for this report
     */
    protected static ResourceBundle getBundle(Locale locale) {
        return ResourceBundle.getBundle("plugin-report", locale, DummyReport.class.getClassLoader());
    }

    /**
     * Generates an overview page with the list of goals
     * and a link to the goal's page.
     */
    static class PluginOverviewRenderer extends AbstractMavenReportRenderer {
        private final Locale locale;

        /**
         * @param sink    not null
         * @param locale  not null
         */
        PluginOverviewRenderer(Sink sink, Locale locale) {
            super(sink);

            this.locale = locale;
        }

        /**
         * {@inheritDoc}
         */
        public String getTitle() {
            return getBundle(locale).getString("report.plugin.title");
        }

        /**
         * {@inheritDoc}
         */
        protected void renderBody() {
            startSection(getTitle());
            paragraph("This is a report.");
            endSection();
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



maven-plugin-report-plugin/src/it/plugin-report/src/main/java/org/DummyReport.java [85:182]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    private boolean skipReport;

    /** {@inheritDoc} */
    protected Renderer getSiteRenderer() {
        return siteRenderer;
    }

    /** {@inheritDoc} */
    protected String getOutputDirectory() {
        return outputDirectory.getPath();
    }

    /** {@inheritDoc} */
    protected MavenProject getProject() {
        return project;
    }

    /** {@inheritDoc} */
    public boolean canGenerateReport() {
        return true;
    }

    /** {@inheritDoc} */
    protected void executeReport(Locale locale) throws MavenReportException {
        if (!canGenerateReport()) {
            return;
        }
        if (skip || skipReport) {
            getLog().info("Maven Plugin Plugin Report generation skipped.");
            return;
        }

        // Generate the plugin's documentation
        generatePluginDocumentation(locale);
    }

    /** {@inheritDoc} */
    public String getDescription(Locale locale) {
        return getBundle(locale).getString("report.plugin.description");
    }

    /** {@inheritDoc} */
    public String getName(Locale locale) {
        return getBundle(locale).getString("report.plugin.name");
    }

    /** {@inheritDoc} */
    public String getOutputName() {
        return "plugin-info";
    }

    /**
     * @param pluginDescriptor not null
     * @param locale not null
     * @throws MavenReportException if any
     */
    private void generatePluginDocumentation(Locale locale) throws MavenReportException {
        File outputDir = new File(getOutputDirectory());
        outputDir.mkdirs();
        PluginOverviewRenderer r = new PluginOverviewRenderer(getSink(), locale);
        r.render();
    }

    /**
     * @param locale not null
     * @return the bundle for this report
     */
    protected static ResourceBundle getBundle(Locale locale) {
        return ResourceBundle.getBundle("plugin-report", locale, DummyReport.class.getClassLoader());
    }

    /**
     * Generates an overview page with the list of goals
     * and a link to the goal's page.
     */
    static class PluginOverviewRenderer extends AbstractMavenReportRenderer {
        private final Locale locale;

        /**
         * @param sink not null
         * @param locale not null
         */
        PluginOverviewRenderer(Sink sink, Locale locale) {
            super(sink);

            this.locale = locale;
        }

        /** {@inheritDoc} */
        public String getTitle() {
            return getBundle(locale).getString("report.plugin.title");
        }

        /** {@inheritDoc} */
        protected void renderBody() {
            startSection(getTitle());
            paragraph("This is a report.");
            endSection();
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



