package jalview.util; import java.io.IOException; import edu.stanford.ejalbert.exception.BrowserLaunchingInitializingException; import edu.stanford.ejalbert.exception.UnsupportedOperatingSystemException; import jalview.bin.Cache; import jalview.bin.Console; public class BrowserLauncher { private static String preferredBrowser = null; public static void openURL(String url) throws IOException { if (Platform.isJS()) { Platform.openURL(url); return; } else /** * Java only * * @j2sIgnore */ { edu.stanford.ejalbert.BrowserLauncher bl = null; try { bl = new edu.stanford.ejalbert.BrowserLauncher(); } catch (BrowserLaunchingInitializingException e) { Console.warn(MessageManager.formatMessage( "exception.browser_unable_to_launch", e.getMessage())); } catch (UnsupportedOperatingSystemException e) { Console.warn(MessageManager.formatMessage("exception.")); Console.debug(e.getMessage()); } if (bl != null) { if (Platform.isMac() || preferredBrowser == null) { bl.openURLinBrowser(url); } else { System.err.println( "**** OPENURL (" + preferredBrowser + ", " + url + ")"); bl.openURLinBrowser(preferredBrowser, url); } } } } public static void resetBrowser() { String defaultBrowser = Cache.getProperty("DEFAULT_BROWSER"); preferredBrowser = defaultBrowser; } }