SimplePluginManagerpublic interface PluginManager
| Modifier and Type | Method | Description | 
|---|---|---|
| void | addPermission(Permission perm) | Adds a  Permissionto this plugin manager. | 
| void | callEvent(Event event) | Calls an event with the given details | 
| void | clearPlugins() | Disables and removes all plugins | 
| void | disablePlugin(Plugin plugin) | Disables the specified plugin | 
| void | disablePlugin(Plugin plugin,
             boolean closeClassloader) | Disables the specified plugin | 
| void | disablePlugins() | Disables all the loaded plugins | 
| void | enablePlugin(Plugin plugin) | Enables the specified plugin | 
| Set<Permission> | getDefaultPermissions(boolean op) | Gets the default permissions for the given op status | 
| Set<Permissible> | getDefaultPermSubscriptions(boolean op) | Gets a set containing all subscribed  Permissibles to the given
 default list, by op status | 
| Permission | getPermission(String name) | Gets a  Permissionfrom its fully qualified name | 
| Set<Permission> | getPermissions() | Gets a set of all registered permissions. | 
| Set<Permissible> | getPermissionSubscriptions(String permission) | Gets a set containing all subscribed  Permissibles to the given
 permission, by name | 
| Plugin | getPlugin(String name) | Checks if the given plugin is loaded and returns it when applicable | 
| Plugin[] | getPlugins() | Gets a list of all currently loaded plugins | 
| boolean | isPluginEnabled(String name) | Checks if the given plugin is enabled or not | 
| boolean | isPluginEnabled(Plugin plugin) | Checks if the given plugin is enabled or not | 
| Plugin | loadPlugin(File file) | Loads the plugin in the specified file | 
| Plugin[] | loadPlugins(File directory) | Loads the plugins contained within the specified directory | 
| void | recalculatePermissionDefaults(Permission perm) | Recalculates the defaults for the given  Permission. | 
| void | registerEvent(Class<? extends Event> event,
             Listener listener,
             EventPriority priority,
             EventExecutor executor,
             Plugin plugin) | Registers the specified executor to the given event class | 
| void | registerEvent(Class<? extends Event> event,
             Listener listener,
             EventPriority priority,
             EventExecutor executor,
             Plugin plugin,
             boolean ignoreCancelled) | Registers the specified executor to the given event class | 
| void | registerEvents(Listener listener,
              Plugin plugin) | Registers all the events in the given listener class | 
| void | registerInterface(Class<? extends PluginLoader> loader) | Registers the specified plugin loader | 
| void | removePermission(String name) | Removes a  Permissionregistration from this plugin manager. | 
| void | removePermission(Permission perm) | Removes a  Permissionregistration from this plugin manager. | 
| void | subscribeToDefaultPerms(boolean op,
                       Permissible permissible) | Subscribes to the given Default permissions by operator status | 
| void | subscribeToPermission(String permission,
                     Permissible permissible) | Subscribes the given Permissible for information about the requested
 Permission, by name. | 
| void | unsubscribeFromDefaultPerms(boolean op,
                           Permissible permissible) | Unsubscribes from the given Default permissions by operator status | 
| void | unsubscribeFromPermission(String permission,
                         Permissible permissible) | Unsubscribes the given Permissible for information about the requested
 Permission, by name. | 
| boolean | useTimings() | Returns whether or not timing code should be used for event calls | 
void registerInterface(@NotNull
                       Class<? extends PluginLoader> loader)
                throws IllegalArgumentException
loader - Class name of the PluginLoader to registerIllegalArgumentException - Thrown when the given Class is not a
     valid PluginLoader@Nullable Plugin getPlugin(@NotNull String name)
Please note that the name of the plugin is case-sensitive
name - Name of the plugin to check@NotNull Plugin[] getPlugins()
boolean isPluginEnabled(@NotNull
                        String name)
Please note that the name of the plugin is case-sensitive.
name - Name of the plugin to check@Contract("null -> false")
boolean isPluginEnabled(@Nullable
                        Plugin plugin)
plugin - Plugin to check@Nullable Plugin loadPlugin(@NotNull File file) throws InvalidPluginException, InvalidDescriptionException, UnknownDependencyException
File must be valid according to the current enabled Plugin interfaces
file - File containing the plugin to loadInvalidPluginException - Thrown when the specified file is not a
     valid pluginInvalidDescriptionException - Thrown when the specified file
     contains an invalid descriptionUnknownDependencyException - If a required dependency could not
     be resolved@NotNull Plugin[] loadPlugins(@NotNull File directory)
