diff --git a/src/main/java/io/netty/build/checkstyle/SuppressionFilter.java b/src/main/java/io/netty/build/checkstyle/SuppressionFilter.java index 86db7aa..be8f2e3 100644 --- a/src/main/java/io/netty/build/checkstyle/SuppressionFilter.java +++ b/src/main/java/io/netty/build/checkstyle/SuppressionFilter.java @@ -6,18 +6,32 @@ import com.puppycrawl.tools.checkstyle.api.AuditEvent; import com.puppycrawl.tools.checkstyle.api.AutomaticBean; import com.puppycrawl.tools.checkstyle.api.Filter; import com.puppycrawl.tools.checkstyle.api.FilterSet; +import com.puppycrawl.tools.checkstyle.checks.javadoc.JavadocPackageCheck; public class SuppressionFilter extends AutomaticBean implements Filter { private FilterSet filters = new FilterSet(); private Pattern pattern; + private Pattern examplePattern = Pattern.compile("examples?"); public void setPattern(String pattern) { this.pattern = Pattern.compile(pattern); } + + public void setExamplePattern(String pattern) { + this.examplePattern = Pattern.compile(pattern); + } @Override public boolean accept(AuditEvent evt) { - return !pattern.matcher(evt.getFileName()).find(); + if (pattern.matcher(evt.getFileName()).find()) { + return false; + } + if (examplePattern.matcher(evt.getFileName()).find()) { + if (evt.getSourceName().endsWith(".JavadocPackageCheck")) { + return false; + } + } + return true; } }