// check for any dependency regarding given string private boolean checkModuleDependency(Module module, Collection<ModuleId> rootModules) { for (ModuleId rootModule : rootModules) { if (rootModule.equals(new ModuleId(module.getName(), module.getRevision()))) { return true; } // handling/checking imports regarding root modules for (ModuleImport moduleImport : module.getImports()) { if (moduleImport.getModuleName().equals(rootModule.getName())) { if (moduleImport.getRevision() != null && !moduleImport.getRevision().equals(rootModule.getRev())) { return false; } return true; } } // submodules handling for (Module moduleSub : module.getSubmodules()) { return checkModuleDependency(moduleSub, rootModules); } } return false; }