From 1d1b1e7db91ee0cc6228f2a2a15e6a9d6c0c198d Mon Sep 17 00:00:00 2001 From: Caesar2011 Date: Wed, 4 Jul 2018 20:53:21 +0200 Subject: [PATCH] Comments removed --- .../java/de/sebse/fuplanner/MainActivity.java | 1 - .../fuplanner/fragments/ModulesFragment.java | 43 ++++++++++++------- .../moddetails/ModDetailOverviewFragment.java | 7 ++- .../de/sebse/fuplanner/services/KVV/KVV.java | 5 ++- .../fuplanner/services/KVV/KVVModuleList.java | 16 ++++--- .../main/res/layout/fragment_modules_list.xml | 16 ++++--- 6 files changed, 54 insertions(+), 34 deletions(-) diff --git a/app/src/main/java/de/sebse/fuplanner/MainActivity.java b/app/src/main/java/de/sebse/fuplanner/MainActivity.java index acbfa6b..36df966 100644 --- a/app/src/main/java/de/sebse/fuplanner/MainActivity.java +++ b/app/src/main/java/de/sebse/fuplanner/MainActivity.java @@ -136,7 +136,6 @@ public class MainActivity extends AppCompatActivity fragmentTransaction.commit(); break; case R.id.nav_schedule: - log.d("Stundenplan"); fragmentTransaction = fragmentManager.beginTransaction(); fragmentTransaction.replace(R.id.fragcontainer, ScheduleFragment.newInstance()); fragmentTransaction.commit(); diff --git a/app/src/main/java/de/sebse/fuplanner/fragments/ModulesFragment.java b/app/src/main/java/de/sebse/fuplanner/fragments/ModulesFragment.java index 8785b80..c4c23d6 100644 --- a/app/src/main/java/de/sebse/fuplanner/fragments/ModulesFragment.java +++ b/app/src/main/java/de/sebse/fuplanner/fragments/ModulesFragment.java @@ -4,6 +4,7 @@ import android.content.Context; import android.os.Bundle; import android.support.annotation.NonNull; import android.support.v4.app.Fragment; +import android.support.v4.widget.SwipeRefreshLayout; import android.support.v7.widget.LinearLayoutManager; import android.support.v7.widget.RecyclerView; import android.util.Log; @@ -13,6 +14,7 @@ import android.view.ViewGroup; import de.sebse.fuplanner.MainActivity; import de.sebse.fuplanner.R; +import de.sebse.fuplanner.services.KVV.KVV; import de.sebse.fuplanner.tools.logging.Logger; /** @@ -28,6 +30,8 @@ public class ModulesFragment extends Fragment { // TODO: Customize parameters private OnModulesFragmentInteractionListener mListener; private Logger log = new Logger(this); + private ModulesRecyclerViewAdapter adapter; + private SwipeRefreshLayout swipeLayout; /** * Mandatory empty constructor for the fragment manager to instantiate the @@ -58,28 +62,37 @@ public class ModulesFragment extends Fragment { @Override public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { - Log.d("ModFrag", "onCreateView"+(getActivity() != null)); + View view = inflater.inflate(R.layout.fragment_modules_list, container, false); - // Set the adapter - if (view instanceof RecyclerView) { - Context context = view.getContext(); - RecyclerView recyclerView = (RecyclerView) view; - recyclerView.setLayoutManager(new LinearLayoutManager(context)); - final ModulesRecyclerViewAdapter adapter = new ModulesRecyclerViewAdapter(mListener); - recyclerView.setAdapter(adapter); + Context context = view.getContext(); + RecyclerView recyclerView = view.findViewById(R.id.list); + recyclerView.setLayoutManager(new LinearLayoutManager(context)); + adapter = new ModulesRecyclerViewAdapter(mListener); + recyclerView.setAdapter(adapter); + // Getting SwipeContainerLayout + swipeLayout = view.findViewById(R.id.swipe_container); + // Adding Listener + swipeLayout.setOnRefreshListener(() -> refresh(true)); + refresh(false); - if (getActivity() != null) { - ((MainActivity) getActivity()).getKVV().getModuleList(success -> { - log.d(success); - adapter.setModules(success); - }, error -> Log.e("ModFrag", error.toString())); - } - } return view; } + private void refresh(boolean forceRefresh) { + if (getActivity() != null) { + KVV kvv = ((MainActivity) getActivity()).getKVV(); + kvv.getModuleList(success -> { + adapter.setModules(success); + swipeLayout.setRefreshing(false); + }, error -> { + log.e(error.toString()); + swipeLayout.setRefreshing(false); + }, forceRefresh); + } + } + @Override public void onAttach(Context context) { 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 871d36c..06fd8a3 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 @@ -92,16 +92,15 @@ public class ModDetailOverviewFragment extends Fragment { if (getActivity() != null) { KVV kvv = ((MainActivity) getActivity()).getKVV(); kvv.getModuleList((Modules success) -> { - log.d(success); Modules.Module module = success.get(mItemPos); - log.d("Print c"); adapter.setModule(module); - kvv.getModuleDetails(module, module1 -> { + kvv.getModuleDetails(module, pair -> { adapter.setModule(); + if (pair.second) + swipeLayout.setRefreshing(false); }, error -> log.e(error)); }, error -> log.e(error), forceRefresh); } - swipeLayout.setRefreshing(false); } } 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 addd2e3..ec2e618 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 @@ -2,6 +2,7 @@ package de.sebse.fuplanner.services.KVV; import android.content.Context; import android.support.annotation.NonNull; +import android.util.Pair; import java.util.ArrayList; import java.util.HashMap; @@ -60,11 +61,11 @@ public class KVV { }); } - public void getModuleDetails(Modules.Module module, final NetworkCallback callback, final NetworkErrorCallback error) { + public void getModuleDetails(Modules.Module module, final NetworkCallback> callback, final NetworkErrorCallback error) { getModuleDetails(module, callback, error, false); } - public void getModuleDetails(Modules.Module module, final NetworkCallback callback, final NetworkErrorCallback error, boolean forceRefresh) { + public void getModuleDetails(Modules.Module module, final NetworkCallback> callback, final NetworkErrorCallback error, boolean forceRefresh) { this.getLastToken(token -> { KVVModuleList modules = (KVVModuleList) addons.get("modules"); if (modules == null) { 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 fd8b920..0eb7488 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 @@ -1,6 +1,7 @@ package de.sebse.fuplanner.services.KVV; import android.content.Context; +import android.util.Pair; import net.htmlparser.jericho.Source; @@ -71,7 +72,6 @@ public class KVVModuleList extends HTTPService { } public void getModuleListUpgrade(final NetworkCallback callback, final NetworkErrorCallback errorCallback) { - log.d("Module List refreshed"); get("https://kvv.imp.fu-berlin.de/direct/site.json", token.getCookies(), response -> { String body = response.getParsed(); if (body == null) { @@ -132,14 +132,15 @@ public class KVVModuleList extends HTTPService { - public void getModuleDetails(Modules.Module module, final NetworkCallback callback, final NetworkErrorCallback errorCallback, boolean forceRefresh) { + public void getModuleDetails(Modules.Module module, final NetworkCallback> callback, final NetworkErrorCallback errorCallback, boolean forceRefresh) { AtomicInteger returns = new AtomicInteger(0); AtomicReference lastError = new AtomicReference<>(null); final int items = 4; NetworkCallback successCb = success -> { returns.getAndIncrement(); - callback.onResponse(module); - if (returns.get() == items-1) { + callback.onResponse(Pair.create(module, false)); + if (returns.get() == items) { + callback.onResponse(Pair.create(module, true)); if (lastError.get() != null) errorCallback.onError(lastError.get()); } @@ -147,7 +148,8 @@ public class KVVModuleList extends HTTPService { NetworkErrorCallback errorCb = error -> { lastError.set(error); returns.getAndIncrement(); - if (returns.get() == items-1) { + if (returns.get() == items) { + callback.onResponse(Pair.create(module, true)); if (lastError.get() != null) errorCallback.onError(lastError.get()); } @@ -186,7 +188,7 @@ public class KVVModuleList extends HTTPService { } private void getAnnouncementsUpgrade(String ID, final NetworkCallback> callback, final NetworkErrorCallback errorCallback) { - log.d("SITE GET URL", String.format("https://kvv.imp.fu-berlin.de/direct/announcement/site/%s.json?n=999999&d=999999999", ID)); + //log.d("SITE GET URL", String.format("https://kvv.imp.fu-berlin.de/direct/announcement/site/%s.json?n=999999&d=999999999", ID)); get(String.format("https://kvv.imp.fu-berlin.de/direct/announcement/site/%s.json?n=999999&d=999999999", ID), token.getCookies(), response -> { String body = response.getParsed(); if (body == null) { @@ -199,7 +201,7 @@ public class KVVModuleList extends HTTPService { JSONArray sites = json.getJSONArray("announcement_collection"); for (int i = 0; i < sites.length(); i++) { - log.d("ANNOUNCEMENT FOUND!", i); + //log.d("ANNOUNCEMENT FOUND!", i); JSONObject site = sites.getJSONObject(i); String id = site.getString("announcementId"); String title = site.getString("title"); diff --git a/app/src/main/res/layout/fragment_modules_list.xml b/app/src/main/res/layout/fragment_modules_list.xml index bd04f91..d8ea530 100644 --- a/app/src/main/res/layout/fragment_modules_list.xml +++ b/app/src/main/res/layout/fragment_modules_list.xml @@ -1,7 +1,12 @@ - + + tools:context=".fragments.moddetails.ModDetailOverviewFragment" + tools:listitem="@layout/list_all_caption" /> + \ No newline at end of file