diff options
author | Dinnerbone <dinnerbone@dinnerbone.com> | 2010-12-24 13:06:44 +0000 |
---|---|---|
committer | Dinnerbone <dinnerbone@dinnerbone.com> | 2010-12-24 13:06:44 +0000 |
commit | 231c037142ffb74d3b0eea741b633312ec660c70 (patch) | |
tree | 4ffa3e5c81b5283f70fba53a0cf9b03350fa0f72 | |
parent | 3f46b28753092e86f7cdb5037a3b7f46c738affd (diff) | |
download | bukkit-231c037142ffb74d3b0eea741b633312ec660c70.tar bukkit-231c037142ffb74d3b0eea741b633312ec660c70.tar.gz bukkit-231c037142ffb74d3b0eea741b633312ec660c70.tar.lz bukkit-231c037142ffb74d3b0eea741b633312ec660c70.tar.xz bukkit-231c037142ffb74d3b0eea741b633312ec660c70.zip |
Few additions to Plugin for retrieving the Server and PluginLoader responsible for the plugin
-rw-r--r-- | src/org/bukkit/plugin/Plugin.java | 33 | ||||
-rw-r--r-- | src/org/bukkit/plugin/PluginManager.java | 3 |
2 files changed, 35 insertions, 1 deletions
diff --git a/src/org/bukkit/plugin/Plugin.java b/src/org/bukkit/plugin/Plugin.java index 78cb7dc6..ba781ce2 100644 --- a/src/org/bukkit/plugin/Plugin.java +++ b/src/org/bukkit/plugin/Plugin.java @@ -1,11 +1,44 @@ package org.bukkit.plugin; +import org.bukkit.Server; + /** * Represents a plugin */ public abstract class Plugin { private boolean isEnabled = false; + private final PluginLoader loader; + private final Server server; + + /** + * Constructs a new plugin instance + * + * @param pluginLoader PluginLoader that is responsible for this plugin + * @param instance Server instance that is running this plugin + */ + protected Plugin(PluginLoader pluginLoader, Server instance) { + loader = pluginLoader; + server = instance; + } + + /** + * Gets the associated PluginLoader responsible for this plugin + * + * @return PluginLoader that controls this plugin + */ + protected final PluginLoader getPluginLoader() { + return loader; + } + + /** + * Returns the Server instance currently running this plugin + * + * @return Server running this plugin + */ + public final Server getServer() { + return server; + } /** * Returns a value indicating whether or not this plugin is currently enabled diff --git a/src/org/bukkit/plugin/PluginManager.java b/src/org/bukkit/plugin/PluginManager.java index 11854407..de710414 100644 --- a/src/org/bukkit/plugin/PluginManager.java +++ b/src/org/bukkit/plugin/PluginManager.java @@ -26,8 +26,9 @@ public final class PluginManager { * Registers the specified plugin loader * * @param loader Class name of the PluginLoader to register + * @throws IllegalArgumentException Thrown when the given Class is not a valid PluginLoader */ - public void RegisterInterface(Class loader) { + public void RegisterInterface(Class loader) throws IllegalArgumentException { PluginLoader instance; if (PluginLoader.class.isAssignableFrom(loader)) { |