package link; import java.io.IOException; import java.net.HttpURLConnection; public class OnlineCheck { static Boolean of(LinkUrl url) { int responseCode = getResponseCode(url); return (responseCode < 400 || responseCode == 401 || responseCode == 403); } private static int getResponseCode(LinkUrl url) { try { HttpURLConnection http = (HttpURLConnection) url.getUrl().openConnection(); http.setRequestMethod("HEAD"); http.disconnect(); return http.getResponseCode(); } catch (IOException e) { return 500; //TODO: seems smelly } } }