diff options
author | Scott Jackson <daneren2005@gmail.com> | 2014-08-09 13:12:18 -0700 |
---|---|---|
committer | Scott Jackson <daneren2005@gmail.com> | 2014-08-09 13:12:18 -0700 |
commit | 26b41ecc1a89eb1a45d5e6ca59b1916a1b03a744 (patch) | |
tree | 1a647fef21a8aa0c4c7c6dc58617dd7b2710a67a /src/github | |
parent | c7e889954e657ad503bad5bc554f609a89eb9335 (diff) | |
download | dsub-26b41ecc1a89eb1a45d5e6ca59b1916a1b03a744.tar.gz dsub-26b41ecc1a89eb1a45d5e6ca59b1916a1b03a744.tar.bz2 dsub-26b41ecc1a89eb1a45d5e6ca59b1916a1b03a744.zip |
Fix user edits to fixing immediate cache
Diffstat (limited to 'src/github')
-rw-r--r-- | src/github/daneren2005/dsub/domain/User.java | 4 | ||||
-rw-r--r-- | src/github/daneren2005/dsub/service/CachedMusicService.java | 10 | ||||
-rw-r--r-- | src/github/daneren2005/dsub/util/UserUtil.java | 2 |
3 files changed, 11 insertions, 5 deletions
diff --git a/src/github/daneren2005/dsub/domain/User.java b/src/github/daneren2005/dsub/domain/User.java index f61f98df..179ac033 100644 --- a/src/github/daneren2005/dsub/domain/User.java +++ b/src/github/daneren2005/dsub/domain/User.java @@ -84,6 +84,10 @@ public class User implements Serializable { public List<Setting> getSettings() {
return settings;
}
+ public void setSettings(List<Setting> settings) {
+ this.settings.clear();
+ this.settings.addAll(settings);
+ }
public void addSetting(String name, Boolean value) {
settings.add(new Setting(name, value));
}
diff --git a/src/github/daneren2005/dsub/service/CachedMusicService.java b/src/github/daneren2005/dsub/service/CachedMusicService.java index 9654bfc6..9b120c20 100644 --- a/src/github/daneren2005/dsub/service/CachedMusicService.java +++ b/src/github/daneren2005/dsub/service/CachedMusicService.java @@ -548,7 +548,7 @@ public class CachedMusicService implements MusicService { public void createUser(final User user, Context context, ProgressListener progressListener) throws Exception { musicService.createUser(user, context, progressListener); - new UserUpdater(Context, "") { + new UserUpdater(context, "") { @Override public boolean checkResult(User check) { return true; @@ -558,7 +558,7 @@ public class CachedMusicService implements MusicService { public void updateResult(List<User> users, User result) { users.add(user); } - } + }.execute(); } @Override @@ -647,21 +647,21 @@ public class CachedMusicService implements MusicService { if(objects != null) { T object = null; for(T check: objects) { - if(checkResult(check) { + if(checkResult(check)) { object = check; break; } } // Only reserialize if a match was found - if(object) { + if(object != null) { updateResult(objects, object); FileUtil.serialize(context, objects, cacheName); } } } } - private class UserUpdater extends SerializeUpdater<User> { + private abstract class UserUpdater extends SerializeUpdater<User> { String username; UserUpdater(Context context, String username) { diff --git a/src/github/daneren2005/dsub/util/UserUtil.java b/src/github/daneren2005/dsub/util/UserUtil.java index 5c57b422..5821a9dc 100644 --- a/src/github/daneren2005/dsub/util/UserUtil.java +++ b/src/github/daneren2005/dsub/util/UserUtil.java @@ -245,6 +245,7 @@ public final class UserUtil { protected Void doInBackground() throws Throwable {
MusicService musicService = MusicServiceFactory.getMusicService(context);
musicService.updateUser(user, context, null);
+ user.setSettings(user.getSettings());
return null;
}
@@ -296,6 +297,7 @@ public final class UserUtil { protected Void doInBackground() throws Throwable {
MusicService musicService = MusicServiceFactory.getMusicService(context);
musicService.changeEmail(user.getUsername(), email, context, null);
+ user.setEmail(email);
return null;
}
|