X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fbin%2FCache.java;h=3c919cb4d2f76b4083ef05177e1315b84320ea9e;hb=3da878124135ff033f42d19d8733891b09e953cd;hp=dc5084347e9bc01cab00b33cf6a8a44479085053;hpb=3d0101179759ef157b088ea135423cd909512d9f;p=jalview.git
diff --git a/src/jalview/bin/Cache.java b/src/jalview/bin/Cache.java
index dc50843..3c919cb 100755
--- a/src/jalview/bin/Cache.java
+++ b/src/jalview/bin/Cache.java
@@ -28,8 +28,7 @@ import jalview.schemes.UserColourScheme;
import jalview.structure.StructureImportSettings;
import jalview.urls.IdOrgSettings;
import jalview.util.ColorUtils;
-import jalview.ws.dbsources.das.api.DasSourceRegistryI;
-import jalview.ws.dbsources.das.datamodel.DasSourceRegistry;
+import jalview.util.Platform;
import jalview.ws.sifts.SiftsSettings;
import java.awt.Color;
@@ -116,7 +115,6 @@ import org.apache.log4j.SimpleLayout;
* service
*
USAGESTATS (false - user prompted) Enable google analytics tracker for
* collecting usage statistics
- * DAS_LOCAL_SOURCE list of local das sources
* SHOW_OVERVIEW boolean for overview window display
* ANTI_ALIAS boolean for smooth fonts
* RIGHT_ALIGN_IDS boolean
@@ -136,9 +134,7 @@ import org.apache.log4j.SimpleLayout;
* sequence id (must be in SEQUENCE_LINKS or STORED_LINKS)
* GROUP_LINKS list of name|URL[|<separator>] tuples - see
* jalview.utils.GroupURLLink for more info
- * DAS_REGISTRY_URL the registry to query
* DEFAULT_BROWSER for unix
- * DAS_ACTIVE_SOURCE list of active sources
* SHOW_MEMUSAGE boolean show memory usage and warning indicator on desktop
* (false)
* VERSION_CHECK (true) check for the latest release version from
@@ -228,12 +224,6 @@ public class Cache
*/
public static final String JALVIEWLOGLEVEL = "logs.Jalview.level";
- public static final String DAS_LOCAL_SOURCE = "DAS_LOCAL_SOURCE";
-
- public static final String DAS_REGISTRY_URL = "DAS_REGISTRY_URL";
-
- public static final String DAS_ACTIVE_SOURCE = "DAS_ACTIVE_SOURCE";
-
/**
* Sifts settings
*/
@@ -281,14 +271,15 @@ public class Cache
@Override
public synchronized Enumeration keys()
{
- return Collections.enumeration(new TreeSet(super.keySet()));
+ return Collections.enumeration(new TreeSet<>(super.keySet()));
}
};
/** Default file is ~/.jalview_properties */
static String propertiesFile;
- private static boolean propsAreReadOnly = false;
+ private static boolean propsAreReadOnly = /** @j2sNative true || */
+ false;
public static void initLogger()
{
@@ -334,7 +325,10 @@ public class Cache
}
}
- /** Called when Jalview is started */
+ /**
+ * Loads properties from the given properties file. Any existing properties
+ * are first cleared.
+ */
public static void loadProperties(String propsFile)
{
propertiesFile = propsFile;
@@ -369,6 +363,7 @@ public class Cache
{
fis = new FileInputStream(propertiesFile);
}
+ applicationProperties.clear();
applicationProperties.load(fis);
// remove any old build properties
@@ -393,6 +388,8 @@ public class Cache
}
// LOAD THE AUTHORS FROM THE authors.props file
+ boolean ignore = Platform.isJS();
+ if (!ignore)
try
{
String authorDetails = "jar:"
@@ -404,17 +401,25 @@ public class Cache
InputStream in = localJarFileURL.openStream();
applicationProperties.load(in);
in.close();
+
} catch (Exception ex)
{
System.out.println("Error reading author details: " + ex);
- applicationProperties.remove("AUTHORS");
- applicationProperties.remove("AUTHORFNAMES");
- applicationProperties.remove("YEAR");
+ ignore = true;
}
+ if (ignore) {
+ applicationProperties.remove("AUTHORS");
+ applicationProperties.remove("AUTHORFNAMES");
+ applicationProperties.remove("YEAR");
+ }
+
// FIND THE VERSION NUMBER AND BUILD DATE FROM jalview.jar
// MUST FOLLOW READING OF LOCAL PROPERTIES FILE AS THE
// VERSION MAY HAVE CHANGED SINCE LAST USING JALVIEW
+ // BH 2019.01.25 switching to Platform.isJS()
+ ignore = Platform.isJS();
+ if (!ignore)
try
{
String buildDetails = "jar:".concat(Cache.class.getProtectionDomain()
@@ -429,7 +434,11 @@ public class Cache
} catch (Exception ex)
{
System.out.println("Error reading build details: " + ex);
- applicationProperties.remove("VERSION");
+ ignore = true;
+ }
+
+ if (ignore) {
+ applicationProperties.remove("VERSION");
}
String jnlpVersion = System.getProperty("jalview.version");
@@ -598,22 +607,35 @@ public class Cache
return def;
}
- /**
- * These methods are used when checking if the saved preference is different
- * to the default setting
- */
- public static String getDefault(String property, String def)
+ public static int getDefault(String property, int def)
{
String string = getProperty(property);
if (string != null)
{
- return string;
+ try
+ {
+ def = Integer.parseInt(string);
+ } catch (NumberFormatException e)
+ {
+ System.out.println("Error parsing int property '" + property
+ + "' with value '" + string + "'");
+ }
}
return def;
}
/**
+ * Answers the value of the given property, or the supplied default value if
+ * the property is not set
+ */
+ public static String getDefault(String property, String def)
+ {
+ String value = getProperty(property);
+ return value == null ? def : value;
+ }
+
+ /**
* Stores property in the file "HOME_DIR/.jalview_properties"
*
* @param key
@@ -621,14 +643,14 @@ public class Cache
* @param obj
* String value of property
*
- * @return String value of property
+ * @return previous value of property (or null)
*/
- public static String setProperty(String key, String obj)
+ public static Object setProperty(String key, String obj)
{
-
+ Object oldValue = null;
try
{
- applicationProperties.setProperty(key, obj);
+ oldValue = applicationProperties.setProperty(key, obj);
if (!propsAreReadOnly)
{
FileOutputStream out = new FileOutputStream(propertiesFile);
@@ -640,7 +662,7 @@ public class Cache
System.out.println(
"Error setting property: " + key + " " + obj + "\n" + ex);
}
- return obj;
+ return oldValue;
}
/**
@@ -978,22 +1000,6 @@ public class Cache
return null;
}
- private static DasSourceRegistryI sourceRegistry = null;
-
- /**
- * initialise and ..
- *
- * @return instance of the das source registry
- */
- public static DasSourceRegistryI getDasSourceRegistry()
- {
- if (sourceRegistry == null)
- {
- sourceRegistry = new DasSourceRegistry();
- }
- return sourceRegistry;
- }
-
/**
* Set the specified value, or remove it if null or empty. Does not save the
* properties file.
@@ -1068,4 +1074,19 @@ public class Cache
}
}
}
+
+ /**
+ * Add a known domain that implements access-control-allow-origin:* bh 2018
+ *
+ * @param defaultUniprotDomain
+ */
+ public static void addJ2SDirectDatabaseCall(String domain)
+ {
+
+ /**
+ * @j2sNative
+ *
+ * J2S.addDirectDatabaseCall(domain);
+ */
+ }
}