Package net.md_5.bungee.api.plugin
Class PluginManager
java.lang.Object
net.md_5.bungee.api.plugin.PluginManager
Class to manage bridging between plugin duties and implementation duties, for
example event handling and plugin management.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescription<T extends Event>
TcallEvent
(T event) Dispatch an event to all subscribed listeners and return the event once it has been handled by these listeners.void
detectPlugins
(File folder) Load all plugins from the specified folder.boolean
dispatchCommand
(CommandSender sender, String commandLine) boolean
dispatchCommand
(CommandSender sender, String commandLine, List<String> tabResults) Execute a command if it is registered, else return false.void
Get an unmodifiable collection of all registered commands.Returns a loaded plugin identified by the specified name.Returns thePlugin
objects corresponding to all loaded plugins.boolean
isExecutableCommand
(String commandName, CommandSender sender) Checks if the command is registered and can possibly be executed by the sender (without taking permissions into account).void
void
registerCommand
(Plugin plugin, Command command) Register a command so that it may be executed.void
registerListener
(Plugin plugin, Listener listener) Register aListener
for receiving called events.void
unregisterCommand
(Command command) Unregister a command so it will no longer be executed.void
unregisterCommands
(Plugin plugin) Unregister all commands owned by aPlugin
void
unregisterListener
(Listener listener) Unregister aListener
so that the events do not reach it anymore.void
unregisterListeners
(Plugin plugin) Unregister all of a Plugin's listener.
-
Constructor Details
-
PluginManager
-
-
Method Details
-
registerCommand
Register a command so that it may be executed.- Parameters:
plugin
- the plugin owning this commandcommand
- the command to register
-
unregisterCommand
Unregister a command so it will no longer be executed.- Parameters:
command
- the command to unregister
-
unregisterCommands
Unregister all commands owned by aPlugin
- Parameters:
plugin
- the plugin to register the commands of
-
isExecutableCommand
Checks if the command is registered and can possibly be executed by the sender (without taking permissions into account).- Parameters:
commandName
- the name of the commandsender
- the sender executing the command- Returns:
- whether the command will be handled
-
dispatchCommand
-
dispatchCommand
Execute a command if it is registered, else return false.- Parameters:
sender
- the sender executing the commandcommandLine
- the complete command line including command name and argumentstabResults
- list to place tab results into. If this list is non null then the command will not be executed and tab results will be returned instead.- Returns:
- whether the command was handled
-
getPlugins
Returns thePlugin
objects corresponding to all loaded plugins.- Returns:
- the set of loaded plugins
-
getPlugin
Returns a loaded plugin identified by the specified name.- Parameters:
name
- of the plugin to retrieve- Returns:
- the retrieved plugin or null if not loaded
-
loadPlugins
public void loadPlugins() -
enablePlugins
public void enablePlugins() -
detectPlugins
Load all plugins from the specified folder.- Parameters:
folder
- the folder to search for plugins in
-
callEvent
Dispatch an event to all subscribed listeners and return the event once it has been handled by these listeners.- Type Parameters:
T
- the type bounds, must be a class which extends event- Parameters:
event
- the event to call- Returns:
- the called event
-
registerListener
Register aListener
for receiving called events. Methods in this Object which wish to receive events must be annotated with theEventHandler
annotation.- Parameters:
plugin
- the owning pluginlistener
- the listener to register events for
-
unregisterListener
Unregister aListener
so that the events do not reach it anymore.- Parameters:
listener
- the listener to unregister
-
unregisterListeners
Unregister all of a Plugin's listener.- Parameters:
plugin
- target plugin
-
getCommands
Get an unmodifiable collection of all registered commands.- Returns:
- commands
-