diff --git a/LaunchServer/source/LaunchServer.java b/LaunchServer/source/LaunchServer.java index fd37b71..53f5d2a 100644 --- a/LaunchServer/source/LaunchServer.java +++ b/LaunchServer/source/LaunchServer.java @@ -29,6 +29,7 @@ import launchserver.command.handler.CommandHandler; import launchserver.command.handler.JLineCommandHandler; import launchserver.command.handler.StdCommandHandler; +import launchserver.helpers.HTTPRequestHelper; import launchserver.response.Response; import launchserver.response.Response.Factory; import launchserver.response.ServerSocketHandler; @@ -39,11 +40,9 @@ import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; -import java.io.InputStreamReader; import java.net.InetSocketAddress; import java.net.SocketAddress; import java.net.URL; -import java.net.URLConnection; import java.nio.file.*; import java.nio.file.attribute.BasicFileAttributes; import java.security.KeyPair; @@ -191,12 +190,8 @@ LogHelper.info("Check updates from KeeperJerry..."); try { - URL url; - url = new URL("https://launcher-sashok724.keeperjerry.ru/versions.json"); - URLConnection conn = url.openConnection(); - BufferedReader getStatus = new BufferedReader(new InputStreamReader(conn.getInputStream())); - - JsonObject object = Json.parse(getStatus.readLine()).asObject(); + String file = HTTPRequestHelper.getFile("https://launcher-sashok724.keeperjerry.ru/versions.json"); + JsonObject object = Json.parse(file).asObject(); String version = object.get("version").asString(); String date = object.get("date").asString(); String note = object.get("note").asString(); @@ -209,7 +204,7 @@ { LogHelper.info("================================"); LogHelper.info("FOUND NEW VERSION: " + version); - LogHelper.info("Relese data: " + date); + LogHelper.info("Release data: " + date); LogHelper.info("Note: " + note); LogHelper.info("================================"); } diff --git a/LaunchServer/source/helpers/HTTPRequestHelper.java b/LaunchServer/source/helpers/HTTPRequestHelper.java new file mode 100644 index 0000000..a17ff32 --- /dev/null +++ b/LaunchServer/source/helpers/HTTPRequestHelper.java @@ -0,0 +1,38 @@ +package launchserver.helpers; + +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStreamReader; +import java.net.HttpURLConnection; +import java.net.URL; + +public class HTTPRequestHelper { + private static HttpURLConnection makeRequest(String url, String requestMethod) throws IOException { + HttpURLConnection connection = (HttpURLConnection) new URL(url).openConnection(); + connection.setRequestMethod(requestMethod); + return connection; + } + + public static boolean fileExsist(String url) throws IOException { + HttpURLConnection request = makeRequest(url, "HEAD"); + int responseCode = request.getResponseCode(); + if (responseCode >= 200 && responseCode < 300) { + return true; + } else { + return false; + } + } + + public static String getFile(String url) throws IOException { + HttpURLConnection request = makeRequest(url, "GET"); + BufferedReader in = new BufferedReader(new InputStreamReader(request.getInputStream())); + StringBuilder response = new StringBuilder(); + String inputLine; + + while ((inputLine = in.readLine()) != null) { + response.append(inputLine); + } + in.close(); + return response.toString(); + } +}