[freenet-cvs] r19275 - in trunk/freenet/src/freenet: clients/http l10n pluginmanager

dbkr at freenetproject.org dbkr at freenetproject.org
Sun Apr 13 23:42:00 UTC 2008


Author: dbkr
Date: 2008-04-13 23:42:00 +0000 (Sun, 13 Apr 2008)
New Revision: 19275

Added:
   trunk/freenet/src/freenet/pluginmanager/FredPluginVersioned.java
Modified:
   trunk/freenet/src/freenet/clients/http/PproxyToadlet.java
   trunk/freenet/src/freenet/l10n/freenet.l10n.en.properties
   trunk/freenet/src/freenet/pluginmanager/PluginInfoWrapper.java
Log:
Add versioned plugin & version column in plugin toadlet.


Modified: trunk/freenet/src/freenet/clients/http/PproxyToadlet.java
===================================================================
--- trunk/freenet/src/freenet/clients/http/PproxyToadlet.java	2008-04-13 23:40:33 UTC (rev 19274)
+++ trunk/freenet/src/freenet/clients/http/PproxyToadlet.java	2008-04-13 23:42:00 UTC (rev 19275)
@@ -422,6 +422,7 @@
 			HTMLNode pluginTable = infoboxContent.addChild("table", "class", "plugins");
 			HTMLNode headerRow = pluginTable.addChild("tr");
 			headerRow.addChild("th", l10n("classNameTitle"));
+			headerRow.addChild("th", l10n("versionTitle"));
 			headerRow.addChild("th", l10n("internalIDTitle"));
 			headerRow.addChild("th", l10n("startedAtTitle"));
 			headerRow.addChild("th");
@@ -432,6 +433,7 @@
 				PluginInfoWrapper pi = (PluginInfoWrapper) it.next();
 				HTMLNode pluginRow = pluginTable.addChild("tr");
 				pluginRow.addChild("td", pi.getPluginClassName());
+				pluginRow.addChild("td", pi.getPluginVersion());
 				pluginRow.addChild("td", pi.getThreadName());
 				pluginRow.addChild("td", new Date(pi.getStarted()).toString());
 				if (pi.isStopping()) {

Modified: trunk/freenet/src/freenet/l10n/freenet.l10n.en.properties
===================================================================
--- trunk/freenet/src/freenet/l10n/freenet.l10n.en.properties	2008-04-13 23:40:33 UTC (rev 19274)
+++ trunk/freenet/src/freenet/l10n/freenet.l10n.en.properties	2008-04-13 23:42:00 UTC (rev 19275)
@@ -800,6 +800,7 @@
 PproxyToadlet.loadOtherPluginText=Here you can enter the URL of a plugin you want to load. Other plugins than the ones listed above are not even remotely supported or checked for privacy leaks by us, so if you load a remote plugin here, you are basically on your own.
 PproxyToadlet.loadOtherURLLabel=Plugin URL
 PproxyToadlet.noPlugins=No plugins loaded
+PproxyToadlet.noVersion=N/A
 PproxyToadlet.pluginNotFoundReload=The specified plugin could not be located in order to reload it.
 PproxyToadlet.pluginNotFoundReloadTitle=Plugin Not Found (reloading)
 PproxyToadlet.pluginUnloaded=Plugin unloaded
@@ -830,6 +831,7 @@
 PproxyToadlet.unloadPluginTitle=Unload plugin?
 PproxyToadlet.unloadPluginWithName=Are you sure you wish to unload ${name}?
 PproxyToadlet.unloadPurge=Remove plugin from cache
+PproxyToadlet.versionTitle=Version
 QueueToadlet.DUinProgress=Directory uploads in progress (${size})
 QueueToadlet.DinProgress=Downloads in progress (${size})
 QueueToadlet.UinProgress=Uploads in progress (${size})

Added: trunk/freenet/src/freenet/pluginmanager/FredPluginVersioned.java
===================================================================
--- trunk/freenet/src/freenet/pluginmanager/FredPluginVersioned.java	                        (rev 0)
+++ trunk/freenet/src/freenet/pluginmanager/FredPluginVersioned.java	2008-04-13 23:42:00 UTC (rev 19275)
@@ -0,0 +1,10 @@
+package freenet.pluginmanager;
+
+/**
+ * A Fred plugin that has a version
+ * @author dbkr
+ *
+ */
+public interface FredPluginVersioned {
+	public String getVersion();
+}

Modified: trunk/freenet/src/freenet/pluginmanager/PluginInfoWrapper.java
===================================================================
--- trunk/freenet/src/freenet/pluginmanager/PluginInfoWrapper.java	2008-04-13 23:40:33 UTC (rev 19274)
+++ trunk/freenet/src/freenet/pluginmanager/PluginInfoWrapper.java	2008-04-13 23:42:00 UTC (rev 19275)
@@ -3,6 +3,7 @@
 import java.util.Date;
 import java.util.HashSet;
 
+import freenet.l10n.L10n;
 import freenet.support.Logger;
 import freenet.support.StringArray;
 
@@ -21,6 +22,7 @@
 	private boolean isPortForwardPlugin;
 	private boolean isMultiplePlugin;
 	private boolean isFCPPlugin;
+	private boolean isVersionedPlugin;
 	private String filename;
 	private HashSet toadletLinks=new HashSet();
 	private boolean stopping = false;
@@ -41,6 +43,7 @@
 		isPortForwardPlugin = (plug instanceof FredPluginPortForward);
 		isMultiplePlugin = (plug instanceof FredPluginMultiple);
 		isFCPPlugin = (plug instanceof FredPluginFCP);
+		isVersionedPlugin = (plug instanceof FredPluginVersioned);
 	}
 
 	void setThread(Thread ps) {
@@ -66,6 +69,14 @@
 		return plug.getClass().getName();
 	}
 	
+	public String getPluginVersion() {
+		if (isVersionedPlugin) {
+			return ((FredPluginVersioned)plug).getVersion();
+		} else {
+			return L10n.getString("PproxyToadlet.noVersion");
+		}
+	}
+	
 	public synchronized String[] getPluginToadletSymlinks(){
 		return StringArray.toArray(toadletLinks.toArray());
 	}




More information about the cvs mailing list