X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Futil%2FChannelProperties.java;h=40f61106c449663f6f172c1dd08eb76e9884daff;hb=1c721468246c2aafd86fc52d954512374f576b11;hp=c33198b1670aeccb5d7778d116b057abe237624b;hpb=04e2d97b71fad3d9d02abbe292ea1fa9ba6d1438;p=jalview.git diff --git a/src/jalview/util/ChannelProperties.java b/src/jalview/util/ChannelProperties.java index c33198b..40f6110 100644 --- a/src/jalview/util/ChannelProperties.java +++ b/src/jalview/util/ChannelProperties.java @@ -1,6 +1,9 @@ package jalview.util; import java.awt.Image; +import java.io.File; +import java.io.FileInputStream; +import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStream; import java.net.URL; @@ -13,14 +16,12 @@ import java.util.Properties; import javax.swing.ImageIcon; -import jalview.bin.Cache; - public class ChannelProperties { - private static final String CHANNEL_PROPERTIES_FILENAME = "/channel_properties"; + public static final String CHANNEL_PROPERTIES_FILENAME = "channel.props"; - private static final Properties channelProps; + private static Properties channelProps; private static final Properties defaultProps; @@ -55,16 +56,20 @@ public class ChannelProperties defaultProps.put("uod_banner.32", "/default_images/UoD_banner-32.png"); defaultProps.put("default_appbase", "https://www.jalview.org/getdown/release/1.8"); + defaultProps.put("preferences.filename", ".jalview_properties"); // load channel_properties Properties tryChannelProps = new Properties(); URL channelPropsURL = ChannelProperties.class - .getResource(CHANNEL_PROPERTIES_FILENAME); + .getResource("/" + CHANNEL_PROPERTIES_FILENAME); if (channelPropsURL == null) { // complete failure of channel_properties, set all properties to defaults - System.err.println("Failed to find '" + CHANNEL_PROPERTIES_FILENAME - + "' file, using defaults"); + System.err.println("Failed to find '/" + CHANNEL_PROPERTIES_FILENAME + + "' file at '" + + (channelPropsURL == null ? "null" + : channelPropsURL.toString()) + + "'. Using class defaultProps."); tryChannelProps = defaultProps; } else @@ -76,7 +81,7 @@ public class ChannelProperties channelPropsIS.close(); } catch (IOException e) { - Cache.log.warn(e.getMessage()); + System.err.println(e.getMessage()); // return false; } } @@ -109,7 +114,9 @@ public class ChannelProperties Image logo = null; String path = defaultProps.getProperty("logo." + size); URL imageURL = ChannelProperties.class.getResource(path); - logo = new ImageIcon(imageURL).getImage(); + ImageIcon imgIcon = imageURL == null ? null + : new ImageIcon(imageURL); + logo = imgIcon == null ? null : imgIcon.getImage(); if (logo != null) { iconList.add(logo); @@ -118,6 +125,25 @@ public class ChannelProperties } } + protected static void loadProps(File dir) + { + File channelPropsFile = new File(dir, CHANNEL_PROPERTIES_FILENAME); + if (channelPropsFile.exists()) + { + try + { + InputStream is = new FileInputStream(channelPropsFile); + channelProps.load(is); + } catch (FileNotFoundException e) + { + System.err.println(e.getMessage()); + } catch (IOException e) + { + System.err.println(e.getMessage()); + } + } + } + private static Properties channelProps() { return channelProps; @@ -215,7 +241,8 @@ public class ChannelProperties } URL imageURL = ChannelProperties.class.getResource(path); - img = new ImageIcon(imageURL).getImage(); + ImageIcon imgIcon = imageURL == null ? null : new ImageIcon(imageURL); + img = imgIcon == null ? null : imgIcon.getImage(); if (img == null) { System.err.println( @@ -258,4 +285,4 @@ public class ChannelProperties { return iconList; } -} \ No newline at end of file +}