rearranged discoverer to dynamically update on demand
authorjprocter <Jim Procter>
Fri, 12 May 2006 16:00:21 +0000 (16:00 +0000)
committerjprocter <Jim Procter>
Fri, 12 May 2006 16:00:21 +0000 (16:00 +0000)
src/jalview/ws/Discoverer.java

index 8ff4184..557c7a5 100755 (executable)
@@ -144,9 +144,13 @@ public class Discoverer
       return urls;
     return null;
   }
-  static
-  {
 
+  /**
+   * fetch new services or reset to hardwired defaults depending on preferences.
+   */
+  static public void doDiscovery()
+  {
+    jalview.bin.Cache.log.debug("(Re)-Initialising the discovery URL list.");
     try
     {
       reallyDiscoverServices = jalview.bin.Cache.getDefault("DISCOVERY_START", false);
@@ -314,8 +318,18 @@ public class Discoverer
     firePropertyChange("services", oldServices, services);
   }
 
+  /**
+   * creates a new thread to call discoverServices()
+   */
   public void run()
   {
-    discoverServices();
+    final Discoverer discoverer = this;
+    Thread discoverThread = new Thread() {
+      public void run() {
+        discoverer.doDiscovery();
+        discoverer.discoverServices();
+      }
+    };
+    discoverThread.start();
   }
 }