public final class SimplePluginManager extends Object implements PluginManager
| Constructor and Description | 
|---|
| SimplePluginManager(Server instance,
                   SimpleCommandMap commandMap) | 
| Modifier and Type | Method and Description | 
|---|---|
| void | addPermission(Permission perm)Adds a  Permissionto this plugin manager. | 
| void | addPermission(Permission perm,
             boolean dirty)Deprecated.  | 
| void | callEvent(Event event)Calls an event with the given details. | 
| void | clearPermissions() | 
| void | clearPlugins()Disables and removes all plugins | 
| void | dirtyPermissibles()Deprecated.  | 
| 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 | disablePlugins(boolean closeClassloaders) | 
| 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(Plugin plugin)Checks if the given plugin is enabled or not | 
| boolean | isPluginEnabled(String name)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 given event to the specified listener using a directly
 passed EventExecutor | 
| 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(Permission perm)Removes a  Permissionregistration from this plugin manager. | 
| void | removePermission(String name)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 | useTimings(boolean use)Sets whether or not per event timing code should be used | 
public SimplePluginManager(@NotNull
                           Server instance,
                           @NotNull
                           SimpleCommandMap commandMap)
public void registerInterface(@NotNull
                              Class<? extends PluginLoader> loader)
                       throws IllegalArgumentException
registerInterface in interface PluginManagerloader - Class name of the PluginLoader to registerIllegalArgumentException - Thrown when the given Class is not a
     valid PluginLoader@NotNull public Plugin[] loadPlugins(@NotNull File directory)
loadPlugins in interface PluginManagerdirectory - Directory to check for plugins@Nullable public Plugin loadPlugin(@NotNull File file) throws InvalidPluginException, UnknownDependencyException
File must be valid according to the current enabled Plugin interfaces
loadPlugin in interface PluginManagerfile - File containing the plugin to loadInvalidPluginException - Thrown when the specified file is not a
     valid pluginUnknownDependencyException - If a required dependency could not
     be found@Nullable public Plugin getPlugin(@NotNull String name)
Please note that the name of the plugin is case-sensitive
getPlugin in interface PluginManagername - Name of the plugin to check@NotNull public Plugin[] getPlugins()
PluginManagergetPlugins in interface PluginManagerpublic boolean isPluginEnabled(@NotNull
                               String name)
Please note that the name of the plugin is case-sensitive.
isPluginEnabled in interface PluginManagername - Name of the plugin to checkpublic boolean isPluginEnabled(@Nullable
                               Plugin plugin)
isPluginEnabled in interface PluginManagerplugin - Plugin to checkpublic void enablePlugin(@NotNull
                         Plugin plugin)
PluginManagerAttempting to enable a plugin that is already enabled will have no effect
enablePlugin in interface PluginManagerplugin - Plugin to enablepublic void disablePlugins()
PluginManagerdisablePlugins in interface PluginManagerpublic void disablePlugins(boolean closeClassloaders)
public void disablePlugin(@NotNull
                          Plugin plugin)
PluginManagerAttempting to disable a plugin that is not enabled will have no effect
disablePlugin in interface PluginManagerplugin - Plugin to disablepublic void disablePlugin(@NotNull
                          Plugin plugin,
                          boolean closeClassloader)
PluginManagerAttempting to disable a plugin that is not enabled will have no effect
disablePlugin in interface PluginManagerplugin - Plugin to disablecloseClassloader - if the classloader for the Plugin should be closedpublic void clearPlugins()
PluginManagerclearPlugins in interface PluginManagerpublic void callEvent(@NotNull
                      Event event)
This method only synchronizes when the event is not asynchronous.
callEvent in interface PluginManagerevent - Event detailspublic void registerEvents(@NotNull
                           Listener listener,
                           @NotNull
                           Plugin plugin)
PluginManagerregisterEvents in interface PluginManagerlistener - Listener to registerplugin - Plugin to registerpublic void registerEvent(@NotNull
                          Class<? extends Event> event,
                          @NotNull
                          Listener listener,
                          @NotNull
                          EventPriority priority,
                          @NotNull
                          EventExecutor executor,
                          @NotNull
                          Plugin plugin)
