aboutsummaryrefslogtreecommitdiff
path: root/app/src/main/java/github/daneren2005/dsub/service/CachedMusicService.java
diff options
context:
space:
mode:
authorScott Jackson <daneren2005@gmail.com>2015-07-27 22:01:48 -0700
committerScott Jackson <daneren2005@gmail.com>2015-07-27 22:01:48 -0700
commit40376e95b425fd82b04eba7e1078800dbf40759f (patch)
treefbaa5585f5dd092feb22f5924a327d162034eead /app/src/main/java/github/daneren2005/dsub/service/CachedMusicService.java
parent900caeea647200ae21f676f355d6fa87557954ce (diff)
downloaddsub-40376e95b425fd82b04eba7e1078800dbf40759f.tar.gz
dsub-40376e95b425fd82b04eba7e1078800dbf40759f.tar.bz2
dsub-40376e95b425fd82b04eba7e1078800dbf40759f.zip
Show error if network error on hard refresh of album lists
Diffstat (limited to 'app/src/main/java/github/daneren2005/dsub/service/CachedMusicService.java')
-rw-r--r--app/src/main/java/github/daneren2005/dsub/service/CachedMusicService.java18
1 files changed, 13 insertions, 5 deletions
diff --git a/app/src/main/java/github/daneren2005/dsub/service/CachedMusicService.java b/app/src/main/java/github/daneren2005/dsub/service/CachedMusicService.java
index 3bc7f2a3..f053c215 100644
--- a/app/src/main/java/github/daneren2005/dsub/service/CachedMusicService.java
+++ b/app/src/main/java/github/daneren2005/dsub/service/CachedMusicService.java
@@ -51,7 +51,6 @@ import github.daneren2005.dsub.domain.SearchCritera;
import github.daneren2005.dsub.domain.SearchResult;
import github.daneren2005.dsub.domain.Share;
import github.daneren2005.dsub.domain.User;
-import github.daneren2005.dsub.util.Pair;
import github.daneren2005.dsub.util.SilentBackgroundTask;
import github.daneren2005.dsub.util.ProgressListener;
import github.daneren2005.dsub.util.TimeLimitedCache;
@@ -384,9 +383,9 @@ public class CachedMusicService implements MusicService {
}
@Override
- public MusicDirectory getAlbumList(String type, int size, int offset, Context context, ProgressListener progressListener) throws Exception {
+ public MusicDirectory getAlbumList(String type, int size, int offset, boolean refresh, Context context, ProgressListener progressListener) throws Exception {
try {
- MusicDirectory dir = musicService.getAlbumList(type, size, offset, context, progressListener);
+ MusicDirectory dir = musicService.getAlbumList(type, size, offset, refresh, context, progressListener);
// Do some serialization updates for changes to recently added
if ("newest".equals(type) && offset == 0) {
@@ -490,6 +489,10 @@ public class CachedMusicService implements MusicService {
return dir;
} catch(IOException e) {
Log.w(TAG, "Failed to refresh album list: ", e);
+ if(refresh) {
+ throw e;
+ }
+
MusicDirectory dir = FileUtil.deserialize(context, getCacheName(context, type, Integer.toString(offset)), MusicDirectory.class);
if(dir == null) {
@@ -507,12 +510,17 @@ public class CachedMusicService implements MusicService {
}
@Override
- public MusicDirectory getAlbumList(String type, String extra, int size, int offset, Context context, ProgressListener progressListener) throws Exception {
+ public MusicDirectory getAlbumList(String type, String extra, int size, int offset, boolean refresh, Context context, ProgressListener progressListener) throws Exception {
try {
- MusicDirectory dir = musicService.getAlbumList(type, extra, size, offset, context, progressListener);
+ MusicDirectory dir = musicService.getAlbumList(type, extra, size, offset, refresh, context, progressListener);
FileUtil.serialize(context, dir, getCacheName(context, type + extra, Integer.toString(offset)));
return dir;
} catch(IOException e) {
+ Log.w(TAG, "Failed to refresh album list: ", e);
+ if(refresh) {
+ throw e;
+ }
+
MusicDirectory dir = FileUtil.deserialize(context, getCacheName(context, type + extra, Integer.toString(offset)), MusicDirectory.class);
if(dir == null) {