package com.compomics.util.io;
/**
* This class starts a browser for the given URL.
*
* Created by IntelliJ IDEA. User: kenny Date: Feb 23, 2010 Time: 4:02:21 PM
*/
public class StartBrowser {
/**
* Empty constructor.
*/
public StartBrowser() {
}
/**
* Opens the given URL in the default browser.
*
* @param aURL the URL to open
*/
public static void start(String aURL) {
String url = aURL;
String os = System.getProperty("os.name").toLowerCase();
Runtime rt = Runtime.getRuntime();
try {
if (os.indexOf("win") >= 0) {
// this doesn't support showing urls in the form of "page.html#nameLink"
rt.exec("rundll32 url.dll,FileProtocolHandler " + url);
} else if (os.indexOf("mac") >= 0) {
rt.exec("open " + url);
} else if (os.indexOf("nix") >= 0 || os.indexOf("nux") >= 0) {
// Do a best guess on unix until we get a platform independent way
// Build a list of browsers to try, in this order.
String[] browsers = {"epiphany", "firefox", "mozilla", "konqueror",
"netscape", "opera", "links", "lynx"};
// Build a command string which looks like "browser1 "url" || browser2 "url" ||..."
StringBuffer cmd = new StringBuffer();
for (int i = 0; i < browsers.length; i++)
cmd.append((i == 0 ? "" : " || ") + browsers[i] + " \"" + url + "\" ");
rt.exec(new String[]{"sh", "-c", cmd.toString()});
} else {
return;
}
} catch (Exception e) {
return;
}
}
}