UpgradeModule removed

This commit is contained in:
Caesar2011
2018-05-10 18:45:01 +02:00
parent c9a5f9972d
commit 55f06830b0
13 changed files with 48 additions and 121 deletions

Binary file not shown.

22
.idea/compiler.xml generated
View File

@@ -1,22 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CompilerConfiguration">
<resourceExtensions />
<wildcardResourcePatterns>
<entry name="!?*.java" />
<entry name="!?*.form" />
<entry name="!?*.class" />
<entry name="!?*.groovy" />
<entry name="!?*.scala" />
<entry name="!?*.flex" />
<entry name="!?*.kt" />
<entry name="!?*.clj" />
<entry name="!?*.aj" />
</wildcardResourcePatterns>
<annotationProcessing>
<profile default="true" name="Default" enabled="false">
<processorPath useClasspath="true" />
</profile>
</annotationProcessing>
</component>
</project>

View File

@@ -1,3 +0,0 @@
<component name="CopyrightManager">
<settings default="" />
</component>

30
.idea/misc.xml generated
View File

@@ -5,11 +5,12 @@
<option name="myDefaultNotNull" value="android.support.annotation.NonNull" />
<option name="myNullables">
<value>
<list size="4">
<list size="5">
<item index="0" class="java.lang.String" itemvalue="org.jetbrains.annotations.Nullable" />
<item index="1" class="java.lang.String" itemvalue="javax.annotation.Nullable" />
<item index="2" class="java.lang.String" itemvalue="edu.umd.cs.findbugs.annotations.Nullable" />
<item index="3" class="java.lang.String" itemvalue="android.support.annotation.Nullable" />
<item index="2" class="java.lang.String" itemvalue="javax.annotation.CheckForNull" />
<item index="3" class="java.lang.String" itemvalue="edu.umd.cs.findbugs.annotations.Nullable" />
<item index="4" class="java.lang.String" itemvalue="android.support.annotation.Nullable" />
</list>
</value>
</option>
@@ -24,26 +25,5 @@
</value>
</option>
</component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="true" project-jdk-name="1.8" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/build/classes" />
</component>
<component name="ProjectType">
<option name="id" value="Android" />
</component>
<component name="masterDetails">
<states>
<state key="ProjectJDKs.UI">
<settings>
<last-edited>1.8</last-edited>
<splitter-proportions>
<option name="proportions">
<list>
<option value="0.2" />
</list>
</option>
</splitter-proportions>
</settings>
</state>
</states>
</component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="true" project-jdk-name="1.8 (2)" project-jdk-type="JavaSDK" />
</project>

2
.idea/modules.xml generated
View File

@@ -2,7 +2,7 @@
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/FUPlanner.iml" filepath="$PROJECT_DIR$/FUPlanner.iml" />
<module fileurl="file://$PROJECT_DIR$/.idea/FUPlanner.iml" filepath="$PROJECT_DIR$/.idea/FUPlanner.iml" />
<module fileurl="file://$PROJECT_DIR$/app/app.iml" filepath="$PROJECT_DIR$/app/app.iml" />
</modules>
</component>

1
.idea/vcs.xml generated
View File

@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="" vcs="Git" />
<mapping directory="$PROJECT_DIR$" vcs="Git" />
</component>
</project>

View File

@@ -14,6 +14,7 @@ import android.view.ViewGroup;
import de.sebse.fuplanner.MainActivity;
import de.sebse.fuplanner.R;
import de.sebse.fuplanner.services.KVV.Modules;
import de.sebse.fuplanner.tools.logging.Logger;
import de.sebse.fuplanner.tools.network.NetworkCallback;
import de.sebse.fuplanner.tools.network.NetworkError;
import de.sebse.fuplanner.tools.network.NetworkErrorCallback;
@@ -30,6 +31,7 @@ public class ModulesFragment extends Fragment {
//private static final String ARG_COLUMN_COUNT = "column-count";
// TODO: Customize parameters
private OnModulesFragmentInteractionListener mListener;
private Logger log = new Logger(this);
/**
* Mandatory empty constructor for the fragment manager to instantiate the
@@ -76,6 +78,7 @@ public class ModulesFragment extends Fragment {
((MainActivity) getActivity()).getKVV().getModuleList(new NetworkCallback<Modules>() {
@Override
public void onResponse(@NonNull Modules success) {
log.d(success);
adapter.setModules(success);
}
}, new NetworkErrorCallback() {

View File

@@ -73,7 +73,7 @@ public class ModDetailOverviewFragment extends Fragment {
View view = inflater.inflate(R.layout.fragment_mod_detail_overview, container, false);
if (activity != null) {
KVV kvv = activity.getKVV();
kvv.getModuleDetails(mItemPos, new NetworkCallback<Modules.UpgradeModule>() {
/*kvv.getModuleDetails(mItemPos, new NetworkCallback<Modules.UpgradeModule>() {
@Override
public void onResponse(@NonNull Modules.UpgradeModule success) {
log.d(success);
@@ -84,7 +84,7 @@ public class ModDetailOverviewFragment extends Fragment {
public void onError(NetworkError error) {
log.e(error);
}
});
});*/
}
return view;
}

