Skip to content

Commit 605688e

Browse files
committed
Replace org.json with Gson
1 parent f2430fd commit 605688e

File tree

3 files changed

+14
-14
lines changed

3 files changed

+14
-14
lines changed

build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ repositories {
4949
}
5050

5151
dependencies {
52-
implementation group: 'org.json', name: 'json', version: '20211205'
52+
implementation 'com.google.code.gson:gson:2.9.0'
5353
implementation ('de.jangassen:nsmenufx:3.1.0') {
5454
exclude group: 'net.java.dev.jna', module: 'jna' //separate jna version
5555
}

src/main/java/airsquared/blobsaver/app/Utils.java

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@
1818

1919
package airsquared.blobsaver.app;
2020

21+
import com.google.gson.JsonElement;
22+
import com.google.gson.JsonParser;
2123
import com.sun.jna.Platform;
2224
import javafx.scene.Node;
2325
import javafx.scene.control.Alert;
@@ -34,8 +36,6 @@
3436
import javafx.stage.DirectoryChooser;
3537
import javafx.stage.Window;
3638
import org.apache.commons.compress.archivers.zip.ZipFile;
37-
import org.json.JSONObject;
38-
import org.json.JSONTokener;
3939

4040
import java.io.*;
4141
import java.net.URI;
@@ -90,11 +90,11 @@ static void checkForUpdates(boolean forceCheck) {
9090
executeInThreadPool(() -> _checkForUpdates(forceCheck));
9191
}
9292

93-
static final record LatestVersion(String version, String changelog) {
93+
record LatestVersion(String version, String changelog) {
9494
static LatestVersion request() throws IOException {
95-
JSONObject json = makeRequest("https://api.github.com/repos/airsquared/blobsaver/releases/latest");
96-
String tempChangelog = json.getString("body");
97-
return new LatestVersion(json.getString("tag_name"), tempChangelog.substring(tempChangelog.indexOf("Changelog")));
95+
JsonElement json = makeRequest("https://api.github.com/repos/airsquared/blobsaver/releases/latest");
96+
String tempChangelog = json.getAsJsonObject().get("body").getAsString();
97+
return new LatestVersion(json.getAsJsonObject().get("tag_name").getAsString(), tempChangelog.substring(tempChangelog.indexOf("Changelog")));
9898
}
9999

100100
@Override
@@ -140,9 +140,9 @@ private static void _checkForUpdates(boolean forceCheck) {
140140
}
141141
}
142142

143-
private static JSONObject makeRequest(String url) throws IOException {
143+
private static JsonElement makeRequest(String url) throws IOException {
144144
try (var inputStream = new BufferedReader(new InputStreamReader(new URL(url).openStream()))) {
145-
return new JSONObject(new JSONTokener(inputStream));
145+
return JsonParser.parseReader(inputStream);
146146
}
147147
}
148148

@@ -349,16 +349,16 @@ static void runSafe(Runnable runnable) {
349349

350350
static Stream<IOSVersion> getFirmwareList(String deviceIdentifier) throws IOException {
351351
String url = "https://api.ipsw.me/v4/device/" + deviceIdentifier;
352-
return StreamSupport.stream(makeRequest(url).getJSONArray("firmwares").spliterator(), false)
353-
.map(o -> (JSONObject) o)
354-
.map(o -> new IOSVersion(o.getString("version"), o.getString("url"), o.getBoolean("signed")));
352+
return StreamSupport.stream(makeRequest(url).getAsJsonObject().getAsJsonArray("firmwares").spliterator(), false)
353+
.map(JsonElement::getAsJsonObject)
354+
.map(o -> new IOSVersion(o.get("version").getAsString(), o.get("url").getAsString(), o.get("signed").getAsBoolean()));
355355
}
356356

357357
static Stream<IOSVersion> getSignedFirmwares(String deviceIdentifier) throws IOException {
358358
return getFirmwareList(deviceIdentifier).filter(IOSVersion::signed);
359359
}
360360

361-
static final record IOSVersion(String versionString, String ipswURL, Boolean signed) {
361+
record IOSVersion(String versionString, String ipswURL, Boolean signed) {
362362
public IOSVersion {
363363
Objects.requireNonNull(ipswURL, "ipsw url cannot be null");
364364
}

src/main/java/module-info.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,6 @@
66

77
requires com.sun.jna;
88
requires nsmenufx;
9-
requires org.json;
9+
requires com.google.gson;
1010
requires org.apache.commons.compress;
1111
}

0 commit comments

Comments
 (0)