Interface PluginLoader

  • All Known Implementing Classes:
    JavaPluginLoader

    public interface PluginLoader
    Represents a plugin loader, which handles direct access to specific types of plugins
    • Method Detail

      • getPluginDescription

        @NotNull
        PluginDescriptionFile getPluginDescription​(@NotNull
                                                   File file)
                                            throws InvalidDescriptionException
        Loads a PluginDescriptionFile from the specified file
        Parameters:
        file - File to attempt to load from
        Returns:
        A new PluginDescriptionFile loaded from the plugin.yml in the specified file
        Throws:
        InvalidDescriptionException - If the plugin description file could not be created
      • getPluginFileFilters

        @NotNull
        Pattern[] getPluginFileFilters()
        Returns a list of all filename filters expected by this PluginLoader
        Returns:
        The filters
      • createRegisteredListeners

        @NotNull
        Map<Class<? extends Event>,​Set<RegisteredListener>> createRegisteredListeners​(@NotNull
                                                                                            Listener listener,
                                                                                            @NotNull
                                                                                            Plugin plugin)
        Creates and returns registered listeners for the event classes used in this listener
        Parameters:
        listener - The object that will handle the eventual call back
        plugin - The plugin to use when creating registered listeners
        Returns:
        The registered listeners.
      • enablePlugin

        void enablePlugin​(@NotNull
                          Plugin plugin)
        Enables the specified plugin

        Attempting to enable a plugin that is already enabled will have no effect

        Parameters:
        plugin - Plugin to enable
      • disablePlugin

        void disablePlugin​(@NotNull
                           Plugin plugin)
        Disables the specified plugin

        Attempting to disable a plugin that is not enabled will have no effect

        Parameters:
        plugin - Plugin to disable