001    // GraphLab Project: http://graphlab.sharif.edu
002    // Copyright (C) 2008 Mathematical Science Department of Sharif University of Technology
003    // Distributed under the terms of the GNU General Public License (GPL): http://www.gnu.org/licenses/
004    package graphlab.platform.plugin;
005    
006    import graphlab.platform.core.BlackBoard;
007    
008    /**
009     * @author Reza Mohammadi
010     */
011    public interface PluginHandlerInterface {
012    
013        /**
014         * Default "child plugin" initializer.
015         * "child plugin" = a plugin that depends on "THE Pluggin"
016         * "THE Pluggin" = Plugin that is implementing this interface
017         * and has graphlab.gui.plugin.<i>pluginname</i>.HandlerInit
018         *
019         * @param path       path of config file. if your config file
020         *                   is in the jar file and in directory "/plugin/config/"
021         *                   and it's name is "config.xml", you should set "plugin-configxml"
022         *                   to "/plugin/config/config.xml"
023         * @param blackboard blackboard of GraphLab instance
024         * @see PluginInterface#init(graphlab.platform.core.BlackBoard)
025         */
026        public void init(String path, BlackBoard blackboard);
027    }