From 5c3cb8398ffa07d83299b9f720246b8b0e6698c6 Mon Sep 17 00:00:00 2001 From: Jannik Date: Mon, 5 Jun 2017 17:16:39 +0200 Subject: [PATCH] smmdbapi part 2 api query fully working --- bin/application/MainWindowController$7.class | Bin 4905 -> 4905 bytes bin/application/MainWindowController.class | Bin 29645 -> 29788 bytes src/application/MainWindowController.java | 8 +- src/application/SmmdbApiQuery.java | 106 ++++++++++++++----- src/datatypes/SmmdbApiDataType.java | 28 +++-- 5 files changed, 97 insertions(+), 45 deletions(-) diff --git a/bin/application/MainWindowController$7.class b/bin/application/MainWindowController$7.class index ee393b41f2d421eef1149b7ef3e1ea10c0cb1ca1..2fcf99d8eebdac8376c04a21729a246b7679a60a 100644 GIT binary patch delta 161 zcmWN@y$V4A7zW_)eLp_~9d%p-17)%)lT2CYMUXkSudEQaw6Lr4O<{K72=<$ob3MNXps(7e}Vf8YlKBm>rq6SztG{~A7Y-xxc JHLbY$`2k>{FUbG^ delta 161 zcmV;S0ABy8CaET{+YSNRv)m5C0)O2AB?908DgxmEL;~UfOakBlUjpU;Y69l~bpq%B zfCB0Oi~{Qbssii)$^!2I^#bq#0Rr&>D+2NXE&}rbGy?SjMgsN$T>|$3cLMnVeFFLc zi30lplLGt!p91{>q5}Q_$pZiZ-va>w`U3(269WSRI|Bp)J_7{;XaflXat;Fu0(k=r P0)qn$0*V6=lPePbd*d*E diff --git a/bin/application/MainWindowController.class b/bin/application/MainWindowController.class index 8bcf389249613e93a743ee3c112c27194d939a85..b60917928722e6a8a9c65422e745579f6ae49339 100644 GIT binary patch delta 10164 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 YuAb-lpZrArNuC6kI4BOtPe-`^7cq{UB>(^b delta 10066 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 diff --git a/src/application/MainWindowController.java b/src/application/MainWindowController.java index 622f02b..5d667d8 100644 --- a/src/application/MainWindowController.java +++ b/src/application/MainWindowController.java @@ -204,7 +204,7 @@ public class MainWindowController { fullscreenToggleBtn.setSelected(isFullscreen()); cloudSyncToggleBtn.setSelected(isCloudSync()); edit.setDisable(true); - smmdbBtn.setDisable(true); //TODO + smmdbBtn.setDisable(false); //TODO applyColor(); } @@ -476,9 +476,11 @@ public class MainWindowController { void smmdbBtnAction() { //TODO show TODO smmdbAnchorPane - //TODO start query + //start query ArrayList courses = new ArrayList<>(smmdbApiQuery.startQuery()); - System.out.println(courses.size()); + + System.out.println("size: " + courses.size()); + System.out.println(courses.get(3).getNintendoid()); } @FXML diff --git a/src/application/SmmdbApiQuery.java b/src/application/SmmdbApiQuery.java index ca8d1eb..e573cef 100644 --- a/src/application/SmmdbApiQuery.java +++ b/src/application/SmmdbApiQuery.java @@ -1,6 +1,6 @@ /** * smmdbapi query - * start query and return all courses as ArrayList + * api query, return all courses as ArrayList */ package application; @@ -18,13 +18,13 @@ import datatypes.SmmdbApiDataType; public class SmmdbApiQuery { - private String url = "http://smmdb.ddns.net/api/getcourses?"; + private String URL = "http://smmdb.ddns.net/api/getcourses?"; public SmmdbApiQuery() { //Auto-generated constructor stub } - //TODO needs to be tested + //start api query public ArrayList startQuery() { ArrayList courseIDs = new ArrayList<>(); ArrayList course = new ArrayList<>(); @@ -32,44 +32,96 @@ public class SmmdbApiQuery { try { - URL apiUrl = new URL(url); + URL apiUrl = new URL(URL); BufferedReader ina = new BufferedReader(new InputStreamReader(apiUrl.openStream())); output = ina.readLine(); ina.close(); } catch (IOException e) { - //Auto-generated catch block + System.out.println("error while making api request or reading response"); e.printStackTrace(); } JsonObject mainObject = Json.parse(output).asObject().get("courses").asObject(); - System.out.println(mainObject); - - JsonArray objectAssets = Json.parse(output).asObject().get("order").asArray(); + for (JsonValue asset : objectAssets) { courseIDs.add(asset.asInt()); } - //FIXME if parameter = null query will stop + //if value is 9 or "notset" the api returned NULL as value for (int i = 0; i < courseIDs.size(); i++) { - System.out.println(i); - JsonObject singleObject = mainObject.get(courseIDs.get(i).toString()).asObject(); - int id = singleObject.getInt("id", 0); - int owner = singleObject.getInt("owner", 0); - int coursetype = singleObject.getInt("coursetype", 0); - int leveltype = singleObject.getInt("leveltype", 0); - int difficulty = singleObject.getInt("difficulty", 0); - int lastmodified = singleObject.getInt("lastmodified", 0); - int uploaded = singleObject.getInt("uploaded", 0); - int downloads = singleObject.getInt("downloads", 0); - int stars = singleObject.getInt("stars", 0); - int ispackage = singleObject.getInt("ispackage", 0); - int updatereq = singleObject.getInt("updatereq", 0); -// String nintendoid = singleObject.getString("nintendoid", ""); - String title = singleObject.getString("title", ""); - - course.add(new SmmdbApiDataType(id, owner, coursetype, leveltype, difficulty, lastmodified, uploaded, downloads, - stars, ispackage, updatereq, title)); + int id, owner, coursetype, leveltype, difficulty, lastmodified, uploaded, downloads, stars, ispackage, updatereq; + String nintendoid, title; + JsonObject singleObject = mainObject.get(courseIDs.get(i).toString()).asObject(); + + try { + id = singleObject.getInt("id", 0); + } catch (Exception e) { + id = 9; + } + try { + owner = singleObject.getInt("owner", 0); + } catch (Exception e) { + owner = 9; + } + try { + coursetype = singleObject.getInt("coursetype", 0); + } catch (Exception e) { + coursetype = 9; + } + try { + leveltype = singleObject.getInt("leveltype", 0); + } catch (Exception e) { + leveltype = 9; + } + try { + difficulty = singleObject.getInt("difficulty", 0); + } catch (Exception e) { + difficulty = 9; + } + try { + lastmodified = singleObject.getInt("lastmodified", 0); + } catch (Exception e) { + lastmodified = 9; + } + try { + uploaded = singleObject.getInt("uploaded", 0); + } catch (Exception e) { + uploaded = 9; + } + try { + downloads = singleObject.getInt("downloads", 0); + } catch (Exception e) { + downloads = 9; + } + try { + stars = singleObject.getInt("stars", 0); + } catch (Exception e) { + stars = 9; + } + try { + ispackage = singleObject.getInt("ispackage", 0); + } catch (Exception e) { + ispackage = 9; + } + try { + updatereq = singleObject.getInt("updatereq", 0); + } catch (Exception e) { + updatereq = 9; + } + try { + nintendoid = singleObject.getString("nintendoid", ""); + } catch (Exception e) { + nintendoid = "notset"; + } + try { + title = singleObject.getString("title", "");; + } catch (Exception e) { + title = "notset"; + } + + course.add(new SmmdbApiDataType(id, owner, coursetype, leveltype, difficulty, lastmodified, uploaded, downloads, + stars, ispackage, updatereq, nintendoid, title)); } return course; diff --git a/src/datatypes/SmmdbApiDataType.java b/src/datatypes/SmmdbApiDataType.java index 7b3661e..2c5d589 100644 --- a/src/datatypes/SmmdbApiDataType.java +++ b/src/datatypes/SmmdbApiDataType.java @@ -1,8 +1,6 @@ package datatypes; -import javafx.beans.property.BooleanProperty; import javafx.beans.property.IntegerProperty; -import javafx.beans.property.SimpleBooleanProperty; import javafx.beans.property.SimpleIntegerProperty; import javafx.beans.property.SimpleStringProperty; import javafx.beans.property.StringProperty; @@ -20,25 +18,25 @@ public class SmmdbApiDataType { private final IntegerProperty stars = new SimpleIntegerProperty(); private final IntegerProperty ispackage = new SimpleIntegerProperty(); private final IntegerProperty updatereq = new SimpleIntegerProperty(); -// private final StringProperty nintendoid = new SimpleStringProperty(); + private final StringProperty nintendoid = new SimpleStringProperty(); private final StringProperty title = new SimpleStringProperty(); public SmmdbApiDataType(final int id, final int owner, final int coursetype, final int leveltype, final int difficulty, final int lastmodified, final int uploaded, final int downloads, final int stars, final int ispackage, - final int updatereq, final String title) { + final int updatereq, final String nintendoid, final String title) { this.id.set(id); this.owner.set(owner); this.coursetype.set(coursetype); -// this.nintendoid.set(nintendoid); this.leveltype.set(leveltype); this.difficulty.set(difficulty); this.lastmodified.set(lastmodified); this.uploaded.set(uploaded); this.downloads.set(downloads); this.stars.set(stars); - this.title.set(title); this.ispackage.set(ispackage); this.updatereq.set(updatereq); + this.nintendoid.set(nintendoid); + this.title.set(title); } public IntegerProperty idProperty(){ @@ -53,9 +51,9 @@ public class SmmdbApiDataType { return coursetype; } -// public StringProperty nintendoidProperty(){ -// return nintendoid; -// } + public StringProperty nintendoidProperty(){ + return nintendoid; + } public IntegerProperty leveltypeProperty(){ return leveltype; @@ -137,9 +135,9 @@ public class SmmdbApiDataType { return updatereqProperty().get(); } -// public String getNintendoid() { -// return nintendoidProperty().get(); -// } + public String getNintendoid() { + return nintendoidProperty().get(); + } public String getTitle() { return titleProperty().get(); @@ -189,9 +187,9 @@ public class SmmdbApiDataType { updatereqProperty().set(updatereq); } -// public final void setNintendoid(String nintendoid) { -// nintendoidProperty().set(nintendoid); -// } + public final void setNintendoid(String nintendoid) { + nintendoidProperty().set(nintendoid); + } public final void setTitle(String title) { titleProperty().set(title);