X-Git-Url: https://mograsim.net/gitweb/?a=blobdiff_plain;f=net.mograsim.machine%2Fsrc%2Fnet%2Fmograsim%2Fmachine%2FMachineLoader.java;fp=net.mograsim.machine%2Fsrc%2Fnet%2Fmograsim%2Fmachine%2FMachineLoader.java;h=9a88575b8f3c24f894b211dfd7712d33cb73c2f4;hb=52db0db90ba1361e96c0313b6e51817ef4891c49;hp=0000000000000000000000000000000000000000;hpb=939f37fb65d2057c3f370214cc2eebd3e9989f69;p=Mograsim.git diff --git a/net.mograsim.machine/src/net/mograsim/machine/MachineLoader.java b/net.mograsim.machine/src/net/mograsim/machine/MachineLoader.java new file mode 100644 index 00000000..9a88575b --- /dev/null +++ b/net.mograsim.machine/src/net/mograsim/machine/MachineLoader.java @@ -0,0 +1,36 @@ +package net.mograsim.machine; + +import java.util.concurrent.atomic.AtomicBoolean; + +import org.osgi.framework.BundleActivator; +import org.osgi.framework.BundleContext; + +import net.mograsim.logic.model.serializing.ClassLoaderBasedResourceLoader; +import net.mograsim.logic.model.serializing.IndirectModelComponentCreator; + +public class MachineLoader implements BundleActivator +{ + private static AtomicBoolean activated = new AtomicBoolean(false); + + @Override + public void start(BundleContext context) throws Exception + { + setup(); + } + + @Override + public void stop(BundleContext context) throws Exception + { + // nothing + } + + public static void setup() + { + if (activated.getAndSet(true)) + return; + ClassLoaderBasedResourceLoader resourceLoader = ClassLoaderBasedResourceLoader.create(MachineLoader.class.getClassLoader()); + IndirectModelComponentCreator.registerResourceLoader(resourceLoader, "MachineLoader"); + IndirectModelComponentCreator.loadStandardComponentIDs(MachineLoader.class.getResourceAsStream("standardComponentIDMapping.json")); +// System.out.println("SETUP DONE"); // TODO: Debug + } +}