From a502d96a860456ec5e8c96761db70f7cabb74751 Mon Sep 17 00:00:00 2001 From: Paul Martin <paul@paulsputer.com> Date: Sat, 30 Apr 2016 04:19:14 -0400 Subject: [PATCH] Merge pull request #1073 from gitblit/1062-DocEditorUpdates --- src/main/java/com/gitblit/manager/IPluginManager.java | 45 +++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 43 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/gitblit/manager/IPluginManager.java b/src/main/java/com/gitblit/manager/IPluginManager.java index 33763aa..d8fe0f8 100644 --- a/src/main/java/com/gitblit/manager/IPluginManager.java +++ b/src/main/java/com/gitblit/manager/IPluginManager.java @@ -20,6 +20,7 @@ import ro.fortsoft.pf4j.PluginState; import ro.fortsoft.pf4j.PluginWrapper; +import ro.fortsoft.pf4j.Version; import com.gitblit.models.PluginRegistry.InstallState; import com.gitblit.models.PluginRegistry.PluginRegistration; @@ -28,12 +29,22 @@ public interface IPluginManager extends IManager { /** + * Returns the system version. + * + * @return the system version + * @since 1.5.0 + */ + Version getSystemVersion(); + + /** * Starts all plugins. + * @since 1.5.0 */ void startPlugins(); /** * Stops all plugins. + * @since 1.5.0 */ void stopPlugins(); @@ -42,6 +53,7 @@ * * @param pluginId * @return the state of the plugin + * @since 1.5.0 */ PluginState startPlugin(String pluginId); @@ -50,6 +62,7 @@ * * @param pluginId * @return the state of the plugin + * @since 1.5.0 */ PluginState stopPlugin(String pluginId); @@ -58,6 +71,7 @@ * * @param type * @return a list of extensions the plugin provides + * @since 1.5.0 */ List<Class<?>> getExtensionClasses(String pluginId); @@ -66,6 +80,7 @@ * * @param type * @return a list of extension instances + * @since 1.5.0 */ <T> List<T> getExtensions(Class<T> type); @@ -73,6 +88,7 @@ * Returns the list of all resolved plugins. * * @return a list of resolved plugins + * @since 1.5.0 */ List<PluginWrapper> getPlugins(); @@ -81,6 +97,7 @@ * * @param pluginId * @return the plugin wrapper + * @since 1.5.0 */ PluginWrapper getPlugin(String pluginId); @@ -89,6 +106,7 @@ * * @param clazz extension point class to retrieve extension for * @return PluginWrapper that loaded the given class + * @since 1.5.0 */ PluginWrapper whichPlugin(Class<?> clazz); @@ -97,6 +115,7 @@ * * @param pluginId * @return true if successful + * @since 1.5.0 */ boolean disablePlugin(String pluginId); @@ -105,6 +124,7 @@ * * @param pluginId * @return true if successful + * @since 1.5.0 */ boolean enablePlugin(String pluginId); @@ -113,26 +133,44 @@ * * @param pluginId * @return true if successful + * @since 1.5.0 */ - boolean deletePlugin(String pluginId); + boolean uninstallPlugin(String pluginId); /** * Refresh the plugin registry. + * + * @param verifyChecksum + * @since 1.5.0 */ - boolean refreshRegistry(); + boolean refreshRegistry(boolean verifyChecksum); /** * Install the plugin from the specified url. * * @param url * @param verifyChecksum + * @since 1.5.0 */ boolean installPlugin(String url, boolean verifyChecksum) throws IOException; + + /** + * Upgrade the install plugin from the specified url. + * + * @param pluginId + * @param url + * @param verifyChecksum + * @return true if the upgrade has been successful + * @throws IOException + * @since 1.5.0 + */ + boolean upgradePlugin(String pluginId, String url, boolean verifyChecksum) throws IOException; /** * The list of all registered plugins. * * @return a list of registered plugins + * @since 1.5.0 */ List<PluginRegistration> getRegisteredPlugins(); @@ -141,6 +179,7 @@ * * @param state * @return the list of plugins that match the install state + * @since 1.5.0 */ List<PluginRegistration> getRegisteredPlugins(InstallState state); @@ -149,6 +188,7 @@ * * @param idOrName * @return a plugin registration or null + * @since 1.5.0 */ PluginRegistration lookupPlugin(String idOrName); @@ -158,6 +198,7 @@ * @param idOrName * @param version (use null for the current version) * @return the identified plugin version or null + * @since 1.5.0 */ PluginRelease lookupRelease(String idOrName, String version); } -- Gitblit v1.9.1