diff --git a/source/de/anomic/plasma/plasmaSwitchboard.java b/source/de/anomic/plasma/plasmaSwitchboard.java index 318a03fbf..51981e799 100644 --- a/source/de/anomic/plasma/plasmaSwitchboard.java +++ b/source/de/anomic/plasma/plasmaSwitchboard.java @@ -159,6 +159,7 @@ import de.anomic.server.serverObjects; import de.anomic.server.serverSemaphore; import de.anomic.server.serverSwitch; import de.anomic.server.serverThread; +import de.anomic.server.serverUpdaterCallback; import de.anomic.server.logging.serverLog; import de.anomic.tools.crypt; import de.anomic.yacy.yacyClient; @@ -276,6 +277,11 @@ public final class plasmaSwitchboard extends serverAbstractSwitch implements ser private serverSemaphore shutdownSync = new serverSemaphore(0); private boolean terminate = false; + /** + * Reference to the Updater callback class + */ + public serverUpdaterCallback updaterCallback = null; + //private Object crawlingPausedSync = new Object(); //private boolean crawlingIsPaused = false; diff --git a/source/yacy.java b/source/yacy.java index 3ab62a78b..c054d0100 100644 --- a/source/yacy.java +++ b/source/yacy.java @@ -87,7 +87,9 @@ import de.anomic.server.serverCore; import de.anomic.server.serverDate; import de.anomic.server.serverFileUtils; import de.anomic.server.serverMemory; +import de.anomic.server.serverSemaphore; import de.anomic.server.serverSystem; +import de.anomic.server.serverUpdaterCallback; import de.anomic.server.logging.serverLog; import de.anomic.tools.enumerateFiles; import de.anomic.yacy.yacyClient; @@ -139,6 +141,7 @@ public final class yacy { private static final String copyright = "[ YaCy v" + vString + ", build " + vDATE + " by Michael Christen / www.yacy.net ]"; private static final String hline = "-------------------------------------------------------------------------------"; + static serverSemaphore sbSync = new serverSemaphore(0); static plasmaSwitchboard sb = null; /** @@ -256,6 +259,7 @@ public final class yacy { */ sb = new plasmaSwitchboard(homePath, "yacy.init", "DATA/SETTINGS/httpProxy.conf"); + sbSync.V(); // signal that the sb reference was set // save information about available memory at startup time sb.setConfig("memoryFreeAfterStartup", startupMemFree); @@ -519,6 +523,17 @@ public final class yacy { } } + /** + * Function to set the updater callback class + * @param updaterCallback + * @throws InterruptedException + */ + public static void setUpdaterCallback(serverUpdaterCallback updaterCallback) throws InterruptedException { + sbSync.P(); + sb.updaterCallback = updaterCallback; + sbSync.V(); + } + /** * Call the shutdown-page of YaCy to tell it to shut down. This method is * called if you start yacy with the argument -shutdown.