com.cliffblaster.game.api
Class PluginManager

java.lang.Object
  extended by com.cliffblaster.game.api.PluginManager

public class PluginManager
extends java.lang.Object

PluginManager for the entire server. Loads, unloads, destroys, and registers events for plug-ins.


Nested Class Summary
static class PluginManager.Status
           
 
Field Summary
static float API_VERSION
           
 
Constructor Summary
PluginManager(CliffBlasterServer server)
           
 
Method Summary
 void destroyPlugins()
           
 boolean dispatchEvent(Event evt)
          Dispatch an event.
 JavaPlugin getPlugin(java.lang.String name)
          Returns the desired plug-in by name if it exists, or null if it doesn't
 java.io.File getPluginDirectory()
           
 java.lang.String getPluginName(JavaPlugin plugin)
          Returns the plug-in's name if it exists, or null if it doesn't
 java.util.List<java.lang.String> getPlugins()
           
 Server getServer()
          Returns the server instance
 boolean isAlphaNumeric(java.lang.String s)
           
 void loadPlugins()
           
 RegisteredEvent registerEvent(Event.Type type, EventListener listener, JavaPlugin plugin, Event.Priority priority)
          Registers an event that the plug-in will listen to and returns a RegisteredEvent object.
 void reload()
          Reloads all plug-ins when called.
 PermissionRequestEvent requestPermission(ServerHandler caller, java.lang.String permission)
           
 boolean unload(JavaPlugin plugin)
          Unloads and destroys specified plug-in
 void unregisterEvent(RegisteredEvent event)
          Unregisters a RegisteredEvent from the event list and returns true if event was registered.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

API_VERSION

public static final float API_VERSION
See Also:
Constant Field Values
Constructor Detail

PluginManager

public PluginManager(CliffBlasterServer server)
Method Detail

isAlphaNumeric

public boolean isAlphaNumeric(java.lang.String s)

unload

public boolean unload(JavaPlugin plugin)
Unloads and destroys specified plug-in


reload

public void reload()
Reloads all plug-ins when called. Will unload all handlers previously registered.


registerEvent

public RegisteredEvent registerEvent(Event.Type type,
                                     EventListener listener,
                                     JavaPlugin plugin,
                                     Event.Priority priority)
Registers an event that the plug-in will listen to and returns a RegisteredEvent object. Priorities are the order in which an event will be called upon occurring.

Highest recommended is Event.HIGHEST, with Event.REALTIME reserved for mission critical plug-ins such as permission managers.


unregisterEvent

public void unregisterEvent(RegisteredEvent event)
Unregisters a RegisteredEvent from the event list and returns true if event was registered.


dispatchEvent

public boolean dispatchEvent(Event evt)
Dispatch an event.

Parameters:
evt -
Returns:
can continue

getServer

public Server getServer()
Returns the server instance


getPlugin

public JavaPlugin getPlugin(java.lang.String name)
Returns the desired plug-in by name if it exists, or null if it doesn't


getPluginName

public java.lang.String getPluginName(JavaPlugin plugin)
Returns the plug-in's name if it exists, or null if it doesn't


destroyPlugins

public void destroyPlugins()

loadPlugins

public void loadPlugins()

getPlugins

public java.util.List<java.lang.String> getPlugins()

getPluginDirectory

public java.io.File getPluginDirectory()

requestPermission

public PermissionRequestEvent requestPermission(ServerHandler caller,
                                                java.lang.String permission)