Merge branch 'develop' into patch/JAL-4110_stdout_for_tests
[jalview.git] / src / jalview / bin / Cache.java
index 5741908..1abb171 100755 (executable)
@@ -141,6 +141,10 @@ import jalview.ws.sifts.SiftsSettings;
  * <li>WRAP_ALIGNMENT</li>
  * <li>EPS_RENDERING (Prompt each time|Lineart|Text) default for EPS rendering
  * style check</li>
+ * <li>BITMAP_SCALE - scale factor for PNG export - default 0.0 - native
+ * resolution</li>
+ * <li>BITMAP_HEIGHT - height bound for PNG export or 0 for unbound</li>
+ * <li>BITMAP_WIDTH - width bound for PNG export or 0 for unbound</li>
  * <li>SORT_ALIGNMENT (No sort|Id|Pairwise Identity)</li>
  * <li>SEQUENCE_LINKS list of name|URL pairs for opening a url with
  * $SEQUENCE_ID$</li>
@@ -407,9 +411,9 @@ public class Cache
           fis = new URL(propertiesFile).openStream();
           if (!Jalview.quiet())
           {
-            System.out.println(
+            jalview.bin.Console.outPrintln(
                     "Loading jalview properties from : " + propertiesFile);
-            System.out.println(
+            jalview.bin.Console.outPrintln(
                     "Disabling Jalview writing to user's local properties file.");
           }
           propsAreReadOnly = true;
@@ -440,7 +444,8 @@ public class Cache
       } catch (Exception ex)
       {
         if (!Jalview.quiet())
-          System.out.println("Error reading properties file: " + ex);
+          jalview.bin.Console
+                  .outPrintln("Error reading properties file: " + ex);
       }
     }
 
@@ -497,7 +502,8 @@ public class Cache
     } catch (Exception ex)
     {
       if (!Jalview.quiet())
-        System.out.println("Error reading author details: " + ex);
+        jalview.bin.Console
+                .outPrintln("Error reading author details: " + ex);
       authorDetails = null;
     }
     if (authorDetails == null)
@@ -583,10 +589,10 @@ public class Cache
             {
               if (!Jalview.quiet())
               {
-                System.out.println(
+                jalview.bin.Console.errPrintln(
                         "Non-fatal exception when checking version at "
                                 + remoteBuildPropertiesUrl + ":");
-                System.out.println(ex);
+                jalview.bin.Console.printStackTrace(ex);
               }
               remoteVersion = getProperty("VERSION");
             }
@@ -636,8 +642,8 @@ public class Cache
         url = Cache.class.getResource(resourcePath).toString();
       } catch (Exception ex)
       {
-        System.err.println("Failed to resolve resource " + resourcePath
-                + ": " + ex.getMessage());
+        jalview.bin.Console.errPrintln("Failed to resolve resource "
+                + resourcePath + ": " + ex.getMessage());
       }
     }
     else
@@ -687,7 +693,8 @@ public class Cache
     } catch (Exception ex)
     {
       if (!Jalview.quiet())
-        System.out.println("Error reading build details: " + ex);
+        jalview.bin.Console
+                .outPrintln("Error reading build details: " + ex);
       applicationProperties.remove("VERSION");
     }
     String codeVersion = getProperty("VERSION");
@@ -707,8 +714,9 @@ public class Cache
     new BuildDetails(codeVersion, null, codeInstallation);
     if (printVersion && reportVersion)
     {
-      System.out.println(ChannelProperties.getProperty("app_name")
-              + " version: " + codeVersion + codeInstallation);
+      jalview.bin.Console
+              .outPrintln(ChannelProperties.getProperty("app_name")
+                      + " version: " + codeVersion + codeInstallation);
     }
   }
 
@@ -784,8 +792,27 @@ public class Cache
       } catch (NumberFormatException e)
       {
         if (!Jalview.quiet())
-          System.out.println("Error parsing int property '" + property
-                  + "' with value '" + string + "'");
+          jalview.bin.Console.errPrintln("Error parsing int property '"
+                  + property + "' with value '" + string + "'");
+      }
+    }
+
+    return def;
+  }
+
+  public static float getDefault(String property, float def)
+  {
+    String string = getProperty(property);
+    if (string != null)
+    {
+      try
+      {
+        def = Float.parseFloat(string);
+      } catch (NumberFormatException e)
+      {
+        if (!Jalview.quiet())
+          jalview.bin.Console.errPrintln("Error parsing float property '"
+                  + property + "' with value '" + string + "'");
       }
     }
 
@@ -835,7 +862,7 @@ public class Cache
     } catch (Exception ex)
     {
       if (!Jalview.quiet())
-        System.out.println(
+        jalview.bin.Console.errPrintln(
                 "Error setting property: " + key + " " + obj + "\n" + ex);
     }
     return oldValue;
@@ -867,7 +894,7 @@ public class Cache
       } catch (Exception ex)
       {
         if (!Jalview.quiet())
-          System.out.println("Error saving properties: " + ex);
+          jalview.bin.Console.errPrintln("Error saving properties: " + ex);
       }
     }
   }
@@ -1057,8 +1084,9 @@ public class Cache
         return date_format.parse(val);
       } catch (Exception ex)
       {
-        System.err.println("Invalid or corrupt date in property '"
-                + propertyName + "' : value was '" + val + "'");
+        jalview.bin.Console
+                .errPrintln("Invalid or corrupt date in property '"
+                        + propertyName + "' : value was '" + val + "'");
       }
     }
     return null;
@@ -1081,8 +1109,8 @@ public class Cache
         return Integer.valueOf(val);
       } catch (NumberFormatException x)
       {
-        System.err.println("Invalid integer in property '" + property
-                + "' (value was '" + val + "')");
+        jalview.bin.Console.errPrintln("Invalid integer in property '"
+                + property + "' (value was '" + val + "')");
       }
     }
     return null;
@@ -1146,7 +1174,8 @@ public class Cache
       } catch (Exception ex)
       {
         if (!Jalview.quiet())
-          System.out.println("Error loading User ColourFile\n" + ex);
+          jalview.bin.Console
+                  .outPrintln("Error loading User ColourFile\n" + ex);
       }
     }
     if (!files.equals(coloursFound.toString()))
@@ -1652,8 +1681,9 @@ public class Cache
       return null;
     if (!file.exists())
     {
-      System.err.println("Could not load bootstrap preferences file '"
-              + filename + "'");
+      jalview.bin.Console
+              .errPrintln("Could not load bootstrap preferences file '"
+                      + filename + "'");
       return null;
     }
 
@@ -1669,11 +1699,12 @@ public class Cache
       }
     } catch (FileNotFoundException e)
     {
-      System.err.println("Could not find bootstrap preferences file '"
-              + file.getAbsolutePath() + "'");
+      jalview.bin.Console
+              .errPrintln("Could not find bootstrap preferences file '"
+                      + file.getAbsolutePath() + "'");
     } catch (IOException e)
     {
-      System.err.println(
+      jalview.bin.Console.errPrintln(
               "IOException when loading bootstrap preferences file '"
                       + file.getAbsolutePath() + "'");
     }