@Mojo(name="changelog")
public class ChangeLogReport
extends org.apache.maven.reporting.AbstractMavenReport
Modifier and Type | Field and Description |
---|---|
static String |
DEFAULT_ISSUE_ID_REGEX_PATTERN |
protected List<org.apache.maven.model.Developer> |
developers
List of developers to be shown on the report.
|
protected String |
displayChangeSetDetailUrl
A template string that is used to create the changeset URL.
|
protected String |
displayFileDetailUrl
A template string that is used to create the URL to the file details.
|
protected String |
displayFileRevDetailUrl
A template string that is used to create the revision aware URL to
the file details in a similar fashion to the
displayFileDetailUrl . |
protected boolean |
encodeFileUri
Encodes slashes in file uri.
|
protected String |
scmUrl
The URL to view the scm.
|
protected boolean |
skip
Skip the Changelog report generation.
|
Constructor and Description |
---|
ChangeLogReport() |
Modifier and Type | Method and Description |
---|---|
boolean |
canGenerateReport() |
void |
checkResult(org.apache.maven.scm.ScmResult result) |
protected long |
countFilesChanged(Collection<org.apache.maven.scm.ChangeSet> entries)
counts the number of files that were changed in the specified SCM
|
protected void |
doChangeSetTitle(org.apache.maven.scm.command.changelog.ChangeLogSet set,
ResourceBundle bundle,
org.apache.maven.doxia.sink.Sink sink)
Generate the title for the report.
|
protected void |
doGenerateEmptyReport(ResourceBundle bundle,
org.apache.maven.doxia.sink.Sink sink)
generates an empty report in case there are no sources to generate a report with
|
protected void |
doGenerateReport(List<org.apache.maven.scm.command.changelog.ChangeLogSet> changeLogSets,
ResourceBundle bundle,
org.apache.maven.doxia.sink.Sink sink)
method that generates the report for this mojo.
|
protected void |
doSummary(org.apache.maven.scm.command.changelog.ChangeLogSet set,
ResourceBundle bundle,
org.apache.maven.doxia.sink.Sink sink)
Generate the summary section of the report.
|
void |
executeReport(Locale locale) |
protected List<org.apache.maven.scm.command.changelog.ChangeLogSet> |
generateChangeSetsFromSCM()
creates a ChangeLog object and then connects to the SCM to generate the changed sets
|
protected void |
generateLinks(String connection,
String name,
org.apache.maven.doxia.sink.Sink sink)
attaches the http links from the changed files
|
protected void |
generateLinks(String connection,
String name,
String revision,
org.apache.maven.doxia.sink.Sink sink)
attaches the http links from the changed files
|
protected ResourceBundle |
getBundle(Locale locale) |
protected List<org.apache.maven.scm.command.changelog.ChangeLogSet> |
getChangedSets()
populates the changedSets field by either connecting to the SCM or using an existing XML generated in a previous
run of the report
|
protected String |
getConnection()
used to retrieve the SCM connection string
|
String |
getDescription(Locale locale) |
String |
getName(Locale locale) |
protected String |
getOutputDirectory() |
protected String |
getOutputEncoding()
Gets the effective reporting output files encoding.
|
String |
getOutputName() |
protected org.apache.maven.project.MavenProject |
getProject() |
org.apache.maven.scm.repository.ScmRepository |
getScmRepository() |
protected org.apache.maven.doxia.siterenderer.Renderer |
getSiteRenderer() |
protected void |
initReportUrls()
populates the report url used to create links from certain elements of the report
|
protected void |
sinkAuthorDetails(org.apache.maven.doxia.sink.Sink sink,
String author)
If the supplied author is a known developer this method outputs a
link to the team members report, or alternatively, if the supplied
author is unknown, outputs the author's name as plain text.
|
closeReport, execute, generate, generate, generate, getCategoryName, getReportOutputDirectory, getSink, getSinkFactory, isExternalReport, setReportOutputDirectory
public static final String DEFAULT_ISSUE_ID_REGEX_PATTERN
@Parameter(property="project.scm.url") protected String scmUrl
@Parameter(property="changelog.skip", defaultValue="false") protected boolean skip
@Parameter(property="encodeFileUri", defaultValue="false") protected boolean encodeFileUri
@Parameter(property="displayFileDetailUrl", defaultValue="${project.scm.url}") protected String displayFileDetailUrl
%FILE%
- this is the path to a file
Example:
http://checkstyle.cvs.sourceforge.net/checkstyle%FILE%?view=markup
Note: If you don't supply the token in your template, the path of the file will simply be appended to your template URL.
@Parameter(property="displayChangeSetDetailUrl") protected String displayChangeSetDetailUrl
%REV%
- this is the changeset revision
Example:
http://fisheye.sourceforge.net/changelog/a-project/?cs=%REV%
Note: If you don't supply the %REV% token in your template, the revision will simply be appended to your template URL.
@Parameter(property="displayFileRevDetailUrl") protected String displayFileRevDetailUrl
displayFileDetailUrl
.
When a report contains both file and file revision information, as in the
Change Log report, this template string can be used to create a revision
aware URL to the file details.
If not defined this template string defaults to the same value as the
displayFileDetailUrl
and thus revision number aware links will
not be used.
There are two special tokens that you can use in your template:
%FILE%
- this is the path to a file%REV%
- this is the revision of the file
Example:
http://fisheye.sourceforge.net/browse/a-project/%FILE%?r=%REV%
Note: If you don't supply the %FILE% token in your template, the path of the file will simply be appended to your template URL.
@Parameter(property="project.developers") protected List<org.apache.maven.model.Developer> developers
public void executeReport(Locale locale) throws org.apache.maven.reporting.MavenReportException
executeReport
in class org.apache.maven.reporting.AbstractMavenReport
org.apache.maven.reporting.MavenReportException
protected List<org.apache.maven.scm.command.changelog.ChangeLogSet> getChangedSets() throws org.apache.maven.reporting.MavenReportException
org.apache.maven.reporting.MavenReportException
protected List<org.apache.maven.scm.command.changelog.ChangeLogSet> generateChangeSetsFromSCM() throws org.apache.maven.reporting.MavenReportException
org.apache.maven.reporting.MavenReportException
public org.apache.maven.scm.repository.ScmRepository getScmRepository() throws org.apache.maven.scm.ScmException
org.apache.maven.scm.ScmException
public void checkResult(org.apache.maven.scm.ScmResult result) throws org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoExecutionException
protected String getConnection() throws org.apache.maven.reporting.MavenReportException
org.apache.maven.reporting.MavenReportException
- when there is insufficient information to retrieve the SCM connection stringprotected void doGenerateEmptyReport(ResourceBundle bundle, org.apache.maven.doxia.sink.Sink sink)
bundle
- the resource bundle to retrieve report phrases fromsink
- the report formatting toolprotected void doGenerateReport(List<org.apache.maven.scm.command.changelog.ChangeLogSet> changeLogSets, ResourceBundle bundle, org.apache.maven.doxia.sink.Sink sink)
changeLogSets
- changed sets to generate the report frombundle
- the resource bundle to retrieve report phrases fromsink
- the report formatting toolprotected void doChangeSetTitle(org.apache.maven.scm.command.changelog.ChangeLogSet set, ResourceBundle bundle, org.apache.maven.doxia.sink.Sink sink)
set
- change set to generate the report frombundle
- the resource bundle to retrieve report phrases fromsink
- the report formatting toolprotected void doSummary(org.apache.maven.scm.command.changelog.ChangeLogSet set, ResourceBundle bundle, org.apache.maven.doxia.sink.Sink sink)
set
- change set to generate the report frombundle
- the resource bundle to retrieve report phrases fromsink
- the report formatting toolprotected long countFilesChanged(Collection<org.apache.maven.scm.ChangeSet> entries)
entries
- a collection of SCM changesprotected void sinkAuthorDetails(org.apache.maven.doxia.sink.Sink sink, String author)
sink
- Sink to use for outputtingauthor
- The author's name.protected void initReportUrls()
protected void generateLinks(String connection, String name, org.apache.maven.doxia.sink.Sink sink)
connection
- the string used to connect to the SCMname
- filename of the file that was changedsink
- the report formatting toolprotected void generateLinks(String connection, String name, String revision, org.apache.maven.doxia.sink.Sink sink)
connection
- the string used to connect to the SCMname
- filename of the file that was changedrevision
- the revision codesink
- the report formatting toolprotected org.apache.maven.project.MavenProject getProject()
getProject
in class org.apache.maven.reporting.AbstractMavenReport
protected String getOutputDirectory()
getOutputDirectory
in class org.apache.maven.reporting.AbstractMavenReport
protected String getOutputEncoding()
null
.protected org.apache.maven.doxia.siterenderer.Renderer getSiteRenderer()
getSiteRenderer
in class org.apache.maven.reporting.AbstractMavenReport
public String getOutputName()
protected ResourceBundle getBundle(Locale locale)
locale
- public boolean canGenerateReport()
canGenerateReport
in interface org.apache.maven.reporting.MavenReport
canGenerateReport
in class org.apache.maven.reporting.AbstractMavenReport
Copyright © 2002–2015 The Apache Software Foundation. All rights reserved.