@Override public ArrayList<String> getFoundTextFragments(LogData logData) { HashSet<String> result = new HashSet<>(); String message = logData.getMessage(); String messageLc = message.toLowerCase(); int idx = 0; while ((idx = messageLc.indexOf(searchChar, idx)) > -1) { result.add(message.substring(idx, idx + searchChar.length())); idx++; } return new ArrayList<>(result); }
@Override public boolean matches(LogData logData) { return StringUtils.contains(StringUtils.lowerCase(logData.getMessage()), searchChar); }
@Override public boolean toMark(LogData data) { String message = ignoreCase ? data.getMessage().toLowerCase() : data.getMessage(); return include && message.contains(condition) || !include && !message.contains(condition); }