]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/module/ConcreteModule.java
(refs #7105) Added defaultLocalName property to SCL modules
[simantics/platform.git] / bundles / org.simantics.scl.compiler / src / org / simantics / scl / compiler / module / ConcreteModule.java
index a8b51a8be96cad3a0aa1933758e89cc4201707bf..55ee202f7d78d9b56f189bee8df90d96920f03b7 100644 (file)
@@ -31,6 +31,7 @@ import gnu.trove.procedure.TObjectProcedure;
 
 public class ConcreteModule implements Module {
     String moduleName;
+    String defaultLocalName;
     THashMap<String, TypeDescriptor> typeDescriptors = new THashMap<String, TypeDescriptor>();
     THashMap<String, EffectConstructor> effectConstructors = new THashMap<String, EffectConstructor>();
     THashMap<String, TypeClass> typeClasses = new THashMap<String, TypeClass>();
@@ -45,6 +46,7 @@ public class ConcreteModule implements Module {
     CompilationError[] warnings = CompilationError.EMPTY_ARRAY;
     
     Map<String, byte[]> classes = Collections.emptyMap();
+    ClassLoader parentClassLoader;
     ModuleInitializer moduleInitializer;
 
     protected Documentation documentation;
@@ -53,6 +55,15 @@ public class ConcreteModule implements Module {
         this.moduleName = moduleName;
     }
 
+    @Override
+    public String getDefaultLocalName() {
+       return defaultLocalName;
+    }
+    
+    public void setDefaultLocalName(String defaultLocalName) {
+               this.defaultLocalName = defaultLocalName;
+       }
+    
     public boolean addTypeDescriptor(String name, TypeDescriptor typeConstructor) {
         return typeDescriptors.put(name, typeConstructor) != null;
     }
@@ -278,4 +289,15 @@ public class ConcreteModule implements Module {
     public CompilationError[] getWarnings() {
         return warnings;
     }
+    
+    @Override
+    public ClassLoader getParentClassLoader() {
+        return parentClassLoader;
+    }
+    
+    public void setParentClassLoader(ClassLoader parentClassLoader) {
+        if(parentClassLoader == null)
+            throw new NullPointerException();
+        this.parentClassLoader = parentClassLoader;
+    }
 }