Class XpathFilterElement
- java.lang.Object
-
- com.puppycrawl.tools.checkstyle.filters.XpathFilterElement
-
- All Implemented Interfaces:
TreeWalkerFilter
public class XpathFilterElement extends java.lang.Object implements TreeWalkerFilter
This filter element is immutable and processesTreeWalkerAuditEventobjects based on the criteria of file, check, module id, xpathQuery.
-
-
Field Summary
Fields Modifier and Type Field Description private java.lang.StringcheckPatternThe pattern for check class names.private java.util.regex.PatterncheckRegexpThe regexp to match check names against.private java.lang.StringfilePatternThe pattern for file names.private java.util.regex.PatternfileRegexpThe regexp to match file names against.private java.lang.StringmessagePatternThe pattern for message names.private java.util.regex.PatternmessageRegexpThe regexp to match message names against.private java.lang.StringmoduleIdModule id filter.private net.sf.saxon.sxpath.XPathExpressionxpathExpressionXpath expression.private java.lang.StringxpathQueryXpath query.
-
Constructor Summary
Constructors Constructor Description XpathFilterElement(java.lang.String files, java.lang.String checks, java.lang.String message, java.lang.String moduleId, java.lang.String query)Creates aXpathElementinstance.XpathFilterElement(java.util.regex.Pattern files, java.util.regex.Pattern checks, java.util.regex.Pattern message, java.lang.String moduleId, java.lang.String query)Creates aXpathElementinstance.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanaccept(TreeWalkerAuditEvent event)Determines whether or not a filteredTreeWalkerAuditEventis accepted.booleanequals(java.lang.Object other)private java.util.List<net.sf.saxon.om.Item>getItems(TreeWalkerAuditEvent event)Returns list of nodes matching xpath expression given event.inthashCode()private booleanisFileNameAndModuleAndModuleNameMatching(TreeWalkerAuditEvent event)Is matching by file name, module id and Check name.private booleanisMessageNameMatching(TreeWalkerAuditEvent event)Is matching by message.private booleanisXpathQueryMatching(TreeWalkerAuditEvent event)Is matching by xpath query.
-
-
-
Field Detail
-
fileRegexp
private final java.util.regex.Pattern fileRegexp
The regexp to match file names against.
-
filePattern
private final java.lang.String filePattern
The pattern for file names.
-
checkRegexp
private final java.util.regex.Pattern checkRegexp
The regexp to match check names against.
-
checkPattern
private final java.lang.String checkPattern
The pattern for check class names.
-
messageRegexp
private final java.util.regex.Pattern messageRegexp
The regexp to match message names against.
-
messagePattern
private final java.lang.String messagePattern
The pattern for message names.
-
moduleId
private final java.lang.String moduleId
Module id filter.
-
xpathExpression
private final net.sf.saxon.sxpath.XPathExpression xpathExpression
Xpath expression.
-
xpathQuery
private final java.lang.String xpathQuery
Xpath query.
-
-
Constructor Detail
-
XpathFilterElement
public XpathFilterElement(java.lang.String files, java.lang.String checks, java.lang.String message, java.lang.String moduleId, java.lang.String query)
Creates aXpathElementinstance.- Parameters:
files- regular expression for names of filtered fileschecks- regular expression for filtered check classesmessage- regular expression for messages.moduleId- the module idquery- the xpath query- Throws:
java.lang.IllegalArgumentException- if the xpath query is not expected.
-
XpathFilterElement
public XpathFilterElement(java.util.regex.Pattern files, java.util.regex.Pattern checks, java.util.regex.Pattern message, java.lang.String moduleId, java.lang.String query)
Creates aXpathElementinstance.- Parameters:
files- regular expression for names of filtered fileschecks- regular expression for filtered check classesmessage- regular expression for messages.moduleId- the module idquery- the xpath query- Throws:
java.lang.IllegalArgumentException- if the xpath query is not correct.
-
-
Method Detail
-
accept
public boolean accept(TreeWalkerAuditEvent event)
Description copied from interface:TreeWalkerFilterDetermines whether or not a filteredTreeWalkerAuditEventis accepted.- Specified by:
acceptin interfaceTreeWalkerFilter- Parameters:
event- the TreeWalkerAuditEvent to filter.- Returns:
- true if the event is accepted.
-
isFileNameAndModuleAndModuleNameMatching
private boolean isFileNameAndModuleAndModuleNameMatching(TreeWalkerAuditEvent event)
Is matching by file name, module id and Check name.- Parameters:
event- event- Returns:
- true if it is matching
-
isMessageNameMatching
private boolean isMessageNameMatching(TreeWalkerAuditEvent event)
Is matching by message.- Parameters:
event- event- Returns:
- true if it is matching or not set.
-
isXpathQueryMatching
private boolean isXpathQueryMatching(TreeWalkerAuditEvent event)
Is matching by xpath query.- Parameters:
event- event- Returns:
- true if it is matching or not set.
-
getItems
private java.util.List<net.sf.saxon.om.Item> getItems(TreeWalkerAuditEvent event)
Returns list of nodes matching xpath expression given event.- Parameters:
event-TreeWalkerAuditEventobject- Returns:
- list of nodes matching xpath expression given event
- Throws:
java.lang.IllegalStateException- if the xpath query could not be evaluated.
-
hashCode
public int hashCode()
- Overrides:
hashCodein classjava.lang.Object
-
equals
public boolean equals(java.lang.Object other)
- Overrides:
equalsin classjava.lang.Object
-
-