X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Futil%2FHttpUtils.java;fp=src%2Fjalview%2Futil%2FHttpUtils.java;h=5e27541a01a73e9496ace6eaa3495bd7f0f6fb23;hb=304e64fb34b32659be1bbfd39fb4e15b2f79586e;hp=97c84bc2f2275c60d02a7ab1a264077f00f9987e;hpb=cfb79b69d9fa44595560659bd95d1d1cd27677ad;p=jalview.git diff --git a/src/jalview/util/HttpUtils.java b/src/jalview/util/HttpUtils.java index 97c84bc..5e27541 100644 --- a/src/jalview/util/HttpUtils.java +++ b/src/jalview/util/HttpUtils.java @@ -25,7 +25,12 @@ import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; +import java.net.HttpURLConnection; +import java.net.ProtocolException; import java.net.URL; +import java.util.List; + +import javax.ws.rs.HttpMethod; public class HttpUtils { @@ -66,6 +71,36 @@ public class HttpUtils } return false; } + public static boolean startsWithHttpOrHttps(String file) + { + return file.startsWith("http://") || file.startsWith("https://"); + } + + /** + * wrapper to get/post to a URL or check headers + * @param url + * @param ids + * @param readTimeout + * @return + * @throws IOException + * @throws ProtocolException + */ + public static boolean checkUrlAvailable(URL url, + int readTimeout) throws IOException, ProtocolException + { + // System.out.println(System.currentTimeMillis() + " " + url); + + HttpURLConnection connection = (HttpURLConnection) url.openConnection(); + + connection.setRequestMethod(HttpMethod.HEAD); + + connection.setDoInput(true); + + connection.setUseCaches(false); + connection.setConnectTimeout(300); + connection.setReadTimeout(readTimeout); + return connection.getResponseCode() == 200; + } /** * download from given URL and return a pointer to temporary file