directory - Directory to check for pluginsvoid disablePlugins()
void clearPlugins()
void callEvent(@NotNull
               Event event)
        throws IllegalStateException
event - Event detailsIllegalStateException - Thrown when an asynchronous event is
     fired from synchronous code.
     Note: This is best-effort basis, and should not be used to test synchronized state. This is an indicator for flawed flow logic.
void registerEvents(@NotNull
                    Listener listener,
                    @NotNull
                    Plugin plugin)
listener - Listener to registerplugin - Plugin to registervoid registerEvent(@NotNull
                   Class<? extends Event> event,
                   @NotNull
                   Listener listener,
                   @NotNull
                   EventPriority priority,
                   @NotNull
                   EventExecutor executor,
                   @NotNull
                   Plugin plugin)
event - Event type to registerlistener - Listener to registerpriority - Priority to register this event atexecutor - EventExecutor to registerplugin - Plugin to registervoid registerEvent(@NotNull
                   Class<? extends Event> event,
                   @NotNull
                   Listener listener,
                   @NotNull
                   EventPriority priority,
                   @NotNull
                   EventExecutor executor,
                   @NotNull
                   Plugin plugin,
                   boolean ignoreCancelled)
event - Event type to registerlistener - Listener to registerpriority - Priority to register this event atexecutor - EventExecutor to registerplugin - Plugin to registerignoreCancelled - Whether to pass cancelled events or notvoid enablePlugin(@NotNull
                  Plugin plugin)
Attempting to enable a plugin that is already enabled will have no effect
plugin - Plugin to enablevoid disablePlugin(@NotNull
                   Plugin plugin)
Attempting to disable a plugin that is not enabled will have no effect
plugin - Plugin to disablevoid disablePlugin(@NotNull
                   Plugin plugin,
                   boolean closeClassloader)
Attempting to disable a plugin that is not enabled will have no effect
plugin - Plugin to disablecloseClassloader - if the classloader for the Plugin should be closed@Nullable Permission getPermission(@NotNull String name)
Permission from its fully qualified namename - Name of the permissionvoid addPermission(@NotNull
                   Permission perm)
Permission to this plugin manager.
 If a permission is already defined with the given name of the new permission, an exception will be thrown.
perm - Permission to addIllegalArgumentException - Thrown when a permission with the same
     name already existsvoid removePermission(@NotNull
                      Permission perm)
Permission registration from this plugin manager.
 If the specified permission does not exist in this plugin manager, nothing will happen.
 Removing a permission registration will not remove the
 permission from any Permissibles that have it.
perm - Permission to removevoid removePermission(@NotNull
                      String name)
Permission registration from this plugin manager.
 If the specified permission does not exist in this plugin manager, nothing will happen.
 Removing a permission registration will not remove the
 permission from any Permissibles that have it.
name - Permission to remove@NotNull Set<Permission> getDefaultPermissions(boolean op)
op - Which set of default permissions to getvoid recalculatePermissionDefaults(@NotNull
                                   Permission perm)
Permission.
 This will have no effect if the specified permission is not registered here.
perm - Permission to recalculatevoid subscribeToPermission(@NotNull
                           String permission,
                           @NotNull
                           Permissible permissible)
If the specified Permission changes in any form, the Permissible will be asked to recalculate.
permission - Permission to subscribe topermissible - Permissible subscribingvoid unsubscribeFromPermission(@NotNull
                               String permission,
                               @NotNull
                               Permissible permissible)
permission - Permission to unsubscribe frompermissible - Permissible subscribing@NotNull Set<Permissible> getPermissionSubscriptions(@NotNull String permission)
Permissibles to the given
 permission, by namepermission - Permission to query forvoid subscribeToDefaultPerms(boolean op,
                             @NotNull
                             Permissible permissible)
If the specified defaults change in any form, the Permissible will be asked to recalculate.
op - Default list to subscribe topermissible - Permissible subscribingvoid unsubscribeFromDefaultPerms(boolean op,
                                 @NotNull
                                 Permissible permissible)
op - Default list to unsubscribe frompermissible - Permissible subscribing@NotNull Set<Permissible> getDefaultPermSubscriptions(boolean op)
Permissibles to the given
 default list, by op statusop - Default list to query for@NotNull Set<Permission> getPermissions()
This set is a copy and will not be modified live.
boolean useTimings()
Copyright © 2020. All rights reserved.