                                                                                                                /*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package open.dolphin.plugin;

/**
 *
 * @author
 */
public interface IPlugin {

    /**
     *
     */
    enum Type {

        /**
         *
         */
        toolmenu,
        /**
         *
         */
        panel,
        /**
         *
         */
        container
    }

    /**
     *
     */
    enum Command {

        /**
         *
         */
        getType,
        /**
         *
         */
        getName,
        /**
         *
         */
        getReadableName,
        /**
         *
         */
        getFlavor,
        /**
         *
         */
        drop,
        /**
         *
         */
        panel,
        /**
         *
         */
        update,
        /**
         *
         */
        execute,
        /**
         *
         */
        configure,
        /**
         *
         */
        messaging
    };

    /**
     *
     * @param command
     * @param request
     * @param response
     * @return
     */
    public boolean dispatchCommand(IPlugin.Command command, Object[] request, Object[] response);
}
