X-Git-Url: https://mograsim.net/gitweb/?a=blobdiff_plain;f=net.mograsim.logic.model.am2900%2Fsrc%2Fnet%2Fmograsim%2Flogic%2Fmodel%2Fexamples%2FComponenetSerializer.java;h=8699c3b8a8cd93f26823111fa854e4273cd2c3db;hb=a25f554756e1bc9a1f842293aefe60a220d8b950;hp=52bf5c0b3cdea52ba4747ca19d5dcac191e3fb9a;hpb=f3e1662abcae720f6b1ea396e1ac33c1be41e429;p=Mograsim.git diff --git a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/examples/ComponenetSerializer.java b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/examples/ComponenetSerializer.java index 52bf5c0b..8699c3b8 100644 --- a/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/examples/ComponenetSerializer.java +++ b/net.mograsim.logic.model.am2900/src/net/mograsim/logic/model/examples/ComponenetSerializer.java @@ -1,10 +1,8 @@ package net.mograsim.logic.model.examples; import java.io.IOException; -import java.util.function.Function; import net.mograsim.logic.model.model.ViewModelModifiable; -import net.mograsim.logic.model.model.components.GUIComponent; import net.mograsim.logic.model.model.components.mi.nandbased.GUI_rsLatch; import net.mograsim.logic.model.model.components.mi.nandbased.GUIand; import net.mograsim.logic.model.model.components.mi.nandbased.GUIand41; @@ -35,6 +33,7 @@ import net.mograsim.logic.model.model.components.mi.nandbased.am2901.GUIAm2901De import net.mograsim.logic.model.model.components.mi.nandbased.am2901.GUIAm2901QReg; import net.mograsim.logic.model.model.components.mi.nandbased.am2901.GUIAm2901SourceDecode; import net.mograsim.logic.model.model.components.submodels.SubmodelComponent; +import net.mograsim.logic.model.serializing.IdentifierGetter; import net.mograsim.logic.model.serializing.SubmodelComponentParams; import net.mograsim.logic.model.serializing.SubmodelComponentSerializer; import net.mograsim.logic.model.util.JsonHandler; @@ -43,8 +42,9 @@ public class ComponenetSerializer { public static void main(String[] args) throws IOException { + IdentifierGetter idGetter = new IdentifierGetter(); // we know we only use components where this works - Function getIdentifier = c -> c.getClass().getSimpleName(); + idGetter.componentIDs = c -> c.getClass().getSimpleName(); ViewModelModifiable model = new ViewModelModifiable(); SubmodelComponent[] components = { new GUIAm2901(model), new GUIAm2901ALUFuncDecode(model), new GUIAm2901ALUInclDecode(model), @@ -57,7 +57,7 @@ public class ComponenetSerializer for (SubmodelComponent comp : components) { - SubmodelComponentParams params = SubmodelComponentSerializer.serialize(comp, getIdentifier); + SubmodelComponentParams params = SubmodelComponentSerializer.serialize(comp, idGetter); String shortClassName = comp.getClass().getName().substring("net.mograsim.logic.model.model.components.mi.nandbased.".length()); String path = "components/" + shortClassName.replace('.', '/') + ".json"; JsonHandler.writeJson(params, path);