/** * Checks whether the suppression matches the given {@link AuditEvent}. * @param event {@link AuditEvent} instance. * @return true if the suppression matches {@link AuditEvent}. */ private boolean isMatch(AuditEvent event) { boolean match = false; if (isInScopeOfSuppression(event)) { final Matcher sourceNameMatcher = eventSourceRegexp.matcher(event.getSourceName()); if (sourceNameMatcher.find()) { match = eventMessageRegexp == null || eventMessageRegexp.matcher(event.getMessage()).find(); } else { match = event.getModuleId() != null && eventSourceRegexp.matcher(event.getModuleId()).find(); } } return match; }
/** * Is matching by file name and Check name. * @param event event * @return true is matching */ private boolean isFileNameAndModuleNotMatching(AuditEvent event) { return event.getFileName() == null || fileRegexp != null && !fileRegexp.matcher(event.getFileName()).find() || event.getLocalizedMessage() == null || moduleId != null && !moduleId.equals(event.getModuleId()) || checkRegexp != null && !checkRegexp.matcher(event.getSourceName()).find(); }
@Override public void addError(AuditEvent event) { final String xpathQuery = XpathFileGeneratorAstFilter.findCorrespondingXpathQuery(event); if (xpathQuery != null) { printXmlHeader(); final File file = new File(event.getFileName()); writer.println("<suppress-xpath"); writer.print(" files=\""); writer.print(file.getName()); writer.println(QUOTE_CHAR); if (event.getModuleId() == null) { final String checkName = PackageObjectFactory.getShortFromFullModuleNames(event.getSourceName()); writer.print(" checks=\""); writer.print(checkName); } else { writer.print(" id=\""); writer.print(event.getModuleId()); } writer.println(QUOTE_CHAR); writer.print(" query=\""); writer.print(xpathQuery); writer.println("\"/>"); } }
if (event.getModuleId() == null) { final String checkShortName = getCheckShortName(event); sb.append(checkShortName); sb.append(event.getModuleId());
/** * Outputs the given event to the writer. * @param event An event to print. */ private void writeFileError(AuditEvent event) { writer.print("<error" + " line=\"" + event.getLine() + "\""); if (event.getColumn() > 0) { writer.print(" column=\"" + event.getColumn() + "\""); } writer.print(" severity=\"" + event.getSeverityLevel().getName() + "\""); writer.print(" message=\"" + encode(event.getMessage()) + "\""); writer.print(" source=\""); if (event.getModuleId() == null) { writer.print(encode(event.getSourceName())); } else { writer.print(encode(event.getModuleId())); } writer.println("\"/>"); }
/** * Checks for a suppression of a check with the given source name and * location in the last file processed. * @param event audit event. * @return whether the check with the given name is suppressed at the given * source location */ public static boolean isSuppressed(AuditEvent event) { final List<Entry> entries = ENTRIES.get(); final String sourceName = event.getSourceName(); final String checkAlias = getAlias(sourceName); final int line = event.getLine(); final int column = event.getColumn(); boolean suppressed = false; for (Entry entry : entries) { final boolean afterStart = isSuppressedAfterEventStart(line, column, entry); final boolean beforeEnd = isSuppressedBeforeEventEnd(line, column, entry); final boolean nameMatches = ALL_WARNING_MATCHING_ID.equals(entry.getCheckName()) || entry.getCheckName().equalsIgnoreCase(checkAlias); final boolean idMatches = event.getModuleId() != null && event.getModuleId().equals(entry.getCheckName()); if (afterStart && beforeEnd && (nameMatches || idMatches)) { suppressed = true; break; } } return suppressed; }
@VisibleForTesting static String getRuleKey(AuditEvent event) { String key = null; try { key = event.getModuleId(); } catch (Exception e) { // checkstyle throws a NullPointerException if the message is not set } if (StringUtils.isBlank(key)) { try { key = event.getSourceName(); } catch (Exception e) { // checkstyle can throw a NullPointerException if the message is not set } } return key; }
@VisibleForTesting static String getRuleKey(AuditEvent event) { String key = null; try { key = event.getModuleId(); } catch (Exception e) { // checkstyle throws a NullPointerException if the message is not set } if (StringUtils.isBlank(key)) { try { key = event.getSourceName(); } catch (Exception e) { // checkstyle can throw a NullPointerException if the message is not set } } return key; }
@VisibleForTesting static String getRuleKey(AuditEvent event) { String key = null; try { key = event.getModuleId(); } catch (Exception ex) { LOG.warn("AuditEvent is created incorrectly. Exception happen during getModuleId()", ex); } if (StringUtils.isBlank(key)) { try { key = event.getSourceName(); } catch (Exception ex) { LOG.warn("AuditEvent is created incorrectly." + "Exception happen during getSourceName()", ex); } } return key; }
/** * Checks whether the suppression matches the given {@link AuditEvent}. * @param event {@link AuditEvent} instance. * @return true if the suppression matches {@link AuditEvent}. */ private boolean isMatch(AuditEvent event) { boolean match = false; if (isInScopeOfSuppression(event)) { final Matcher sourceNameMatcher = eventSourceRegexp.matcher(event.getSourceName()); if (sourceNameMatcher.find()) { match = eventMessageRegexp == null || eventMessageRegexp.matcher(event.getMessage()).find(); } else { match = event.getModuleId() != null && eventSourceRegexp.matcher(event.getModuleId()).find(); } } return match; }
/** * Is matching by file name and Check name. * @param event event * @return true is matching */ private boolean isFileNameAndModuleNotMatching(AuditEvent event) { return event.getFileName() == null || fileRegexp != null && !fileRegexp.matcher(event.getFileName()).find() || event.getLocalizedMessage() == null || moduleId != null && !moduleId.equals(event.getModuleId()) || checkRegexp != null && !checkRegexp.matcher(event.getSourceName()).find(); }
@Override public void addError(AuditEvent event) { final String xpathQuery = XpathFileGeneratorAstFilter.findCorrespondingXpathQuery(event); if (xpathQuery != null) { printXmlHeader(); final File file = new File(event.getFileName()); writer.println("<suppress-xpath"); writer.print(" files=\""); writer.print(file.getName()); writer.println(QUOTE_CHAR); if (event.getModuleId() == null) { final String checkName = PackageObjectFactory.getShortFromFullModuleNames(event.getSourceName()); writer.print(" checks=\""); writer.print(checkName); } else { writer.print(" id=\""); writer.print(event.getModuleId()); } writer.println(QUOTE_CHAR); writer.print(" query=\""); writer.print(xpathQuery); writer.println("\"/>"); } }
if (event.getModuleId() == null) { final String checkShortName = getCheckShortName(event); sb.append(checkShortName); sb.append(event.getModuleId());
/** * Outputs the given event to the writer. * @param event An event to print. */ private void writeFileError(AuditEvent event) { writer.print("<error" + " line=\"" + event.getLine() + "\""); if (event.getColumn() > 0) { writer.print(" column=\"" + event.getColumn() + "\""); } writer.print(" severity=\"" + event.getSeverityLevel().getName() + "\""); writer.print(" message=\"" + encode(event.getMessage()) + "\""); writer.print(" source=\""); if (event.getModuleId() == null) { writer.print(encode(event.getSourceName())); } else { writer.print(encode(event.getModuleId())); } writer.println("\"/>"); }
/** * Checks for a suppression of a check with the given source name and * location in the last file processed. * @param event audit event. * @return whether the check with the given name is suppressed at the given * source location */ public static boolean isSuppressed(AuditEvent event) { final List<Entry> entries = ENTRIES.get(); final String sourceName = event.getSourceName(); final String checkAlias = getAlias(sourceName); final int line = event.getLine(); final int column = event.getColumn(); boolean suppressed = false; for (Entry entry : entries) { final boolean afterStart = isSuppressedAfterEventStart(line, column, entry); final boolean beforeEnd = isSuppressedBeforeEventEnd(line, column, entry); final boolean nameMatches = ALL_WARNING_MATCHING_ID.equals(entry.getCheckName()) || entry.getCheckName().equalsIgnoreCase(checkAlias); final boolean idMatches = event.getModuleId() != null && event.getModuleId().equals(entry.getCheckName()); if (afterStart && beforeEnd && (nameMatches || idMatches)) { suppressed = true; break; } } return suppressed; }