|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface PluginManager
Handles all plugin management from the Server
Method Summary | |
---|---|
void |
addPermission(Permission perm)
Adds a Permission to 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 Attempting to disable a plugin that is not enabled will have no effect |
void |
disablePlugins()
Disables all the loaded plugins |
void |
enablePlugin(Plugin plugin)
Enables the specified plugin Attempting to enable a plugin that is already enabled will have no effect |
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 Permissible s to the given default list, by op status |
Permission |
getPermission(String name)
Gets a Permission from 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 Permissible s to the given permission, by name |
Plugin |
getPlugin(String name)
Checks if the given plugin is loaded and returns it when applicable Please note that the name of the plugin is case-sensitive |
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 Please note that the name of the plugin is case-sensitive. |
Plugin |
loadPlugin(File file)
Loads the plugin in the specified file File must be valid according to the current enabled Plugin interfaces |
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(Permission perm)
Removes a Permission registration from this plugin manager. |
void |
removePermission(String name)
Removes a Permission registration from this plugin manager. |
void |
subscribeToDefaultPerms(boolean op,
Permissible permissible)
Subscribes to the given Default permissions by operator status If the specified defaults change in any form, the Permissible will be asked to recalculate. |
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 |
Method Detail |
---|
void registerInterface(Class<? extends PluginLoader> loader) throws IllegalArgumentException
loader
- Class name of the PluginLoader to register
IllegalArgumentException
- Thrown when the given Class is not a valid PluginLoaderPlugin getPlugin(String name)
name
- Name of the plugin to check
Plugin[] getPlugins()
boolean isPluginEnabled(String name)
name
- Name of the plugin to check
boolean isPluginEnabled(Plugin plugin)
plugin
- Plugin to check
Plugin loadPlugin(File file) throws InvalidPluginException, InvalidDescriptionException, UnknownDependencyException
file
- File containing the plugin to load
InvalidPluginException
- Thrown when the specified file is not a valid plugin
InvalidDescriptionException
- Thrown when the specified file contains an invalid description
UnknownDependencyException
- If a required dependency could not be resolvedPlugin[] loadPlugins(File directory)
directory
- Directory to check for plugins
void disablePlugins()
void clearPlugins()
void callEvent(Event event) throws IllegalStateException
event
- Event details
IllegalStateException
- Thrown when an asynchronous event is fired from synchronous code.void registerEvents(Listener listener, Plugin plugin)
listener
- Listener to registerplugin
- Plugin to registervoid registerEvent(Class<? extends Event> event, Listener listener, EventPriority priority, EventExecutor executor, Plugin plugin)
event
- Event type to registerlistener
- Listener to registerpriority
- Priority to register this event atexecutor
- EventExecutor to registerplugin
- Plugin to registervoid registerEvent(Class<? extends Event> event, Listener listener, EventPriority priority, EventExecutor executor, 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(Plugin plugin)
plugin
- Plugin to enablevoid disablePlugin(Plugin plugin)
plugin
- Plugin to disablePermission getPermission(String name)
Permission
from its fully qualified name
name
- Name of the permission
void addPermission(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 add
IllegalArgumentException
- Thrown when a permission with the same name already existsvoid removePermission(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 Permissible
s that have it.
perm
- Permission to removevoid removePermission(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 Permissible
s that have it.
name
- Permission to removeSet<Permission> getDefaultPermissions(boolean op)
op
- Which set of default permissions to get
void recalculatePermissionDefaults(Permission perm)
Permission
.
This will have no effect if the specified permission is not registered here.
perm
- Permission to recalculatevoid subscribeToPermission(String permission, Permissible permissible)
permission
- Permission to subscribe topermissible
- Permissible subscribingvoid unsubscribeFromPermission(String permission, Permissible permissible)
permission
- Permission to unsubscribe frompermissible
- Permissible subscribingSet<Permissible> getPermissionSubscriptions(String permission)
Permissible
s to the given permission, by name
permission
- Permission to query for
void subscribeToDefaultPerms(boolean op, Permissible permissible)
op
- Default list to subscribe topermissible
- Permissible subscribingvoid unsubscribeFromDefaultPerms(boolean op, Permissible permissible)
op
- Default list to unsubscribe frompermissible
- Permissible subscribingSet<Permissible> getDefaultPermSubscriptions(boolean op)
Permissible
s to the given default list, by op status
op
- Default list to query for
Set<Permission> getPermissions()
boolean useTimings()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |