X-Git-Url: https://mograsim.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=plugins%2Fnet.mograsim.machine%2Fsrc%2Fnet%2Fmograsim%2Fmachine%2FMachineRegistry.java;h=089cf31c9fb9f69671211e0204a8a0afccbd23e9;hb=3278dbc72d3d3c803dc5ad2c0dfedc42b277a3d6;hp=52e5d60dc682a0c18b924f021f6fbb90e7b3c3c8;hpb=e4320ff6606b0e8bc5184b8b1ae1e7cae95a5726;p=Mograsim.git diff --git a/plugins/net.mograsim.machine/src/net/mograsim/machine/MachineRegistry.java b/plugins/net.mograsim.machine/src/net/mograsim/machine/MachineRegistry.java index 52e5d60d..089cf31c 100644 --- a/plugins/net.mograsim.machine/src/net/mograsim/machine/MachineRegistry.java +++ b/plugins/net.mograsim.machine/src/net/mograsim/machine/MachineRegistry.java @@ -3,7 +3,11 @@ package net.mograsim.machine; import java.util.Arrays; import java.util.Collections; import java.util.HashMap; +import java.util.HashSet; import java.util.Map; +import java.util.Objects; +import java.util.Set; + import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.IConfigurationElement; import org.eclipse.core.runtime.IExtension; @@ -12,11 +16,21 @@ import org.eclipse.core.runtime.IExtensionRegistry; import org.eclipse.core.runtime.IRegistryEventListener; import org.eclipse.core.runtime.Platform; +/** + * The MachineRegsitry is a static context registry for all {@link MachineDefinition}s known at any point during runtime. + *
+ * It is updated automatically as mograsim machine definition extension points ({@link #MACHINE_EXT_ID}) are added or removed.
+ *
+ * @author Christian Femers
+ *
+ */
public class MachineRegistry
{
- private static final String MACHINE_EXT_ID = "net.mograsim.machine.machine_definition";
- private static final Map