Author: nextgens
Date: 2006-08-04 22:45:55 +0000 (Fri, 04 Aug 2006)
New Revision: 9890

Modified:
   trunk/freenet/src/freenet/node/Node.java
   trunk/freenet/src/freenet/node/updater/NodeUpdater.java
   trunk/freenet/src/freenet/node/updater/UpdaterEnabledCallback.java
Log:
nodes not running within the wrapper should NOT use the update-over-freenet 
mechanism

Modified: trunk/freenet/src/freenet/node/Node.java
===================================================================
--- trunk/freenet/src/freenet/node/Node.java    2006-08-04 21:14:16 UTC (rev 
9889)
+++ trunk/freenet/src/freenet/node/Node.java    2006-08-04 22:45:55 UTC (rev 
9890)
@@ -945,7 +945,7 @@
        }

        public boolean isUsingWrapper(){
-               if(nodeStarter!=null)
+               if(nodeStarter!=null && 
WrapperManager.isControlledByNativeWrapper())
                        return true;
                else 
                        return false;

Modified: trunk/freenet/src/freenet/node/updater/NodeUpdater.java
===================================================================
--- trunk/freenet/src/freenet/node/updater/NodeUpdater.java     2006-08-04 
21:14:16 UTC (rev 9889)
+++ trunk/freenet/src/freenet/node/updater/NodeUpdater.java     2006-08-04 
22:45:55 UTC (rev 9890)
@@ -164,7 +164,15 @@
        private volatile Object updateSync = new Object();

        public synchronized void Update() {
+               
+               if(!WrapperManager.isControlledByNativeWrapper()) {
+                       Logger.error(this, "Cannot update because not running 
under wrapper");
+                       System.err.println("Cannot update because not running 
under wrapper");
+                       return;
+               }
+               
                if(!isRunning) return;
+               
                synchronized(updateSync) {
                        innerUpdate();
                }
@@ -215,12 +223,6 @@
                        if((File.separatorChar == '\\') || 
(System.getProperty("os.name").toLowerCase().startsWith("win"))) {
                                nastyRestart = true;

-                               
if(!WrapperManager.isControlledByNativeWrapper()) {
-                                       Logger.error(this, "Cannot update 
because not running under wrapper");
-                                       System.err.println("Cannot update 
because not running under wrapper");
-                                       return;
-                               }
-                               
                                Properties p = WrapperManager.getProperties();
                                String cp1 = 
p.getProperty("wrapper.java.classpath.1");
                                if(cp1 == null) {
@@ -271,12 +273,6 @@
                        } else {
                                // Hard way.

-                               
if(!WrapperManager.isControlledByNativeWrapper()) {
-                                       Logger.error(this, "Cannot update 
because not running under wrapper");
-                                       System.err.println("Cannot update 
because not running under wrapper");
-                                       return;
-                               }
-
                                try {

                                        File oldConfig = new 
File("wrapper.conf");
@@ -533,7 +529,7 @@
        public static NodeUpdater maybeCreate(Node node, Config config) throws 
Exception {
         SubConfig updaterConfig = new SubConfig("node.updater", config);

-        updaterConfig.register("enabled", true, 1, true, "Check for, and 
download new versions",
+        updaterConfig.register("enabled", 
WrapperManager.isControlledByNativeWrapper(), 1, true, "Check for, and download 
new versions",
                        "Should your node automatically check for new versions 
of Freenet. If yes, new versions will be automatically detected and downloaded, 
but not necessarily installed.",
                        new UpdaterEnabledCallback(node, config));


Modified: trunk/freenet/src/freenet/node/updater/UpdaterEnabledCallback.java
===================================================================
--- trunk/freenet/src/freenet/node/updater/UpdaterEnabledCallback.java  
2006-08-04 21:14:16 UTC (rev 9889)
+++ trunk/freenet/src/freenet/node/updater/UpdaterEnabledCallback.java  
2006-08-04 22:45:55 UTC (rev 9890)
@@ -1,5 +1,7 @@
 package freenet.node.updater;

+import org.tanukisoftware.wrapper.WrapperManager;
+
 import freenet.config.BooleanCallback;
 import freenet.config.Config;
 import freenet.config.InvalidConfigValueException;
@@ -18,13 +20,17 @@
        }

        public boolean get() {
-               if(node.nodeUpdater==null)
+               if((node.nodeUpdater==null) || 
(!WrapperManager.isControlledByNativeWrapper()))
                        return false;
                else 
                        return node.nodeUpdater.isRunning();
        }

        public void set(boolean val) throws InvalidConfigValueException {
+               if((val == true) && 
(!WrapperManager.isControlledByNativeWrapper())) {
+                       Logger.error(this, "Cannot update because not running 
under wrapper");
+                       throw new InvalidConfigValueException("Cannot update 
because not running under wrapper");
+               }
                synchronized (node) {
                        if(val == get()) return;
                        if(val){


Reply via email to