documented privacy settings, versioncheck controlled by property, fixed potential...
authorjprocter <Jim Procter>
Tue, 13 Oct 2009 15:08:37 +0000 (15:08 +0000)
committerjprocter <Jim Procter>
Tue, 13 Oct 2009 15:08:37 +0000 (15:08 +0000)
src/jalview/bin/Cache.java

index 4d30748..caf6bc1 100755 (executable)
@@ -82,7 +82,7 @@ import org.biojava.dasobert.dasregistry.Das1Source;
  * service</li>
  * <li>QUESTIONNAIRE last questionnaire:responder id string from questionnaire
  * service</li>
- * <li>USAGESTATS (true) Enable google analytics tracker for collecting usage
+ * <li>USAGESTATS (false - user prompted) Enable google analytics tracker for collecting usage
  * statistics</li>
  * <li>DAS_LOCAL_SOURCE list of local das sources</li>
  * <li>SHOW_OVERVIEW boolean for overview window display</li>
@@ -103,6 +103,7 @@ import org.biojava.dasobert.dasregistry.Das1Source;
  * <li>DAS_ACTIVE_SOURCE list of active sources</li>
  * <li>SHOW_MEMUSAGE boolean show memory usage and warning indicator on desktop
  * (false)</li>
+ * <li>VERSION_CHECK (true) check for the latest release version from www.jalview.org</li>
  * <li>SHOW_NPFEATS_TOOLTIP (true) show non-positional features in the Sequence
  * ID tooltip</li>
  * <li>SHOW_DBREFS_TOOLTIP (true) show Database Cross References in the Sequence
@@ -111,7 +112,8 @@ import org.biojava.dasobert.dasregistry.Das1Source;
  * displayed as '.'</li>
  * <li>SORT_BY_TREE (false) sort the current alignment view according to the
  * order of a newly displayed tree</li>
- * <li>DBFETCH_USEPICR (false) use PICR to recover valid DB references from sequence ID strings before attempting retrieval from any datasource
+ * <li>DBFETCH_USEPICR (false) use PICR to recover valid DB references from sequence ID strings before attempting retrieval from any datasource</li>
+ * <li>
  * </li>
  * 
  * <li></li>
@@ -159,6 +161,8 @@ public class Cache
   {
     try
     {
+      // TODO: redirect stdout and stderr here in order to grab the output of the log
+      
       ConsoleAppender ap = new ConsoleAppender(new SimpleLayout(),
               "System.err");
       ap.setName("JalviewLogger");
@@ -260,6 +264,7 @@ public class Cache
     // jnlpVersion will be null if we're using InstallAnywhere
     // Dont do this check if running in headless mode
     if (jnlpVersion == null
+            && getDefault("VERSION_CHECK",true)
             && (System.getProperty("java.awt.headless") == null || System
                     .getProperty("java.awt.headless").equals("false")))
     {
@@ -406,7 +411,18 @@ public class Cache
     }
     return obj;
   }
-
+  /**
+   * remove the specified property from the jalview properties file
+   * @param string
+   */
+  public static void removeProperty(String string)
+  {
+    applicationProperties.remove(string);
+    saveProperties();
+  }
+  /**
+   * save the properties to the jalview properties path
+   */
   public static void saveProperties()
   {
     try
@@ -489,7 +505,10 @@ public class Cache
           // Tell the user that debug is enabled
           lgclient.debug("Jalview Groovy Client Debugging Output Follows.");
         }
-      } catch (Exception e)
+      } catch (Error e) {
+        groovyJarsArePresent = 0;
+        jalview.bin.Cache.log.debug("Groovy Classes are not present",e);
+      }catch (Exception e)
       {
         groovyJarsArePresent = 0;
         jalview.bin.Cache.log.debug("Groovy Classes are not present");
@@ -497,7 +516,6 @@ public class Cache
     }
     return (groovyJarsArePresent > 0);
   }
-
   /**
    * generate Das1Sources from the local das source list
    * 
@@ -644,4 +662,5 @@ public class Cache
       }
     }
   }
+
 }