diff --git a/build.gradle.kts b/build.gradle.kts index 5f57608..a8b229e 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -19,6 +19,8 @@ file("src/main/resources/version.properties").takeIf { it.exists() }?.let { plugins { id("java") id("application") + application + id("com.github.johnrengelman.shadow") version "8.1.1" } group = "org.example" @@ -56,4 +58,9 @@ tasks.named("jar") { "Main-Class" to "com.CDPrintable.Main" ) } -} \ No newline at end of file +} + +tasks.withType { + archiveClassifier.set("all") + mergeServiceFiles() +} diff --git a/src/main/java/com/CDPrintable/MusicBrainzResources/MusicBrainzArtist.java b/src/main/java/com/CDPrintable/MusicBrainzResources/MusicBrainzArtist.java index 45e44e5..4870ccc 100644 --- a/src/main/java/com/CDPrintable/MusicBrainzResources/MusicBrainzArtist.java +++ b/src/main/java/com/CDPrintable/MusicBrainzResources/MusicBrainzArtist.java @@ -10,6 +10,8 @@ package com.CDPrintable.MusicBrainzResources; +import java.util.Locale; + public class MusicBrainzArtist { private String name; private String dateOrganized; // May only be present for groups @@ -121,7 +123,9 @@ public void setBirthDate(String birthDate) { } public String getCountry() { - return country; + if (country == null || country.equals("xw")) {return null;} + Locale locale = new Locale.Builder().setRegion(country).build(); + return locale.getDisplayName(); } public void setCountry(String country) { diff --git a/src/main/java/com/CDPrintable/MusicBrainzResources/MusicBrainzJSONReader.java b/src/main/java/com/CDPrintable/MusicBrainzResources/MusicBrainzJSONReader.java index f19bc71..eec8bd7 100644 --- a/src/main/java/com/CDPrintable/MusicBrainzResources/MusicBrainzJSONReader.java +++ b/src/main/java/com/CDPrintable/MusicBrainzResources/MusicBrainzJSONReader.java @@ -235,10 +235,6 @@ public MusicBrainzArtist[] getArtists() { } String country = jsonHasAndIsNotNull(jsonObject, "country") ? jsonObject.get("country").getAsString() : null; - if (country != null) { - Locale locale = new Locale.Builder().setRegion(country).build(); - country = locale.getDisplayCountry(); - } return new MusicBrainzArtist(name, organizedDate, birthDate, id, sortName, gender, type, disambiguation, lifeSpan, country); }, new MusicBrainzArtist[0]); diff --git a/src/main/java/com/CDPrintable/WebRequest.java b/src/main/java/com/CDPrintable/WebRequest.java index dc41dca..9de6e0f 100644 --- a/src/main/java/com/CDPrintable/WebRequest.java +++ b/src/main/java/com/CDPrintable/WebRequest.java @@ -51,10 +51,14 @@ public WebRequest(String url, String userAgent) { */ public String sendRequest() throws IOException, URISyntaxException { HttpURLConnection connection = (HttpURLConnection) new URI(url).toURL().openConnection(); + connection.setRequestMethod("GET"); connection.setRequestProperty("User-Agent", userAgent); connection.setRequestProperty("Accept", "application/json"); + connection.setConnectTimeout(6000); + connection.setReadTimeout(5000); + int responseCode = connection.getResponseCode(); if (responseCode != HttpURLConnection.HTTP_OK) { throw new IOException("HTTP error code: " + responseCode);