diff --git a/app/src/main/java/de/sebse/fuplanner/fragments/moddetails/ModDetailOverviewFragment.java b/app/src/main/java/de/sebse/fuplanner/fragments/moddetails/ModDetailOverviewFragment.java index df26b7e..b89db62 100644 --- a/app/src/main/java/de/sebse/fuplanner/fragments/moddetails/ModDetailOverviewFragment.java +++ b/app/src/main/java/de/sebse/fuplanner/fragments/moddetails/ModDetailOverviewFragment.java @@ -86,7 +86,15 @@ public class ModDetailOverviewFragment extends Fragment { adapter.setModule(module); kvv.getModuleAnnouncements(module, module1 -> { log.d("announcements", module.announcements); - adapter.setModule(module1); + adapter.setModule(); + }, error -> log.e(error)); + kvv.getModuleAssignments(module, module1 -> { + log.d("assignments", module.assignments); + adapter.setModule(); + }, error -> log.e(error)); + kvv.getModuleEvents(module, module1 -> { + log.d("events", module.events); + adapter.setModule(); }, error -> log.e(error)); }, error -> log.e(error)); } diff --git a/app/src/main/java/de/sebse/fuplanner/services/KVV/KVV.java b/app/src/main/java/de/sebse/fuplanner/services/KVV/KVV.java index 5eea35b..df92c36 100644 --- a/app/src/main/java/de/sebse/fuplanner/services/KVV/KVV.java +++ b/app/src/main/java/de/sebse/fuplanner/services/KVV/KVV.java @@ -61,6 +61,28 @@ public class KVV { }); } + public void getModuleAssignments(Modules.Module module, final NetworkCallback callback, final NetworkErrorCallback error) { + this.getLastToken(token -> { + KVVModuleList modules = (KVVModuleList) addons.get("modules"); + if (modules == null) { + modules = new KVVModuleList(KVV.this.context, token); + addons.put("modules", modules); + } + modules.getAssignments(module, callback, error); + }); + } + + public void getModuleEvents(Modules.Module module, final NetworkCallback callback, final NetworkErrorCallback error) { + this.getLastToken(token -> { + KVVModuleList modules = (KVVModuleList) addons.get("modules"); + if (modules == null) { + modules = new KVVModuleList(KVV.this.context, token); + addons.put("modules", modules); + } + modules.getEvents(module, callback, error); + }); + } + private void getLastToken(LastTokenCallback lastTokenCallback) { if (this.isUpdating) { this.updatingList.add(lastTokenCallback); diff --git a/app/src/main/java/de/sebse/fuplanner/services/KVV/KVVModuleList.java b/app/src/main/java/de/sebse/fuplanner/services/KVV/KVVModuleList.java index 8684309..8196b0a 100644 --- a/app/src/main/java/de/sebse/fuplanner/services/KVV/KVVModuleList.java +++ b/app/src/main/java/de/sebse/fuplanner/services/KVV/KVVModuleList.java @@ -156,4 +156,28 @@ public class KVVModuleList extends HTTPService { private void getAssignmentsUpgrade(String ID, final NetworkCallback> callback, final NetworkErrorCallback errorCallback) { callback.onResponse(new ArrayList()); } + + + + + + + public void getEvents(Modules.Module module, final NetworkCallback callback, final NetworkErrorCallback errorCallback) { + queueModuleDetails.add(module.getID(), () -> { + if (module.events != null) { + callback.onResponse(module); + queueModuleDetails.next(module.getID()); + return; + } + getEventsUpgrade(module.getID(), success -> { + module.events = success; + callback.onResponse(module); + queueModuleDetails.next(module.getID()); + }, errorCallback); + }); + } + + private void getEventsUpgrade(String ID, final NetworkCallback> callback, final NetworkErrorCallback errorCallback) { + callback.onResponse(new ArrayList()); + } }