Author: dbkr
Date: 2006-03-05 16:49:31 +0000 (Sun, 05 Mar 2006)
New Revision: 8166

Modified:
   trunk/freenet/src/freenet/node/Version.java
   trunk/freenet/src/freenet/pluginmanager/PluginManager.java
Log:
498: Fix for saving loaded plugins to config file.


Modified: trunk/freenet/src/freenet/node/Version.java
===================================================================
--- trunk/freenet/src/freenet/node/Version.java 2006-03-05 00:37:31 UTC (rev 
8165)
+++ trunk/freenet/src/freenet/node/Version.java 2006-03-05 16:49:31 UTC (rev 
8166)
@@ -20,7 +20,7 @@
        public static final String protocolVersion = "1.0";

        /** The build number of the current revision */
-       private static final int buildNumber = 497;
+       private static final int buildNumber = 498;

        /** Oldest build of Fred we will talk to */
        private static final int lastGoodBuild = 475;

Modified: trunk/freenet/src/freenet/pluginmanager/PluginManager.java
===================================================================
--- trunk/freenet/src/freenet/pluginmanager/PluginManager.java  2006-03-05 
00:37:31 UTC (rev 8165)
+++ trunk/freenet/src/freenet/pluginmanager/PluginManager.java  2006-03-05 
16:49:31 UTC (rev 8166)
@@ -69,14 +69,7 @@
                pmconfig.register("loadplugin", null, 9, true, "Plugins to load 
on startup ", "Classpath, name and location for plugins to load when node 
starts up", 
                        new StringArrCallback() {
                                        public String get() {
-                                               StringBuffer out = new 
StringBuffer();
-                                               Iterator it = 
getPlugins().iterator();
-                                               if (it.hasNext())
-                                                       
out.append(StringArrOption.encode(((PluginInfoWrapper)it.next()).getFilename()));
-                                               while (it.hasNext())
-                                                       
out.append(StringArrOption.delimiter + 
StringArrOption.encode(((PluginInfoWrapper)it.next()).getFilename()));
-                                               System.err.println("asdasd : "+ 
out.toString());
-                                               return out.toString();
+                                               return getConfigLoadString();
                                        }
                                        public void set(String val) throws 
InvalidConfigValueException {
                                                //if(storeDir.equals(new 
File(val))) return;
@@ -100,7 +93,23 @@
                */
        }

+       private String getConfigLoadString() {
+               StringBuffer out = new StringBuffer();
+               Iterator it = getPlugins().iterator();
+               if (it.hasNext())
+                       
out.append(StringArrOption.encode(((PluginInfoWrapper)it.next()).getFilename()));
+               while (it.hasNext())
+                       out.append(StringArrOption.delimiter + 
StringArrOption.encode(((PluginInfoWrapper)it.next()).getFilename()));
+               
+               return out.toString();
+       }
+       
        private void saveConfig() {
+               try {
+                       pmconfig.set("loadplugin", this.getConfigLoadString());
+               } catch (InvalidConfigValueException e) {
+                       Logger.error(this, "Failed to marshal plugin list to 
config file!");
+               }
                node.config.store();
        }

@@ -300,7 +309,6 @@
                }


-               
                cls = cl.loadClass(realClass);

             } catch (Exception e) {


Reply via email to