Fixed a bug in Am2900; created dlatch8/80; relayouted some components
[Mograsim.git] / net.mograsim.machine / src / net / mograsim / machine / MachineLoader.java
1 package net.mograsim.machine;
2
3 import java.util.concurrent.atomic.AtomicBoolean;
4
5 import org.osgi.framework.BundleActivator;
6 import org.osgi.framework.BundleContext;
7
8 import net.mograsim.logic.model.serializing.ClassLoaderBasedResourceLoader;
9 import net.mograsim.logic.model.serializing.IndirectModelComponentCreator;
10
11 public class MachineLoader implements BundleActivator
12 {
13         private static AtomicBoolean activated = new AtomicBoolean(false);
14
15         @Override
16         public void start(BundleContext context) throws Exception
17         {
18                 setup();
19         }
20
21         @Override
22         public void stop(BundleContext context) throws Exception
23         {
24                 // nothing
25         }
26
27         public static void setup()
28         {
29                 if (activated.getAndSet(true))
30                         return;
31                 ClassLoaderBasedResourceLoader resourceLoader = ClassLoaderBasedResourceLoader.create(MachineLoader.class.getClassLoader());
32                 IndirectModelComponentCreator.registerResourceLoader(resourceLoader, "MachineLoader");
33                 IndirectModelComponentCreator.loadStandardComponentIDs(MachineLoader.class.getResourceAsStream("standardComponentIDMapping.json"));
34 //              System.out.println("SETUP DONE"); // TODO: Debug
35         }
36 }