X-Git-Url: https://mograsim.net/gitweb/?a=blobdiff_plain;f=net.mograsim.logic.model.am2900%2Fsrc%2Fnet%2Fmograsim%2Flogic%2Fmodel%2Fam2900%2FAm2900Loader.java;h=10cf14123d5c600299e911cfb13b799051227fa4;hb=8bed58cd47f4e53a0a83e066d38864aa6875502f;hp=45d22078d1c2d334e15a27ee932694baa7c75cdb;hpb=c3f6c48944beecd51a41a6e9c123b73d8b630dfb;p=Mograsim.git diff --git a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/Am2900Loader.java b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/Am2900Loader.java index 45d22078..10cf1412 100644 --- a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/Am2900Loader.java +++ b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/am2900/Am2900Loader.java @@ -1,23 +1,23 @@ package net.mograsim.logic.model.am2900; -import java.io.IOException; -import java.io.InputStream; import java.util.concurrent.atomic.AtomicBoolean; import org.osgi.framework.BundleActivator; import org.osgi.framework.BundleContext; -import net.mograsim.logic.model.serializing.IndirectGUIComponentCreator; -import net.mograsim.logic.model.serializing.ResourceLoader; +import net.mograsim.logic.model.serializing.ClassLoaderBasedResourceLoader; +import net.mograsim.logic.model.serializing.IndirectModelComponentCreator; +import net.mograsim.machine.MachineLoader; public class Am2900Loader implements BundleActivator { + // TODO use dff16 in dff16_we & dff16_invwe private static AtomicBoolean activated = new AtomicBoolean(false); @Override public void start(BundleContext context) throws Exception { - setup(); // TODO: useful? + setup(); } @Override @@ -30,36 +30,10 @@ public class Am2900Loader implements BundleActivator { if (activated.getAndSet(true)) return; - IndirectGUIComponentCreator.registerResourceLoader(new Am2900ResourceLoader(), "Am2900Loader"); - IndirectGUIComponentCreator.loadStandardComponentIDs(Am2900Loader.class.getResourceAsStream("standardComponentIDMapping.json")); - System.out.println("SETUP DONE"); - } - - static - { - setup(); - } - - /** - * @see ResourceLoader - */ - public static ResourceLoader resourceLoader() - { - return new Am2900ResourceLoader(); - } - - static class Am2900ResourceLoader implements ResourceLoader - { - @Override - public InputStream loadResource(String path) throws IOException - { - return Am2900ResourceLoader.class.getResourceAsStream(path); - } - - @Override - public Class loadClass(String name) throws ClassNotFoundException - { - return Class.forName(name, true, Am2900ResourceLoader.class.getClassLoader()); - } + ClassLoaderBasedResourceLoader resourceLoader = ClassLoaderBasedResourceLoader.create(Am2900Loader.class.getClassLoader()); + IndirectModelComponentCreator.registerResourceLoader(resourceLoader, "Am2900Loader"); + IndirectModelComponentCreator.loadStandardComponentIDs(Am2900Loader.class.getResourceAsStream("standardComponentIDMapping.json")); + MachineLoader.setup(); +// System.out.println("SETUP DONE"); // TODO: Debug } }