From c538ecc7adb0bec5dc956865906ef96010532a94 Mon Sep 17 00:00:00 2001 From: Nemo D'ACREMONT Date: Fri, 1 Nov 2024 08:47:50 +0100 Subject: [PATCH] feat: helloworld weatherapi --- src/main/java/eirb/pg203/Main.java | 27 ++++++++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) diff --git a/src/main/java/eirb/pg203/Main.java b/src/main/java/eirb/pg203/Main.java index 19573f7..3fb86ff 100644 --- a/src/main/java/eirb/pg203/Main.java +++ b/src/main/java/eirb/pg203/Main.java @@ -12,8 +12,16 @@ import java.util.Arrays; public class Main { public static void main(String[] args) throws IOException { + String APIKey = args[0]; System.out.println("Args: " + Arrays.toString(args)); - System.out.println(fetchChuckNorrisJoke()); + + JSONObject bordeauxWeather = fetchBordeauxWeather(APIKey); + System.out.println("Bordeaux Weather:"); + System.out.println( + "\tTemp: " + + bordeauxWeather.getJSONObject("current").getFloat("feelslike_c") + + "°C" + ); } public static JSONObject fetchChuckNorrisJoke() throws IOException { @@ -29,4 +37,21 @@ public class Main { } return new JSONObject(result.toString()); } + + public static JSONObject fetchBordeauxWeather(String WeatherAPIKey) throws IOException { + StringBuilder result = new StringBuilder(); + URL url = URI.create( + "https://api.weatherapi.com/v1/current.json?q=Bordeaux&key=" + + WeatherAPIKey + ).toURL(); + HttpURLConnection conn = (HttpURLConnection) url.openConnection(); + conn.setRequestMethod("GET"); + try (BufferedReader reader = new BufferedReader( + new InputStreamReader(conn.getInputStream()))) { + for (String line; (line = reader.readLine()) != null; ) { + result.append(line); + } + } + return new JSONObject(result.toString()); + } }