Package org.apache.maven.plugins.pmd
Class CpdViolationCheckMojo
- java.lang.Object
-
- org.apache.maven.plugin.AbstractMojo
-
- org.apache.maven.plugins.pmd.AbstractPmdViolationCheckMojo<Duplication>
-
- org.apache.maven.plugins.pmd.CpdViolationCheckMojo
-
- All Implemented Interfaces:
ContextEnabled
,Mojo
@Mojo(name="cpd-check", defaultPhase=VERIFY, threadSafe=true) @Execute(goal="cpd") public class CpdViolationCheckMojo extends AbstractPmdViolationCheckMojo<Duplication>
Fail the build if there were any CPD violations in the source code.- Since:
- 2.0
- Version:
- $Id$
-
-
Field Summary
Fields Modifier and Type Field Description protected boolean
failOnViolation
Whether to fail the build if the validation check fails.-
Fields inherited from class org.apache.maven.plugins.pmd.AbstractPmdViolationCheckMojo
aggregate, project
-
-
Constructor Summary
Constructors Constructor Description CpdViolationCheckMojo()
Default constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
execute()
protected java.util.List<Duplication>
getErrorDetails(java.io.File cpdFile)
Gets the attributes and text for the violation tag and puts them in a HashMapprotected int
getPriority(Duplication errorDetail)
boolean
isFailOnViolation()
protected ViolationDetails<Duplication>
newViolationDetailsInstance()
protected void
printError(Duplication item, java.lang.String severity)
Formats the failure details and prints them as an INFO message-
Methods inherited from class org.apache.maven.plugins.pmd.AbstractPmdViolationCheckMojo
executeCheck, getMaxAllowedViolations, printErrors
-
Methods inherited from class org.apache.maven.plugin.AbstractMojo
getLog, getPluginContext, setLog, setPluginContext
-
-
-
-
Field Detail
-
failOnViolation
@Parameter(property="cpd.failOnViolation", defaultValue="true", required=true) protected boolean failOnViolation
Whether to fail the build if the validation check fails.- Since:
- 3.0
-
-
Constructor Detail
-
CpdViolationCheckMojo
public CpdViolationCheckMojo()
Default constructor. Initializes with the correctExcludeDuplicationsFromFile
.
-
-
Method Detail
-
execute
public void execute() throws MojoExecutionException, MojoFailureException
-
printError
protected void printError(Duplication item, java.lang.String severity)
Formats the failure details and prints them as an INFO message- Specified by:
printError
in classAbstractPmdViolationCheckMojo<Duplication>
- Parameters:
item
- either aViolation
from PMD or aDuplication
from CPDseverity
- the found issue is prefixed with the given severity, usually "Warning" or "Failure".
-
getErrorDetails
protected java.util.List<Duplication> getErrorDetails(java.io.File cpdFile) throws XmlPullParserException, java.io.IOException
Gets the attributes and text for the violation tag and puts them in a HashMap- Specified by:
getErrorDetails
in classAbstractPmdViolationCheckMojo<Duplication>
- Parameters:
cpdFile
- the xml output from PMD or CPD- Returns:
- all PMD
Violation
s or CPDDuplication
s. - Throws:
XmlPullParserException
- if the analysis file contains invalid XMLjava.io.IOException
- if the analysis file could be read
-
getPriority
protected int getPriority(Duplication errorDetail)
- Specified by:
getPriority
in classAbstractPmdViolationCheckMojo<Duplication>
-
newViolationDetailsInstance
protected ViolationDetails<Duplication> newViolationDetailsInstance()
- Specified by:
newViolationDetailsInstance
in classAbstractPmdViolationCheckMojo<Duplication>
-
isFailOnViolation
public boolean isFailOnViolation()
- Overrides:
isFailOnViolation
in classAbstractPmdViolationCheckMojo<Duplication>
-
-