private boolean someDependenciesNeedInstance() { for (DependencyContext d : m_dependencies) { if (d.needsInstance()) { return true; } } return false; }
private void startDependencies(List<DependencyContext> dependencies) { // Start first optional dependencies first. m_logger.debug("startDependencies."); List<DependencyContext> requiredDeps = new ArrayList<>(); for (DependencyContext d : dependencies) { if (d.isRequired()) { requiredDeps.add(d); continue; } if (d.needsInstance()) { instantiateComponent(); } d.start(); } // now, start required dependencies. for (DependencyContext d : requiredDeps) { if (d.needsInstance()) { instantiateComponent(); } d.start(); } }