View File

@@ -94,6 +94,7 @@ public class GoogleAuth {
// This means only a hint is available, but we are handling that
// elsewhere so no need to act here.
} else {
credentialsListener.onCredentials(null);
Log.w(TAG, "Unexpected status code: " + ae.getStatusCode());
}
}

View File

@@ -56,7 +56,7 @@ public class KVV {
});
}
public void getModuleDetails(final int index, final NetworkCallback<Modules.UpgradeModule> callback, final NetworkErrorCallback error) {
/*public void getModuleDetails(final int index, final NetworkCallback<Modules.UpgradeModule> callback, final NetworkErrorCallback error) {
this.getLastToken(new LastTokenCallback() {
@Override
public void onReceived(LoginToken token) {
@@ -68,7 +68,7 @@ public class KVV {
modules.getModuleDetails(index, callback, error);
}
});
}
}*/
private void getLastToken(LastTokenCallback lastTokenCallback) {
if (this.isUpdating) {

View File

@@ -146,7 +146,7 @@ public class KVVModuleList extends HTTPService {
});
}
*/
public void getModuleList(NetworkCallback<Modules> callback, final NetworkErrorCallback errorCallback) {
public void getModuleList(final NetworkCallback<Modules> callback, final NetworkErrorCallback errorCallback) {
get("https://kvv.imp.fu-berlin.de/direct/site.json", token.getCookies(), new Response.Listener<Result>() {
@Override
public void onResponse(Result response) {
@@ -155,24 +155,27 @@ public class KVVModuleList extends HTTPService {
errorCallback.onError(new NetworkError(101101, 403, "No module list retreived!"));
return;
}
Modules modules = new Modules();
try {
JSONObject json = new JSONObject(body);
JSONArray sites = json.getJSONArray("site_collection");
for (int i = 0; i < sites.length(); i++) {
JSONObject site = sites.getJSONObject(i);
moduleList = new Modules();
String semester = site.getJSONObject("props").getString("term_eid");
HashSet<String> lvNumbers = new HashSet<>();
for (MatchResult matchResult: allMatches("[0-9]*", site.getJSONObject("props").getString("kvv_lvnumbers"))) {
for (MatchResult matchResult : allMatches(Pattern.compile("[0-9]+"), site.getJSONObject("props").getString("kvv_lvnumbers"))) {
lvNumbers.add(matchResult.group());
}
String title = site.getJSONObject("props").getString("entityTitle");
String title = site.getString("entityTitle");
HashSet<Lecturer> lecturers = new HashSet<>();
for (String lecturer : site.getJSONObject("props").getString("kvv_lecturers").split("#")) {
if (lecturer.length() > 2)
lecturers.add(new Lecturer(lecturer));
}
moduleList.addModule(semester, lvNumbers, title, lecturers, "", "");
String type = site.getJSONObject("props").getString("kvv_coursetype");
String id = site.getString("id");
modules.addModule(semester, lvNumbers, title, lecturers, type, id);
}
} catch (JSONException e) {
errorCallback.onError(new NetworkError(101102, 403, "Cannot parse module list!"));
@@ -181,6 +184,8 @@ public class KVVModuleList extends HTTPService {
errorCallback.onError(new NetworkError(101103, 403, "Cannot parse module list!"));
return;
}
moduleList = modules;
callback.onResponse(moduleList);
}
}, new Response.ErrorListener() {
@Override
@@ -192,7 +197,7 @@ public class KVVModuleList extends HTTPService {
public void getModuleDetails(final int index, final NetworkCallback<Modules.UpgradeModule> callback, final NetworkErrorCallback errorCallback) {
/*public void getModuleDetails(final int index, final NetworkCallback<Modules.UpgradeModule> callback, final NetworkErrorCallback errorCallback) {
queueModuleDetails.add(new AsyncQueue.AsyncQueueCallback() {
@Override
public void run() {
@@ -225,7 +230,7 @@ public class KVVModuleList extends HTTPService {
private void upgradeModule(Modules.SimpleModule module, final NetworkCallback<String> callback, final NetworkErrorCallback errorCallback) {
callback.onResponse("cool ID");
}
}*/

View File

@@ -30,4 +30,11 @@ class Lecturer {
public String getMail() {
return mail;
}
@Override
public String toString() {
return "First name: "+getFirstname()+
"\nSurname: "+getSurname()+
"\nMail: "+getMail();
}
}

View File

@@ -1,7 +1,6 @@
package de.sebse.fuplanner.services.KVV;
import android.support.annotation.NonNull;
import android.util.Pair;
import java.util.ArrayList;
import java.util.HashSet;
@@ -14,37 +13,22 @@ import de.sebse.fuplanner.tools.Triplet;
* Created by sebastian on 29.10.17.
*/
public class Modules extends EventEmitter<Triplet<Integer, Modules.UpgradeModule, ArrayList<String>>> implements Iterable<Modules.Module> {
public class Modules /*extends EventEmitter<Triplet<Integer, Modules.UpgradeModule, ArrayList<String>>>*/ implements Iterable<Modules.Module> {
private final ArrayList<Module> list;
Modules() {
this.list = new ArrayList<>();
}
Module addModule(String semester, HashSet<String> lvNumber, String title, HashSet<String> lecturer, String type, String upgradeURI) {
Module m = new SimpleModule(semester, lvNumber, title, lecturer, type, upgradeURI);
Module addModule(String semester, HashSet<String> lvNumber, String title, HashSet<Lecturer> lecturer, String type, String ID) {
Module m = new Module(semester, lvNumber, title, lecturer, type, ID);
this.list.add(m);
return m;
}
UpgradeModule upgradeItem(int index, String moduleID) {
Module sm = list.get(index);
if (sm instanceof SimpleModule) {
UpgradeModule um = new UpgradeModule((SimpleModule) sm, moduleID);
list.set(index, um);
return um;
} else {
return (UpgradeModule) sm;
}
}
public void setDescription(int index, String description) {
Module entry = this.list.get(index);
if (!(entry instanceof UpgradeModule)) {
return;
}
((UpgradeModule) entry).description = description;
emit(new Triplet<>(index, ((UpgradeModule) entry), new ArrayList<String>()));
@Override
public String toString() {
return this.list.toString();
}
@NonNull
@@ -77,19 +61,20 @@ public class Modules extends EventEmitter<Triplet<Integer, Modules.UpgradeModule
return this.list.get(index);
}
abstract public class Module {
public class Module {
public final String semester;
public final HashSet<String> lvNumber;
public final String title;
public final HashSet<String> lecturer;
public final HashSet<Lecturer> lecturer;
public final String type;
private final String ID;
/*private Module() {
this(null, null, null, null, null);
throw new AssertionError("Do not use this constructor!");
}*/
private Module(String semester, HashSet<String> lvNumber, String title, HashSet<String> lecturer, String type) {
private Module(String semester, HashSet<String> lvNumber, String title, HashSet<Lecturer> lecturer, String type, String ID) {
semester = semester.replace("Sommersemester", "SS").replace("Wintersemester", "WS");
semester = semester.replaceAll("[0-9]{2}([0-9]{2})", "$1");
@@ -98,6 +83,7 @@ public class Modules extends EventEmitter<Triplet<Integer, Modules.UpgradeModule
this.title = title;
this.lecturer = lecturer;
this.type = type;
this.ID = ID;
}
@Override
@@ -106,39 +92,8 @@ public class Modules extends EventEmitter<Triplet<Integer, Modules.UpgradeModule
"\nlvNumber: "+lvNumber.toString()+
"\ntitle: "+title+
"\nlecturer: "+lecturer.toString()+
"\ntype: "+type;
}
}
public class SimpleModule extends Module {
final String upgradeURI;
private SimpleModule(String semester, HashSet<String> lvNumber, String title, HashSet<String> lecturer, String type, String upgradeURI) {
super(semester, lvNumber, title, lecturer, type);
this.upgradeURI = upgradeURI;
}
@Override
public String toString() {
return super.toString()+
"\nupgradeURI: "+upgradeURI;
}
}
public class UpgradeModule extends Module {
final String moduleID;
public String description = null;
private UpgradeModule(SimpleModule module, String moduleID) {
super(module.semester, module.lvNumber, module.title, module.lecturer, module.type);
this.moduleID = moduleID;
}
@Override
public String toString() {
return super.toString()+
"\nmoduleID: "+moduleID+
"\ndescription: "+description;
"\ntype: "+type+
"\nID: "+ID;
}
}
}