diff --git a/src/main/java/ru/serega6531/packmate/service/PatternService.java b/src/main/java/ru/serega6531/packmate/service/PatternService.java index 6063521..cbbaa7b 100644 --- a/src/main/java/ru/serega6531/packmate/service/PatternService.java +++ b/src/main/java/ru/serega6531/packmate/service/PatternService.java @@ -44,6 +44,7 @@ public class PatternService { public Set findMatches(byte[] bytes, boolean incoming) { final List list = patterns.values().stream() + .filter(Pattern::isEnabled) .filter(p -> p.getDirectionType() == (incoming ? PatternDirectionType.INPUT : PatternDirectionType.OUTPUT) || p.getDirectionType() == PatternDirectionType.BOTH) .collect(Collectors.toList()); @@ -54,7 +55,8 @@ public class PatternService { final Pattern pattern = find(id); if (pattern != null) { pattern.setEnabled(enabled); - repository.save(pattern); + final Pattern saved = repository.save(pattern); + patterns.put(id, saved); if (enabled) { log.info("Включен паттерн {} со значением {}", pattern.getName(), pattern.getValue());