Renamed forceOverride to forceRefresh; refeshing added to public api
This commit is contained in:
@@ -82,13 +82,13 @@ public class ModDetailOverviewFragment extends Fragment {
|
||||
// Getting SwipeContainerLayout
|
||||
swipeLayout = view.findViewById(R.id.swipe_container);
|
||||
// Adding Listener
|
||||
swipeLayout.setOnRefreshListener(this::refresh);
|
||||
refresh();
|
||||
swipeLayout.setOnRefreshListener(() -> refresh(true));
|
||||
refresh(false);
|
||||
|
||||
return view;
|
||||
}
|
||||
|
||||
private void refresh() {
|
||||
private void refresh(boolean forceRefresh) {
|
||||
if (getActivity() != null) {
|
||||
KVV kvv = ((MainActivity) getActivity()).getKVV();
|
||||
kvv.getModuleList((Modules success) -> {
|
||||
@@ -99,7 +99,7 @@ public class ModDetailOverviewFragment extends Fragment {
|
||||
kvv.getModuleDetails(module, module1 -> {
|
||||
adapter.setModule();
|
||||
}, error -> log.e(error));
|
||||
}, error -> log.e(error));
|
||||
}, error -> log.e(error), forceRefresh);
|
||||
}
|
||||
swipeLayout.setRefreshing(false);
|
||||
}
|
||||
|
||||
@@ -46,68 +46,92 @@ public class KVV {
|
||||
}
|
||||
|
||||
public void getModuleList(final NetworkCallback<Modules> callback, final NetworkErrorCallback error) {
|
||||
getModuleList(callback, error, false);
|
||||
}
|
||||
|
||||
public void getModuleList(final NetworkCallback<Modules> callback, final NetworkErrorCallback error, boolean forceRefresh) {
|
||||
this.getLastToken(token -> {
|
||||
KVVModuleList modules = (KVVModuleList) addons.get("modules");
|
||||
if (modules == null) {
|
||||
modules = new KVVModuleList(KVV.this.context, token);
|
||||
addons.put("modules", modules);
|
||||
}
|
||||
modules.getModuleList(callback, error);
|
||||
modules.getModuleList(callback, error, forceRefresh);
|
||||
});
|
||||
}
|
||||
|
||||
public void getModuleDetails(Modules.Module module, final NetworkCallback<Modules.Module> callback, final NetworkErrorCallback error) {
|
||||
getModuleDetails(module, callback, error, false);
|
||||
}
|
||||
|
||||
public void getModuleDetails(Modules.Module module, final NetworkCallback<Modules.Module> callback, final NetworkErrorCallback error, boolean forceRefresh) {
|
||||
this.getLastToken(token -> {
|
||||
KVVModuleList modules = (KVVModuleList) addons.get("modules");
|
||||
if (modules == null) {
|
||||
modules = new KVVModuleList(KVV.this.context, token);
|
||||
addons.put("modules", modules);
|
||||
}
|
||||
modules.getModuleDetails(module, callback, error);
|
||||
modules.getModuleDetails(module, callback, error, forceRefresh);
|
||||
});
|
||||
}
|
||||
|
||||
public void getModuleAnnouncements(Modules.Module module, final NetworkCallback<Modules.Module> callback, final NetworkErrorCallback error) {
|
||||
getModuleAnnouncements(module, callback, error, false);
|
||||
}
|
||||
|
||||
public void getModuleAnnouncements(Modules.Module module, final NetworkCallback<Modules.Module> callback, final NetworkErrorCallback error, boolean forceRefresh) {
|
||||
this.getLastToken(token -> {
|
||||
KVVModuleList modules = (KVVModuleList) addons.get("modules");
|
||||
if (modules == null) {
|
||||
modules = new KVVModuleList(KVV.this.context, token);
|
||||
addons.put("modules", modules);
|
||||
}
|
||||
modules.getAnnouncements(module, callback, error);
|
||||
modules.getAnnouncements(module, callback, error, forceRefresh);
|
||||
});
|
||||
}
|
||||
|
||||
public void getModuleAssignments(Modules.Module module, final NetworkCallback<Modules.Module> callback, final NetworkErrorCallback error) {
|
||||
getModuleAssignments(module, callback, error, false);
|
||||
}
|
||||
|
||||
public void getModuleAssignments(Modules.Module module, final NetworkCallback<Modules.Module> callback, final NetworkErrorCallback error, boolean forceRefresh) {
|
||||
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);
|
||||
modules.getAssignments(module, callback, error, forceRefresh);
|
||||
});
|
||||
}
|
||||
|
||||
public void getModuleEvents(Modules.Module module, final NetworkCallback<Modules.Module> callback, final NetworkErrorCallback error) {
|
||||
getModuleEvents(module, callback, error, false);
|
||||
}
|
||||
|
||||
public void getModuleEvents(Modules.Module module, final NetworkCallback<Modules.Module> callback, final NetworkErrorCallback error, boolean forceRefresh) {
|
||||
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);
|
||||
modules.getEvents(module, callback, error, forceRefresh);
|
||||
});
|
||||
}
|
||||
|
||||
public void getModuleGradebook(Modules.Module module, final NetworkCallback<Modules.Module> callback, final NetworkErrorCallback error) {
|
||||
getModuleGradebook(module, callback, error, false);
|
||||
}
|
||||
|
||||
public void getModuleGradebook(Modules.Module module, final NetworkCallback<Modules.Module> callback, final NetworkErrorCallback error, boolean forceRefresh) {
|
||||
this.getLastToken(token -> {
|
||||
KVVModuleList modules = (KVVModuleList) addons.get("modules");
|
||||
if (modules == null) {
|
||||
modules = new KVVModuleList(KVV.this.context, token);
|
||||
addons.put("modules", modules);
|
||||
}
|
||||
modules.getGradebook(module, callback, error);
|
||||
modules.getGradebook(module, callback, error, forceRefresh);
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@@ -52,13 +52,12 @@ public class KVVModuleList extends HTTPService {
|
||||
}
|
||||
}
|
||||
|
||||
public void getModuleList(final NetworkCallback<Modules> callback, final NetworkErrorCallback errorCallback) {
|
||||
getModuleList(callback, errorCallback, false);
|
||||
}
|
||||
|
||||
public void getModuleList(final NetworkCallback<Modules> callback, final NetworkErrorCallback errorCallback, boolean forceOverride) {
|
||||
|
||||
|
||||
public void getModuleList(final NetworkCallback<Modules> callback, final NetworkErrorCallback errorCallback, boolean forceRefresh) {
|
||||
queueModuleDetails.add("list", () -> {
|
||||
if (this.moduleList != null && !forceOverride) {
|
||||
if (this.moduleList != null && !forceRefresh) {
|
||||
callback.onResponse(this.moduleList);
|
||||
queueModuleDetails.next("list");
|
||||
return;
|
||||
@@ -124,8 +123,8 @@ public class KVVModuleList extends HTTPService {
|
||||
this.moduleList.save(context);
|
||||
}
|
||||
|
||||
public void getModule(int index, final NetworkCallback<Modules.Module> callback, final NetworkErrorCallback errorCallback) {
|
||||
this.getModuleList(success -> callback.onResponse(success.get(index)), errorCallback);
|
||||
public void getModule(int index, final NetworkCallback<Modules.Module> callback, final NetworkErrorCallback errorCallback, boolean forceRefresh) {
|
||||
this.getModuleList(success -> callback.onResponse(success.get(index)), errorCallback, forceRefresh);
|
||||
}
|
||||
|
||||
|
||||
@@ -133,11 +132,7 @@ public class KVVModuleList extends HTTPService {
|
||||
|
||||
|
||||
|
||||
public void getModuleDetails(Modules.Module module, final NetworkCallback<Modules.Module> callback, final NetworkErrorCallback errorCallback) {
|
||||
this.getModuleDetails(module, callback, errorCallback, false);
|
||||
}
|
||||
|
||||
public void getModuleDetails(Modules.Module module, final NetworkCallback<Modules.Module> callback, final NetworkErrorCallback errorCallback, boolean forceOverride) {
|
||||
public void getModuleDetails(Modules.Module module, final NetworkCallback<Modules.Module> callback, final NetworkErrorCallback errorCallback, boolean forceRefresh) {
|
||||
AtomicInteger returns = new AtomicInteger(0);
|
||||
AtomicReference<NetworkError> lastError = new AtomicReference<>(null);
|
||||
final int items = 4;
|
||||
@@ -158,10 +153,10 @@ public class KVVModuleList extends HTTPService {
|
||||
}
|
||||
};
|
||||
Runnable[] methods = { // UPDATE VARIABLE items ABOVE
|
||||
() -> this.getAssignments(module, successCb, errorCb, forceOverride),
|
||||
() -> this.getEvents(module, successCb, errorCb, forceOverride),
|
||||
() -> this.getAnnouncements(module, successCb, errorCb, forceOverride),
|
||||
() -> this.getGradebook(module, successCb, errorCb, forceOverride)
|
||||
() -> this.getAssignments(module, successCb, errorCb, forceRefresh),
|
||||
() -> this.getEvents(module, successCb, errorCb, forceRefresh),
|
||||
() -> this.getAnnouncements(module, successCb, errorCb, forceRefresh),
|
||||
() -> this.getGradebook(module, successCb, errorCb, forceRefresh)
|
||||
};
|
||||
//noinspection ConstantConditions
|
||||
if (methods.length != items) throw new AssertionError();
|
||||
@@ -173,13 +168,11 @@ public class KVVModuleList extends HTTPService {
|
||||
|
||||
|
||||
|
||||
public void getAnnouncements(Modules.Module module, final NetworkCallback<Modules.Module> callback, final NetworkErrorCallback errorCallback) {
|
||||
getAnnouncements(module, callback, errorCallback, false);
|
||||
}
|
||||
|
||||
public void getAnnouncements(Modules.Module module, final NetworkCallback<Modules.Module> callback, final NetworkErrorCallback errorCallback, boolean forceOverride) {
|
||||
|
||||
public void getAnnouncements(Modules.Module module, final NetworkCallback<Modules.Module> callback, final NetworkErrorCallback errorCallback, boolean forceRefresh) {
|
||||
queueModuleDetails.add(module.getID(), () -> {
|
||||
if (module.announcements != null && !forceOverride) {
|
||||
if (module.announcements != null && !forceRefresh) {
|
||||
callback.onResponse(module);
|
||||
queueModuleDetails.next(module.getID());
|
||||
return;
|
||||
@@ -227,13 +220,10 @@ public class KVVModuleList extends HTTPService {
|
||||
|
||||
|
||||
|
||||
public void getAssignments(Modules.Module module, final NetworkCallback<Modules.Module> callback, final NetworkErrorCallback errorCallback) {
|
||||
getAssignments(module, callback, errorCallback, false);
|
||||
}
|
||||
|
||||
public void getAssignments(Modules.Module module, final NetworkCallback<Modules.Module> callback, final NetworkErrorCallback errorCallback, boolean forceOverride) {
|
||||
public void getAssignments(Modules.Module module, final NetworkCallback<Modules.Module> callback, final NetworkErrorCallback errorCallback, boolean forceRefresh) {
|
||||
queueModuleDetails.add(module.getID(), () -> {
|
||||
if (module.assignments != null && !forceOverride) {
|
||||
if (module.assignments != null && !forceRefresh) {
|
||||
callback.onResponse(module);
|
||||
queueModuleDetails.next(module.getID());
|
||||
return;
|
||||
@@ -295,13 +285,9 @@ public class KVVModuleList extends HTTPService {
|
||||
|
||||
|
||||
|
||||
public void getEvents(Modules.Module module, final NetworkCallback<Modules.Module> callback, final NetworkErrorCallback errorCallback) {
|
||||
getEvents(module, callback, errorCallback, false);
|
||||
}
|
||||
|
||||
public void getEvents(Modules.Module module, final NetworkCallback<Modules.Module> callback, final NetworkErrorCallback errorCallback, boolean forceOverride) {
|
||||
public void getEvents(Modules.Module module, final NetworkCallback<Modules.Module> callback, final NetworkErrorCallback errorCallback, boolean forceRefresh) {
|
||||
queueModuleDetails.add(module.getID(), () -> {
|
||||
if (module.events != null && !forceOverride) {
|
||||
if (module.events != null && !forceRefresh) {
|
||||
callback.onResponse(module);
|
||||
queueModuleDetails.next(module.getID());
|
||||
return;
|
||||
@@ -350,13 +336,9 @@ public class KVVModuleList extends HTTPService {
|
||||
|
||||
|
||||
|
||||
public void getGradebook(Modules.Module module, final NetworkCallback<Modules.Module> callback, final NetworkErrorCallback errorCallback) {
|
||||
getGradebook(module, callback, errorCallback, false);
|
||||
}
|
||||
|
||||
public void getGradebook(Modules.Module module, final NetworkCallback<Modules.Module> callback, final NetworkErrorCallback errorCallback, boolean forceOverride) {
|
||||
public void getGradebook(Modules.Module module, final NetworkCallback<Modules.Module> callback, final NetworkErrorCallback errorCallback, boolean forceRefresh) {
|
||||
queueModuleDetails.add(module.getID(), () -> {
|
||||
if (module.gradebook != null && !forceOverride) {
|
||||
if (module.gradebook != null && !forceRefresh) {
|
||||
callback.onResponse(module);
|
||||
queueModuleDetails.next(module.getID());
|
||||
return;
|
||||
|
||||
Reference in New Issue
Block a user