X-Git-Url: https://mograsim.net/gitweb/?a=blobdiff_plain;f=plugins%2Fnet.mograsim.plugin.core%2Fsrc%2Fnet%2Fmograsim%2Fplugin%2FMachineContext.java;fp=plugins%2Fnet.mograsim.plugin.core%2Fsrc%2Fnet%2Fmograsim%2Fplugin%2FMachineContext.java;h=0000000000000000000000000000000000000000;hb=ff5a5d2a6f7ccb80aff0a38fbb512d96a8030cde;hp=c22c1c748f1e255dcd0f9d3475c3bd4f2d85aaee;hpb=a06df6bb33baa2825e57fb76f45636c8a66a5dcc;p=Mograsim.git diff --git a/plugins/net.mograsim.plugin.core/src/net/mograsim/plugin/MachineContext.java b/plugins/net.mograsim.plugin.core/src/net/mograsim/plugin/MachineContext.java deleted file mode 100644 index c22c1c74..00000000 --- a/plugins/net.mograsim.plugin.core/src/net/mograsim/plugin/MachineContext.java +++ /dev/null @@ -1,69 +0,0 @@ -package net.mograsim.plugin; - -import java.util.HashSet; -import java.util.Optional; -import java.util.Set; - -import net.mograsim.machine.Machine; -import net.mograsim.machine.MachineRegistry; -import net.mograsim.plugin.nature.ProjectMachineContext; - -/** - * @deprecated use the {@link ProjectMachineContext} instead to make the context project dependent. - */ -@Deprecated(forRemoval = true) -public class MachineContext -{ - private Machine machine; - private Set observers; - private static MachineContext instance; - - private MachineContext() - { - observers = new HashSet<>(); - } - - public static MachineContext getInstance() - { - if (instance == null) - { - instance = new MachineContext(); - // TODO don't hardcode the Am2900 - instance.setMachine(MachineRegistry.getMachine("Am2900").createNew()); - } - return instance; - } - - public Machine getMachine() - { - return machine; - } - - public void setMachine(Machine machine) - { - this.machine = machine; - notifyObservers(machine); - } - - public void registerObserver(ContextObserver ob) - { - observers.add(ob); - ob.setMachine(Optional.ofNullable(machine)); - } - - public void deregisterObserver(ContextObserver ob) - { - observers.remove(ob); - } - - private void notifyObservers(Machine machine) - { - observers.forEach(ob -> ob.setMachine(Optional.ofNullable(machine))); - } - - @FunctionalInterface - public static interface ContextObserver - { - void setMachine(Optional machine); - } -}