OpenDJ Copyright Check Maven Plugin
Checks ForgeRock source file copyrights.
org.forgerock.opendj
opendj-copyright-maven-plugin
3.0.0-SNAPSHOT
opendj-copyright
false
true
update-copyright
This goals can be used to automatically updates copyrights of modified files.
<p>
Copyright sections must respect the following format:
<pre>
(.)* //This line references 0..N lines.
[COMMMENT_CHAR][lineBeforeCopyrightRegExp]
[COMMMENT_CHAR]* //This line references 0..N commented empty lines.
([COMMMENT_CHAR][oldCopyrightToken])*
([COMMMENT_CHAR] [YEAR] [copyrightEndToken])?
</pre>
<p>
Formatter details:
<ul>
<li>COMMENT_CHAR: Auto-detected by plugin.
Comment character used in comment blocks ('*' for Java, '!' for xml...)</li>
<li>lineBeforeCopyrightRegExp: Parameter regExp case insensitive
Used by the plugin to start it's inspection for the copyright line.
Next non blank commented lines after this lines must be
old copyright owner lines or/and old ForgeRock copyright lines.</li>
<li>oldCopyrightToken: Detected by plugin ('copyright' keyword case insensitive)
If one line contains this token, the plugin will use
the newPortionsCopyrightLabel instead of the newCopyrightLabel
if there is no ForgeRock copyrighted line.</li>
<li>forgerockCopyrightRegExp: Parameter regExp case insensitive
The regular expression which identifies a copyrighted line as a ForgeRock one.</li>
<li>YEAR: Computed by plugin
Current year if there is no existing copyright line.
If the copyright section already exists, the year will be updated as follow:
<ul>
<li>OLD_YEAR => OLD_YEAR-CURRENT_YEAR</li>
<li>VERY_OLD_YEAR-OLD_YEAR => VERY_OLD_YEAR-CURRENT_YEAR</li>
</ul></li>
</ul>
</p>
<p>
If no ForgeRock copyrighted line is detected, the plugin will add according to the following format
<ul>
<li> If there is one or more old copyright lines:
<pre>
[COMMMENT_CHAR][lineBeforeCopyrightRegExp]
[COMMMENT_CHAR]* //This line references 0..N commented empty lines.
([COMMMENT_CHAR][oldCopyrightToken])*
[indent][newPortionsCopyrightLabel] [YEAR] [forgerockCopyrightLabel]
</pre></li><br>
<li> If there is no old copyright lines:
<pre>
[COMMMENT_CHAR][lineBeforeCopyrightRegExp]
[COMMMENT_CHAR]*{nbLinesToSkip} //This line nbLinesToSkip commented empty lines.
[indent][newCopyrightLabel] [YEAR] [forgerockCopyrightLabel]
</pre></li>
</ul>
false
true
false
false
false
true
validate
org.forgerock.maven.UpdateCopyrightMojo
java
per-lookup
once-per-session
false
copyrightOwnerToken
java.lang.String
true
true
Copyright owner.
This string token must be present on the same line with 'copyright' keyword and the current year.
dryRun
boolean
true
true
A dry run will not change source code. It creates new files with '.tmp' extension.
forgeRockCopyrightLabel
java.lang.String
true
true
ForgeRock copyright label to print if a new (portions) copyright line is needed.
forgerockCopyrightRegExp
java.lang.String
true
true
The regular expression which identifies a copyrighted line.
lineBeforeCopyrightRegExp
java.lang.String
true
true
The last non empty commented line before the copyright section.
nbLinesToSkip
java.lang.Integer
true
true
Number of lines to add after the line which contains the lineBeforeCopyrightToken.
Used only if a new copyright line is needed.
newCopyrightLabel
java.lang.String
true
true
Line to add if there is no existing copyright.
newPortionsCopyrightLabel
java.lang.String
true
true
Portions copyright start line token.
numberSpaceIdentation
java.lang.Integer
true
true
Number of spaces to add after the comment line token before adding new
copyright section. Used only if a new copyright or portion copyright is
needed.
project
org.apache.maven.project.MavenProject
true
false
The Maven Project.
scmRepositoryUrl
java.lang.String
true
true
scmWorkspaceRoot
java.lang.String
true
true
The path to the root of the Subversion workspace to check.
${project}
check-copyright
This be used to check that if a modified file contains a line that appears to
be a comment and includes the word "copyright", then it should contain the
current year.
false
true
false
false
false
true
validate
org.forgerock.maven.CheckCopyrightMojo
java
per-lookup
once-per-session
false
checkDisabled
boolean
true
true
copyrightOwnerToken
java.lang.String
true
true
Copyright owner.
This string token must be present on the same line with 'copyright' keyword and the current year.
ignoreCopyrightErrors
boolean
true
true
The property that may be used to prevent copyright date problems from
failing the build.
project
org.apache.maven.project.MavenProject
true
false
The Maven Project.
scmRepositoryUrl
java.lang.String
true
true
scmWorkspaceRoot
java.lang.String
true
true
The path to the root of the Subversion workspace to check.
${skipCopyrightCheck}
${ignoreCopyrightErrors}
${project}
org.codehaus.plexus
plexus-utils
jar
3.0.17
org.twdata.maven
mojo-executor
jar
2.2.0
org.forgerock.commons
forgerock-util
jar
2.0.0-20150825.212318-40
org.slf4j
slf4j-api
jar
1.7.5
org.apache.maven.scm
maven-scm-api
jar
1.9.2
org.apache.maven.scm
maven-scm-provider-svn-commons
jar
1.9.2
org.apache.maven.scm
maven-scm-provider-svnexe
jar
1.9.2
commons-lang
commons-lang
jar
2.6
org.apache.maven.scm
maven-scm-provider-gitexe
jar
1.9.2
commons-io
commons-io
jar
2.2
org.apache.maven.scm
maven-scm-provider-git-commons
jar
1.9.2