From d433fd3ab6185c2fb5eab998d1fcab4dd0940e5f Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Thu, 10 Apr 2014 19:01:30 -0400
Subject: [PATCH] Documentation
---
src/main/java/com/gitblit/manager/IPluginManager.java | 61 ++++++++++++++++++++++++++----
1 files changed, 52 insertions(+), 9 deletions(-)
diff --git a/src/main/java/com/gitblit/manager/IPluginManager.java b/src/main/java/com/gitblit/manager/IPluginManager.java
index 670e976..1f7f85e 100644
--- a/src/main/java/com/gitblit/manager/IPluginManager.java
+++ b/src/main/java/com/gitblit/manager/IPluginManager.java
@@ -17,17 +17,13 @@
import java.util.List;
+import ro.fortsoft.pf4j.PluginManager;
import ro.fortsoft.pf4j.PluginWrapper;
-public interface IPluginManager extends IManager {
+import com.gitblit.models.PluginRegistry.PluginRegistration;
+import com.gitblit.models.PluginRegistry.PluginRelease;
- /**
- * Retrieves the extension for given class 'clazz'.
- *
- * @param clazz extension point class to retrieve extension for
- * @return list of extensions
- */
- public <T> List<T> getExtensions(Class<T> clazz);
+public interface IPluginManager extends IManager, PluginManager {
/**
* Retrieves the {@link PluginWrapper} that loaded the given class 'clazz'.
@@ -35,5 +31,52 @@
* @param clazz extension point class to retrieve extension for
* @return PluginWrapper that loaded the given class
*/
- public PluginWrapper whichPlugin(Class<?> clazz);
+ PluginWrapper whichPlugin(Class<?> clazz);
+
+ /**
+ * Delete the plugin represented by {@link PluginWrapper}.
+ *
+ * @param wrapper
+ * @return true if successful
+ */
+ boolean deletePlugin(PluginWrapper wrapper);
+
+ /**
+ * Refresh the plugin registry.
+ */
+ boolean refreshRegistry();
+
+ /**
+ * Install the plugin from the specified url.
+ */
+ boolean installPlugin(String url);
+
+ /**
+ * Install the plugin.
+ */
+ boolean installPlugin(PluginRelease pr);
+
+ /**
+ * The list of all registered plugins.
+ *
+ * @return a list of registered plugins
+ */
+ List<PluginRegistration> getRegisteredPlugins();
+
+ /**
+ * Lookup a plugin registration from the plugin registries.
+ *
+ * @param idOrName
+ * @return a plugin registration or null
+ */
+ PluginRegistration lookupPlugin(String idOrName);
+
+ /**
+ * Lookup a plugin release.
+ *
+ * @param idOrName
+ * @param version (use null for the current version)
+ * @return the identified plugin version or null
+ */
+ PluginRelease lookupRelease(String idOrName, String version);
}
--
Gitblit v1.9.1