001 package com.valhalla.pluginmanager; 002 003 /** 004 * Defines the main plugin interface. This interface MUST be implemented by all JBother plugins. 005 * The plugin MUST have a file called "plugin.properties" somewhere in the jar, and this file MUST 006 * define mainClass to be a class that implements this interface, or the plugin will not work 007 * 008 * @author Adam Olsen 009 * @version 1.0 010 */ 011 public interface Plugin 012 { 013 /** 014 * This method will be called on the mainClass of the plugin at load time. 015 * This method is responsible for initializing the plugin and registering for different plugin 016 * events. 017 * @return returns true if the plugin loaded successfully, false if not 018 */ 019 public boolean init(); 020 021 /** 022 * This method will be called on the mainClass of the plugin to unload it. 023 * After this method is called the class should no longer be being used. 024 **/ 025 public void unload(); 026 }