import com.google.common.collect.Lists;
import java.net.URI;
import java.util.Arrays;
+import java.util.Collection;
import java.util.Date;
import java.util.HashMap;
import java.util.HashSet;
+import java.util.LinkedHashSet;
import java.util.List;
import java.util.Map;
import java.util.Objects;
fromRevision = DEFAULT_REVISION;
}
- for (final ModuleImport imprt : module.getImports()) {
+ for (final ModuleImport imprt : allImports(module)) {
final String toName = imprt.getModuleName();
final Date toRevision = imprt.getRevision() == null ? DEFAULT_REVISION : imprt.getRevision();
}
}
+ private static Collection<ModuleImport> allImports(final Module mod) {
+ if (mod.getSubmodules().isEmpty()) {
+ return mod.getImports();
+ }
+
+ final Collection<ModuleImport> concat = new LinkedHashSet<>();
+ concat.addAll(mod.getImports());
+ for (Module sub : mod.getSubmodules()) {
+ concat.addAll(sub.getImports());
+ }
+ return concat;
+ }
+
/**
* Get imported module by its name and revision from moduleGraph
*/