Interface Plugin

    • Method Detail

      • getDataFolder

        @NotNull
        File getDataFolder()
        Returns the folder that the plugin data's files are located in. The folder may not yet exist.
        Returns:
        The folder
      • getDescription

        @NotNull
        PluginDescriptionFile getDescription()
        Returns the plugin.yaml file containing the details for this plugin
        Returns:
        Contents of the plugin.yaml file
      • getConfig

        @NotNull
        FileConfiguration getConfig()
        Gets a FileConfiguration for this plugin, read through "config.yml"

        If there is a default config.yml embedded in this plugin, it will be provided as a default for this Configuration.

        Returns:
        Plugin configuration
      • getResource

        @Nullable
        InputStream getResource​(@NotNull
                                String filename)
        Gets an embedded resource in this plugin
        Parameters:
        filename - Filename of the resource
        Returns:
        File if found, otherwise null
      • saveDefaultConfig

        void saveDefaultConfig()
        Saves the raw contents of the default config.yml file to the location retrievable by getConfig().

        This should fail silently if the config.yml already exists.

      • saveResource

        void saveResource​(@NotNull
                          String resourcePath,
                          boolean replace)
        Saves the raw contents of any resource embedded with a plugin's .jar file assuming it can be found using getResource(String).

        The resource is saved into the plugin's data folder using the same hierarchy as the .jar file (subdirectories are preserved).

        Parameters:
        resourcePath - the embedded resource path to look for within the plugin's .jar file. (No preceding slash).
        replace - if true, the embedded resource will overwrite the contents of an existing file.
        Throws:
        IllegalArgumentException - if the resource path is null, empty, or points to a nonexistent resource.
      • reloadConfig

        void reloadConfig()
        Discards any data in getConfig() and reloads from disk.
      • getPluginLoader

        @NotNull
        PluginLoader getPluginLoader()
        Gets the associated PluginLoader responsible for this plugin
        Returns:
        PluginLoader that controls this plugin
      • getServer

        @NotNull
        Server getServer()
        Returns the Server instance currently running this plugin
        Returns:
        Server running this plugin
      • isEnabled

        boolean isEnabled()
        Returns a value indicating whether or not this plugin is currently enabled
        Returns:
        true if this plugin is enabled, otherwise false
      • onDisable

        void onDisable()
        Called when this plugin is disabled
      • onLoad

        void onLoad()
        Called after a plugin is loaded but before it has been enabled.

        When multiple plugins are loaded, the onLoad() for all plugins is called before any onEnable() is called.

      • onEnable

        void onEnable()
        Called when this plugin is enabled
      • isNaggable

        boolean isNaggable()
        Simple boolean if we can still nag to the logs about things
        Returns:
        boolean whether we can nag
      • setNaggable

        void setNaggable​(boolean canNag)
        Set naggable state
        Parameters:
        canNag - is this plugin still naggable?
      • getDefaultWorldGenerator

        @Nullable
        ChunkGenerator getDefaultWorldGenerator​(@NotNull
                                                String worldName,
                                                @Nullable
                                                String id)
        Gets a ChunkGenerator for use in a default world, as specified in the server configuration
        Parameters:
        worldName - Name of the world that this will be applied to
        id - Unique ID, if any, that was specified to indicate which generator was requested
        Returns:
        ChunkGenerator for use in the default world generation
      • getLogger

        @NotNull
        Logger getLogger()
        Returns the plugin logger associated with this server's logger. The returned logger automatically tags all log messages with the plugin's name.
        Returns:
        Logger associated with this plugin
      • getName

        @NotNull
        String getName()
        Returns the name of the plugin.

        This should return the bare name of the plugin and should be used for comparison.

        Returns:
        name of the plugin