diff --git a/core/src/main/java/org/apache/brooklyn/util/core/osgi/Osgis.java b/core/src/main/java/org/apache/brooklyn/util/core/osgi/Osgis.java index c2598ad484..75c33df773 100644 --- a/core/src/main/java/org/apache/brooklyn/util/core/osgi/Osgis.java +++ b/core/src/main/java/org/apache/brooklyn/util/core/osgi/Osgis.java @@ -184,9 +184,7 @@ public List findAll() { for (Bundle b: framework.getBundleContext().getBundles()) { if (symbolicName!=null && !symbolicName.equals(b.getSymbolicName())) continue; if (version!=null && !Version.parseVersion(version).equals(b.getVersion())) continue; - for (Predicate predicate: predicates) { - if (!predicate.apply(b)) continue; - } + if (!Predicates.and(predicates).apply(b)) continue; // check url last, because if it isn't mandatory we should only clear if we find a url // for which the other items also match