Class AbstractLombokAwareRule
- java.lang.Object
-
- net.sourceforge.pmd.properties.AbstractPropertySource
-
- net.sourceforge.pmd.lang.rule.AbstractRule
-
- net.sourceforge.pmd.lang.java.rule.AbstractJavaRule
-
- net.sourceforge.pmd.lang.java.rule.AbstractIgnoredAnnotationRule
-
- net.sourceforge.pmd.lang.java.rule.AbstractLombokAwareRule
-
- All Implemented Interfaces:
JavaParserVisitor
,net.sourceforge.pmd.lang.rule.ImmutableLanguage
,net.sourceforge.pmd.properties.PropertySource
,net.sourceforge.pmd.Rule
- Direct Known Subclasses:
BeanMembersShouldSerializeRule
,ImmutableFieldRule
,SingularFieldRule
,UnusedPrivateFieldRule
,UseUtilityClassRule
public class AbstractLombokAwareRule extends AbstractIgnoredAnnotationRule
Base class for rules, that should ignore classes/fields that are annotated with Lombok annotations.- Author:
- Andreas Dangel
-
-
Constructor Summary
Constructors Constructor Description AbstractLombokAwareRule()
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description protected java.util.Collection<java.lang.String>
defaultSuppressionAnnotations()
protected boolean
hasClassLombokAnnotation()
Returns whether there have been class level Lombok annotations found.protected boolean
hasLombokAnnotation(net.sourceforge.pmd.lang.ast.Node node)
Deprecated.As of release 6.2.0, replaced byhasLombokAnnotation(Annotatable)
Checks whether the given node is annotated with any lombok annotation.protected boolean
hasLombokAnnotation(Annotatable node)
Checks whether the given node is annotated with any lombok annotation.java.lang.Object
visit(ASTClassOrInterfaceDeclaration node, java.lang.Object data)
java.lang.Object
visit(ASTCompilationUnit node, java.lang.Object data)
java.lang.Object
visit(ASTEnumDeclaration node, java.lang.Object data)
java.lang.Object
visit(ASTImportDeclaration node, java.lang.Object data)
-
Methods inherited from class net.sourceforge.pmd.lang.java.rule.AbstractIgnoredAnnotationRule
hasIgnoredAnnotation
-
Methods inherited from class net.sourceforge.pmd.lang.java.rule.AbstractJavaRule
apply, getDeclaringType, importsPackage, isQualifiedName, isSuppressed, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visitAll
-
Methods inherited from class net.sourceforge.pmd.lang.rule.AbstractRule
addExample, addRuleChainVisit, addRuleChainVisit, addViolation, addViolation, addViolation, addViolationWithMessage, addViolationWithMessage, addViolationWithMessage, deepCopy, deepCopyValuesTo, end, equals, getDescription, getExamples, getExternalInfoUrl, getLanguage, getMaximumLanguageVersion, getMessage, getMinimumLanguageVersion, getName, getParserOptions, getPriority, getPropertySourceType, getRuleChainVisits, getRuleClass, getRuleSetName, getSince, hashCode, isDeprecated, isDfa, isMultifile, isRuleChain, isTypeResolution, setDeprecated, setDescription, setDfa, setExternalInfoUrl, setLanguage, setMaximumLanguageVersion, setMessage, setMinimumLanguageVersion, setMultifile, setName, setPriority, setRuleClass, setRuleSetName, setSince, setTypeResolution, setUsesDFA, setUsesMultifile, setUsesTypeResolution, start, usesDFA, usesMultifile, usesRuleChain, usesTypeResolution
-
Methods inherited from class net.sourceforge.pmd.properties.AbstractPropertySource
copyPropertyDescriptors, copyPropertyValues, definePropertyDescriptor, dysfunctionReason, getOverriddenPropertiesByPropertyDescriptor, getOverriddenPropertyDescriptors, getPropertiesByPropertyDescriptor, getProperty, getPropertyDescriptor, getPropertyDescriptors, hasDescriptor, ignoredProperties, isPropertyOverridden, setProperty, setProperty, useDefaultValueFor, usesDefaultValues
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface net.sourceforge.pmd.properties.PropertySource
definePropertyDescriptor, dysfunctionReason, getOverriddenPropertiesByPropertyDescriptor, getOverriddenPropertyDescriptors, getPropertiesByPropertyDescriptor, getProperty, getPropertyDescriptor, getPropertyDescriptors, hasDescriptor, ignoredProperties, isPropertyOverridden, setProperty, setProperty, useDefaultValueFor, usesDefaultValues
-
-
-
-
Method Detail
-
defaultSuppressionAnnotations
protected java.util.Collection<java.lang.String> defaultSuppressionAnnotations()
- Overrides:
defaultSuppressionAnnotations
in classAbstractIgnoredAnnotationRule
-
visit
public java.lang.Object visit(ASTCompilationUnit node, java.lang.Object data)
- Specified by:
visit
in interfaceJavaParserVisitor
- Overrides:
visit
in classAbstractJavaRule
-
visit
public java.lang.Object visit(ASTImportDeclaration node, java.lang.Object data)
- Specified by:
visit
in interfaceJavaParserVisitor
- Overrides:
visit
in classAbstractJavaRule
-
visit
public java.lang.Object visit(ASTClassOrInterfaceDeclaration node, java.lang.Object data)
- Specified by:
visit
in interfaceJavaParserVisitor
- Overrides:
visit
in classAbstractJavaRule
-
visit
public java.lang.Object visit(ASTEnumDeclaration node, java.lang.Object data)
- Specified by:
visit
in interfaceJavaParserVisitor
- Overrides:
visit
in classAbstractJavaRule
-
hasClassLombokAnnotation
protected boolean hasClassLombokAnnotation()
Returns whether there have been class level Lombok annotations found. Note: this can only be queried after the class declaration node has been processed.- Returns:
true
if a lombok annotation at the class level has been found
-
hasLombokAnnotation
@Deprecated protected boolean hasLombokAnnotation(net.sourceforge.pmd.lang.ast.Node node)
Deprecated.As of release 6.2.0, replaced byhasLombokAnnotation(Annotatable)
Checks whether the given node is annotated with any lombok annotation. The node can be any node, e.g. class declaration or field declaration.- Parameters:
node
- the node to check- Returns:
true
if a lombok annotation has been found
-
hasLombokAnnotation
protected boolean hasLombokAnnotation(Annotatable node)
Checks whether the given node is annotated with any lombok annotation. The node should be annotateable.- Parameters:
node
- the Annotatable node to check- Returns:
true
if a lombok annotation has been found
-
-