Class ModuleManager<P extends CodexPlugin<P>>

java.lang.Object
studio.magemonkey.codex.modules.ModuleManager<P>
All Implemented Interfaces:
studio.magemonkey.codex.manager.api.Loadable

public class ModuleManager<P extends CodexPlugin<P>> extends Object implements studio.magemonkey.codex.manager.api.Loadable
  • Constructor Details

    • ModuleManager

      public ModuleManager(@NotNull P plugin)
  • Method Details

    • setup

      public void setup()
      Specified by:
      setup in interface studio.magemonkey.codex.manager.api.Loadable
    • shutdown

      public void shutdown()
      Specified by:
      shutdown in interface studio.magemonkey.codex.manager.api.Loadable
    • register

      @Nullable public IModule<P> register(@NotNull IModule<P> module)
      Parameters:
      module - Module instance.
      Returns:
      An object instance of registered module. Returns NULL if module hasn't been registered.
    • registerExternal

      public void registerExternal(@NotNull IExternalModule.LoadPriority priority)
    • unregister

      public void unregister(@NotNull IModule<?> module)
    • getModule

      @Nullable public <T extends IModule<P>> T getModule(@NotNull Class<T> clazz)
    • getModule

      @Nullable public IModule<P> getModule(@NotNull String id)
    • getModules

      @NotNull public Collection<IModule<P>> getModules()
    • loadFromFile

      @Nullable public IExternalModule<P> loadFromFile(@NotNull File jar)