@Override public boolean accept(TreeWalkerAuditEvent treeWalkerAuditEvent) { boolean result = true; for (TreeWalkerFilter filter : filters) { if (!filter.accept(treeWalkerAuditEvent)) { result = false; break; } } return result; }
/** * Returns filtered set of {@link LocalizedMessage}. * @param fileName path to the file * @param fileContents the contents of the file * @param rootAST root AST element {@link DetailAST} of the file * @return filtered set of messages */ private SortedSet<LocalizedMessage> getFilteredMessages( String fileName, FileContents fileContents, DetailAST rootAST) { final SortedSet<LocalizedMessage> result = new TreeSet<>(messages); for (LocalizedMessage element : messages) { final TreeWalkerAuditEvent event = new TreeWalkerAuditEvent(fileContents, fileName, element, rootAST); for (TreeWalkerFilter filter : filters) { if (!filter.accept(event)) { result.remove(element); break; } } } return result; }
/** * Checks if stateful field is cleared during {@link AutomaticBean}'s finishLocalSetup. * * @param filter filter object which field is to be verified * @param event event to pass into filter methods * @param fieldName name of the field to be checked * @param isClear function for checking field state * @return {@code true} if state of the field is cleared * @throws Exception if there was an error. */ public static boolean isStatefulFieldClearedDuringLocalSetup( TreeWalkerFilter filter, TreeWalkerAuditEvent event, String fieldName, Predicate<Object> isClear) throws Exception { filter.accept(event); getClassDeclaredMethod(filter.getClass(), "finishLocalSetup").invoke(filter); final Field resultField = getClassDeclaredField(filter.getClass(), fieldName); return isClear.test(resultField.get(filter)); }
@Override public boolean accept(TreeWalkerAuditEvent treeWalkerAuditEvent) { boolean result = true; for (TreeWalkerFilter filter : filters) { if (!filter.accept(treeWalkerAuditEvent)) { result = false; break; } } return result; }
/** * Returns filtered set of {@link LocalizedMessage}. * @param fileName path to the file * @param fileContents the contents of the file * @param rootAST root AST element {@link DetailAST} of the file * @return filtered set of messages */ private SortedSet<LocalizedMessage> getFilteredMessages( String fileName, FileContents fileContents, DetailAST rootAST) { final SortedSet<LocalizedMessage> result = new TreeSet<>(messages); for (LocalizedMessage element : messages) { final TreeWalkerAuditEvent event = new TreeWalkerAuditEvent(fileContents, fileName, element, rootAST); for (TreeWalkerFilter filter : filters) { if (!filter.accept(event)) { result.remove(element); break; } } } return result; }