From 94cc9f05f58557001d701290c8c7c422a382d23f Mon Sep 17 00:00:00 2001 From: "(no author)" <(no author)@6c8d7289-2bf4-0310-a012-ef5d649a1542> Date: Sat, 2 Jun 2007 15:25:13 +0000 Subject: [PATCH] *) Improvements for restart via update wrapper git-svn-id: https://svn.berlios.de/svnroot/repos/yacy/trunk@3785 6c8d7289-2bf4-0310-a012-ef5d649a1542 --- htroot/Steering.java | 6 +++--- source/de/anomic/plasma/plasmaSwitchboard.java | 12 +++++++++--- source/de/anomic/server/serverUpdaterCallback.java | 1 + 3 files changed, 13 insertions(+), 6 deletions(-) diff --git a/htroot/Steering.java b/htroot/Steering.java index 8e13bb678..4d6b724de 100644 --- a/htroot/Steering.java +++ b/htroot/Steering.java @@ -73,7 +73,7 @@ public class Steering { } if (post.containsKey("shutdown")) { - if (sb.updaterCallback != null) { sb.updaterCallback.signalYaCyShutdown(); } + if (sb.updaterCallback != null) { sb.setConfig("Updater.restartSignal", 0); } sb.terminate(3000); prop.put("info", 3); return prop; @@ -94,9 +94,9 @@ public class Steering { } if (sb.updaterCallback != null) { - sb.updaterCallback.signalYaCyRestart(); + sb.setConfig("Updater.shutdownSignal", 1); } else { - serverLog.logWarning("SHUTDOWN", "ERROR: no wrapper/updater running! Performing a normal shutdown..."); + serverLog.logWarning("SHUTDOWN", "No wrapper/updater running! Performing a normal shutdown..."); } sb.terminate(5000); diff --git a/source/de/anomic/plasma/plasmaSwitchboard.java b/source/de/anomic/plasma/plasmaSwitchboard.java index 72583f012..0c153814e 100644 --- a/source/de/anomic/plasma/plasmaSwitchboard.java +++ b/source/de/anomic/plasma/plasmaSwitchboard.java @@ -1679,8 +1679,14 @@ public final class plasmaSwitchboard extends serverAbstractSwitch implements ser errorURL.close(); wordIndex.close(); yc.close(); - // signal shudown to the updater - if (updaterCallback != null) updaterCallback.signalYaCyShutdown(); + // signal shutdown to the updater + if (updaterCallback != null) { + if (sb.getConfigLong("Updater.shutdownSignal", -1) == 0) + updaterCallback.signalYaCyShutdown(); + else if + (sb.getConfigLong("Updater.shutdownSignal", -1) == 1) + updaterCallback.signalYaCyRestart(); + } log.logConfig("SWITCHBOARD SHUTDOWN TERMINATED"); } @@ -1691,7 +1697,7 @@ public final class plasmaSwitchboard extends serverAbstractSwitch implements ser public void enQueue(Object job) { if (!(job instanceof plasmaSwitchboardQueue.Entry)) { - System.out.println("internal error at plasmaSwitchboard.enQueue: wrong job type"); + System.out.println("Internal error at plasmaSwitchboard.enQueue: wrong job type"); System.exit(0); } try { diff --git a/source/de/anomic/server/serverUpdaterCallback.java b/source/de/anomic/server/serverUpdaterCallback.java index 597ea4b54..3cbcd97e1 100644 --- a/source/de/anomic/server/serverUpdaterCallback.java +++ b/source/de/anomic/server/serverUpdaterCallback.java @@ -6,6 +6,7 @@ public interface serverUpdaterCallback { public String getYaCyUpdateReleaseVersion(); //public File getYaCyUpdateReleaseFile(); public String getYaCyUpdateSource(); + /** Signal a user initiated YaCy shutdown (not restart!) to the updater so it can terminate itself */ public void signalYaCyShutdown(); public void signalYaCyRestart(); } \ No newline at end of file