src/jdk.jdeps/share/classes/com/sun/tools/jdeps/Module.java
changeset 52650 c16b6cc93272
parent 47216 71c04702a3d5
child 52988 7c8f8949a07d
--- a/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/Module.java	Wed Nov 21 22:33:33 2018 -0800
+++ b/src/jdk.jdeps/share/classes/com/sun/tools/jdeps/Module.java	Wed Nov 21 22:34:01 2018 -0800
@@ -58,12 +58,16 @@
     private final URI location;
 
     protected Module(String name) {
+        this(name, null, false);
+    }
+
+    protected Module(String name, ModuleDescriptor descriptor, boolean isSystem) {
         super(name);
-        this.descriptor = null;
+        this.descriptor = descriptor;
         this.location = null;
         this.exports = Collections.emptyMap();
         this.opens = Collections.emptyMap();
-        this.isSystem = true;
+        this.isSystem = isSystem;
     }
 
     private Module(String name,
@@ -89,11 +93,11 @@
     }
 
     public boolean isNamed() {
-        return true;
+        return descriptor != null;
     }
 
     public boolean isAutomatic() {
-        return descriptor.isAutomatic();
+        return descriptor != null && descriptor.isAutomatic();
     }
 
     public Module getModule() {
@@ -232,9 +236,7 @@
 
     private static class UnnamedModule extends Module {
         private UnnamedModule() {
-            super("unnamed", null, null,
-                  Collections.emptyMap(), Collections.emptyMap(),
-                  false, null);
+            super("unnamed", null, false);
         }
 
         @Override
@@ -243,16 +245,6 @@
         }
 
         @Override
-        public boolean isNamed() {
-            return false;
-        }
-
-        @Override
-        public boolean isAutomatic() {
-            return false;
-        }
-
-        @Override
         public boolean isExported(String pn) {
             return true;
         }