summaryrefslogtreecommitdiff
path: root/app/src/main/java/de/danoeh
diff options
context:
space:
mode:
authorH. Lehmann <ByteHamster@users.noreply.github.com>2020-02-02 10:04:12 +0100
committerGitHub <noreply@github.com>2020-02-02 10:04:12 +0100
commitc16385743c7287b32f9c3cacc300e0225d4fefa8 (patch)
treeab24309bdffa62026d7cf8f909982323b240b45a /app/src/main/java/de/danoeh
parent37ef5438bb83cb4b1305b2e8323fca714554ddc9 (diff)
parentedef730bd4bb642cc3d0b8496be34ef3c8e59b20 (diff)
downloadAntennaPod-c16385743c7287b32f9c3cacc300e0225d4fefa8.zip
Merge pull request #3814 from ByteHamster/clean-up-statistics
Clean up statistics
Diffstat (limited to 'app/src/main/java/de/danoeh')
-rw-r--r--app/src/main/java/de/danoeh/antennapod/adapter/DownloadStatisticsListAdapter.java14
-rw-r--r--app/src/main/java/de/danoeh/antennapod/adapter/PlaybackStatisticsListAdapter.java14
-rw-r--r--app/src/main/java/de/danoeh/antennapod/adapter/StatisticsListAdapter.java22
-rw-r--r--app/src/main/java/de/danoeh/antennapod/fragment/preferences/DownloadStatisticsFragment.java6
-rw-r--r--app/src/main/java/de/danoeh/antennapod/fragment/preferences/PlaybackStatisticsFragment.java10
5 files changed, 38 insertions, 28 deletions
diff --git a/app/src/main/java/de/danoeh/antennapod/adapter/DownloadStatisticsListAdapter.java b/app/src/main/java/de/danoeh/antennapod/adapter/DownloadStatisticsListAdapter.java
index 227eea6e0..c49d2f39d 100644
--- a/app/src/main/java/de/danoeh/antennapod/adapter/DownloadStatisticsListAdapter.java
+++ b/app/src/main/java/de/danoeh/antennapod/adapter/DownloadStatisticsListAdapter.java
@@ -3,10 +3,12 @@ package de.danoeh.antennapod.adapter;
import android.content.Context;
import de.danoeh.antennapod.R;
-import de.danoeh.antennapod.core.storage.DBReader;
+import de.danoeh.antennapod.core.storage.StatisticsItem;
import de.danoeh.antennapod.core.util.Converter;
import de.danoeh.antennapod.view.PieChartView;
+import java.util.List;
+
/**
* Adapter for the download statistics list.
*/
@@ -27,17 +29,17 @@ public class DownloadStatisticsListAdapter extends StatisticsListAdapter {
}
@Override
- PieChartView.PieChartData generateChartData(DBReader.StatisticsData statisticsData) {
- float[] dataValues = new float[statisticsData.feeds.size()];
- for (int i = 0; i < statisticsData.feeds.size(); i++) {
- DBReader.StatisticsItem item = statisticsData.feeds.get(i);
+ PieChartView.PieChartData generateChartData(List<StatisticsItem> statisticsData) {
+ float[] dataValues = new float[statisticsData.size()];
+ for (int i = 0; i < statisticsData.size(); i++) {
+ StatisticsItem item = statisticsData.get(i);
dataValues[i] = item.totalDownloadSize;
}
return new PieChartView.PieChartData(dataValues);
}
@Override
- void onBindFeedViewHolder(StatisticsHolder holder, DBReader.StatisticsItem item) {
+ void onBindFeedViewHolder(StatisticsHolder holder, StatisticsItem item) {
holder.value.setText(Converter.byteToString(item.totalDownloadSize));
}
diff --git a/app/src/main/java/de/danoeh/antennapod/adapter/PlaybackStatisticsListAdapter.java b/app/src/main/java/de/danoeh/antennapod/adapter/PlaybackStatisticsListAdapter.java
index 8471569d3..c5a73c53e 100644
--- a/app/src/main/java/de/danoeh/antennapod/adapter/PlaybackStatisticsListAdapter.java
+++ b/app/src/main/java/de/danoeh/antennapod/adapter/PlaybackStatisticsListAdapter.java
@@ -4,10 +4,12 @@ import android.content.Context;
import androidx.appcompat.app.AlertDialog;
import de.danoeh.antennapod.R;
-import de.danoeh.antennapod.core.storage.DBReader;
+import de.danoeh.antennapod.core.storage.StatisticsItem;
import de.danoeh.antennapod.core.util.Converter;
import de.danoeh.antennapod.view.PieChartView;
+import java.util.List;
+
/**
* Adapter for the playback statistics list.
*/
@@ -34,17 +36,17 @@ public class PlaybackStatisticsListAdapter extends StatisticsListAdapter {
}
@Override
- PieChartView.PieChartData generateChartData(DBReader.StatisticsData statisticsData) {
- float[] dataValues = new float[statisticsData.feeds.size()];
- for (int i = 0; i < statisticsData.feeds.size(); i++) {
- DBReader.StatisticsItem item = statisticsData.feeds.get(i);
+ PieChartView.PieChartData generateChartData(List<StatisticsItem> statisticsData) {
+ float[] dataValues = new float[statisticsData.size()];
+ for (int i = 0; i < statisticsData.size(); i++) {
+ StatisticsItem item = statisticsData.get(i);
dataValues[i] = countAll ? item.timePlayedCountAll : item.timePlayed;
}
return new PieChartView.PieChartData(dataValues);
}
@Override
- void onBindFeedViewHolder(StatisticsHolder holder, DBReader.StatisticsItem statsItem) {
+ void onBindFeedViewHolder(StatisticsHolder holder, StatisticsItem statsItem) {
long time = countAll ? statsItem.timePlayedCountAll : statsItem.timePlayed;
holder.value.setText(Converter.shortLocalizedDuration(context, time));
diff --git a/app/src/main/java/de/danoeh/antennapod/adapter/StatisticsListAdapter.java b/app/src/main/java/de/danoeh/antennapod/adapter/StatisticsListAdapter.java
index db65190f2..5f019d1db 100644
--- a/app/src/main/java/de/danoeh/antennapod/adapter/StatisticsListAdapter.java
+++ b/app/src/main/java/de/danoeh/antennapod/adapter/StatisticsListAdapter.java
@@ -14,9 +14,11 @@ import com.bumptech.glide.request.RequestOptions;
import de.danoeh.antennapod.R;
import de.danoeh.antennapod.core.glide.ApGlideSettings;
-import de.danoeh.antennapod.core.storage.DBReader;
+import de.danoeh.antennapod.core.storage.StatisticsItem;
import de.danoeh.antennapod.view.PieChartView;
+import java.util.List;
+
/**
* Parent Adapter for the playback and download statistics list.
*/
@@ -24,7 +26,7 @@ public abstract class StatisticsListAdapter extends RecyclerView.Adapter<Recycle
private static final int TYPE_HEADER = 0;
private static final int TYPE_FEED = 1;
final Context context;
- private DBReader.StatisticsData statisticsData;
+ private List<StatisticsItem> statisticsData;
PieChartView.PieChartData pieChartData;
StatisticsListAdapter(Context context) {
@@ -33,14 +35,14 @@ public abstract class StatisticsListAdapter extends RecyclerView.Adapter<Recycle
@Override
public int getItemCount() {
- return statisticsData.feeds.size() + 1;
+ return statisticsData.size() + 1;
}
- public DBReader.StatisticsItem getItem(int position) {
+ public StatisticsItem getItem(int position) {
if (position == 0) {
return null;
}
- return statisticsData.feeds.get(position - 1);
+ return statisticsData.get(position - 1);
}
@Override
@@ -69,7 +71,7 @@ public abstract class StatisticsListAdapter extends RecyclerView.Adapter<Recycle
holder.totalTime.setText(getHeaderValue());
} else {
StatisticsHolder holder = (StatisticsHolder) h;
- DBReader.StatisticsItem statsItem = statisticsData.feeds.get(position - 1);
+ StatisticsItem statsItem = statisticsData.get(position - 1);
Glide.with(context)
.load(statsItem.feed.getImageLocation())
.apply(new RequestOptions()
@@ -86,8 +88,8 @@ public abstract class StatisticsListAdapter extends RecyclerView.Adapter<Recycle
}
}
- public void update(DBReader.StatisticsData statistics) {
- this.statisticsData = statistics;
+ public void update(List<StatisticsItem> statistics) {
+ statisticsData = statistics;
pieChartData = generateChartData(statistics);
notifyDataSetChanged();
}
@@ -122,7 +124,7 @@ public abstract class StatisticsListAdapter extends RecyclerView.Adapter<Recycle
abstract String getHeaderValue();
- abstract PieChartView.PieChartData generateChartData(DBReader.StatisticsData statisticsData);
+ abstract PieChartView.PieChartData generateChartData(List<StatisticsItem> statisticsData);
- abstract void onBindFeedViewHolder(StatisticsHolder holder, DBReader.StatisticsItem item);
+ abstract void onBindFeedViewHolder(StatisticsHolder holder, StatisticsItem item);
}
diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/preferences/DownloadStatisticsFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/preferences/DownloadStatisticsFragment.java
index 34ea6d6e3..3059d7ad2 100644
--- a/app/src/main/java/de/danoeh/antennapod/fragment/preferences/DownloadStatisticsFragment.java
+++ b/app/src/main/java/de/danoeh/antennapod/fragment/preferences/DownloadStatisticsFragment.java
@@ -16,6 +16,7 @@ import androidx.recyclerview.widget.RecyclerView;
import de.danoeh.antennapod.R;
import de.danoeh.antennapod.adapter.DownloadStatisticsListAdapter;
import de.danoeh.antennapod.core.storage.DBReader;
+import de.danoeh.antennapod.core.storage.StatisticsItem;
import de.danoeh.antennapod.core.util.comparator.CompareCompat;
import io.reactivex.Observable;
import io.reactivex.android.schedulers.AndroidSchedulers;
@@ -23,6 +24,7 @@ import io.reactivex.disposables.Disposable;
import io.reactivex.schedulers.Schedulers;
import java.util.Collections;
+import java.util.List;
/**
* Displays the 'download statistics' screen
@@ -71,8 +73,8 @@ public class DownloadStatisticsFragment extends Fragment {
disposable =
Observable.fromCallable(() -> {
- DBReader.StatisticsData statisticsData = DBReader.getStatistics();
- Collections.sort(statisticsData.feeds, (item1, item2) ->
+ List<StatisticsItem> statisticsData = DBReader.getStatistics();
+ Collections.sort(statisticsData, (item1, item2) ->
CompareCompat.compareLong(item1.totalDownloadSize, item2.totalDownloadSize));
return statisticsData;
})
diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/preferences/PlaybackStatisticsFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/preferences/PlaybackStatisticsFragment.java
index bed767e8e..d25dff743 100644
--- a/app/src/main/java/de/danoeh/antennapod/fragment/preferences/PlaybackStatisticsFragment.java
+++ b/app/src/main/java/de/danoeh/antennapod/fragment/preferences/PlaybackStatisticsFragment.java
@@ -27,6 +27,7 @@ import de.danoeh.antennapod.adapter.PlaybackStatisticsListAdapter;
import de.danoeh.antennapod.core.dialog.ConfirmationDialog;
import de.danoeh.antennapod.core.storage.DBReader;
import de.danoeh.antennapod.core.storage.DBWriter;
+import de.danoeh.antennapod.core.storage.StatisticsItem;
import de.danoeh.antennapod.core.util.comparator.CompareCompat;
import io.reactivex.Completable;
import io.reactivex.Observable;
@@ -35,6 +36,7 @@ import io.reactivex.disposables.Disposable;
import io.reactivex.schedulers.Schedulers;
import java.util.Collections;
+import java.util.List;
/**
* Displays the 'playback statistics' screen
@@ -180,13 +182,13 @@ public class PlaybackStatisticsFragment extends Fragment {
}, error -> Log.e(TAG, Log.getStackTraceString(error)));
}
- private DBReader.StatisticsData fetchStatistics() {
- DBReader.StatisticsData statisticsData = DBReader.getStatistics();
+ private List<StatisticsItem> fetchStatistics() {
+ List<StatisticsItem> statisticsData = DBReader.getStatistics();
if (countAll) {
- Collections.sort(statisticsData.feeds, (item1, item2) ->
+ Collections.sort(statisticsData, (item1, item2) ->
CompareCompat.compareLong(item1.timePlayedCountAll, item2.timePlayedCountAll));
} else {
- Collections.sort(statisticsData.feeds, (item1, item2) ->
+ Collections.sort(statisticsData, (item1, item2) ->
CompareCompat.compareLong(item1.timePlayed, item2.timePlayed));
}
return statisticsData;