PluginManagerregisterEvent in interface PluginManagerevent - Event type to registerlistener - Listener to registerpriority - Priority to register this event atexecutor - EventExecutor to registerplugin - Plugin to registerpublic void registerEvent(@NotNull
                          Class<? extends Event> event,
                          @NotNull
                          Listener listener,
                          @NotNull
                          EventPriority priority,
                          @NotNull
                          EventExecutor executor,
                          @NotNull
                          Plugin plugin,
                          boolean ignoreCancelled)
registerEvent in interface PluginManagerevent - Event class to registerlistener - PlayerListener to registerpriority - Priority of this eventexecutor - EventExecutor to registerplugin - Plugin to registerignoreCancelled - Do not call executor if event was already
     cancelled@Nullable public Permission getPermission(@NotNull String name)
PluginManagerPermission from its fully qualified namegetPermission in interface PluginManagername - Name of the permissionpublic void addPermission(@NotNull
                          Permission perm)
PluginManagerPermission to this plugin manager.
 If a permission is already defined with the given name of the new permission, an exception will be thrown.
addPermission in interface PluginManagerperm - Permission to add@Deprecated public void addPermission(@NotNull Permission perm, boolean dirty)
@NotNull public Set<Permission> getDefaultPermissions(boolean op)
PluginManagergetDefaultPermissions in interface PluginManagerop - Which set of default permissions to getpublic void removePermission(@NotNull
                             Permission perm)
PluginManagerPermission 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.
removePermission in interface PluginManagerperm - Permission to removepublic void removePermission(@NotNull
                             String name)
PluginManagerPermission 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.
removePermission in interface PluginManagername - Permission to removepublic void recalculatePermissionDefaults(@NotNull
                                          Permission perm)
PluginManagerPermission.
 This will have no effect if the specified permission is not registered here.
recalculatePermissionDefaults in interface PluginManagerperm - Permission to recalculate@Deprecated public void dirtyPermissibles()
public void subscribeToPermission(@NotNull
                                  String permission,
                                  @NotNull
                                  Permissible permissible)
PluginManagerIf the specified Permission changes in any form, the Permissible will be asked to recalculate.
subscribeToPermission in interface PluginManagerpermission - Permission to subscribe topermissible - Permissible subscribingpublic void unsubscribeFromPermission(@NotNull
                                      String permission,
                                      @NotNull
                                      Permissible permissible)
PluginManagerunsubscribeFromPermission in interface PluginManagerpermission - Permission to unsubscribe frompermissible - Permissible subscribing@NotNull public Set<Permissible> getPermissionSubscriptions(@NotNull String permission)
PluginManagerPermissibles to the given
 permission, by namegetPermissionSubscriptions in interface PluginManagerpermission - Permission to query forpublic void subscribeToDefaultPerms(boolean op,
                                    @NotNull
                                    Permissible permissible)
PluginManagerIf the specified defaults change in any form, the Permissible will be asked to recalculate.
subscribeToDefaultPerms in interface PluginManagerop - Default list to subscribe topermissible - Permissible subscribingpublic void unsubscribeFromDefaultPerms(boolean op,
                                        @NotNull
                                        Permissible permissible)
PluginManagerunsubscribeFromDefaultPerms in interface PluginManagerop - Default list to unsubscribe frompermissible - Permissible subscribing@NotNull public Set<Permissible> getDefaultPermSubscriptions(boolean op)
PluginManagerPermissibles to the given
 default list, by op statusgetDefaultPermSubscriptions in interface PluginManagerop - Default list to query for@NotNull public Set<Permission> getPermissions()
PluginManagerThis set is a copy and will not be modified live.
getPermissions in interface PluginManagerpublic boolean useTimings()
PluginManageruseTimings in interface PluginManagerpublic void useTimings(boolean use)
use - True if per event timing code should be usedpublic void clearPermissions()
Copyright © 2022. All rights reserved.