diff --git a/src/org/redkale/boot/ClassFilter.java b/src/org/redkale/boot/ClassFilter.java index a177bbe73..8a04f51db 100644 --- a/src/org/redkale/boot/ClassFilter.java +++ b/src/org/redkale/boot/ClassFilter.java @@ -99,7 +99,11 @@ public final class ClassFilter { * @return Set<FilterEntry<T>> */ public final Set> getFilterEntrys() { - return entrys; + HashSet> set = new HashSet<>(); + set.addAll(entrys); + if (ors != null) ors.forEach(f -> set.addAll(f.getFilterEntrys())); + if (ands != null) ands.forEach(f -> set.addAll(f.getFilterEntrys())); + return set; } /** @@ -108,7 +112,11 @@ public final class ClassFilter { * @return Set<FilterEntry<T>> */ public final Set> getFilterExpectEntrys() { - return expectEntrys; + HashSet> set = new HashSet<>(); + set.addAll(entrys); + if (ors != null) ors.forEach(f -> set.addAll(f.getFilterExpectEntrys())); + if (ands != null) ands.forEach(f -> set.addAll(f.getFilterExpectEntrys())); + return set; } /** @@ -118,8 +126,8 @@ public final class ClassFilter { */ public final Set> getAllFilterEntrys() { HashSet> rs = new HashSet<>(); - rs.addAll(entrys); - rs.addAll(expectEntrys); + rs.addAll(getFilterEntrys()); + rs.addAll(getFilterExpectEntrys()); return rs; }