in component-dsl/src/main/java/org/apache/aries/component/dsl/internal/AllOSGi.java [32:52]
public AllOSGi(OSGi<T>... programs) {
super((executionContext, op) -> {
ArrayList<OSGiResult> results = new ArrayList<>(programs.length);
try {
for (OSGi<T> program : programs) {
results.add(program.run(executionContext, op));
}
}
catch (Exception e) {
cleanUp(results);
throw e;
}
return new OSGiResultImpl(
() -> cleanUp(results),
() -> results.stream().map(result -> result.update()).reduce(Boolean.FALSE, Boolean::logicalOr)
);
});
}