diff options
author | Simon Rutishauser <simon.rutishauser@web.de> | 2014-01-02 15:43:43 +0100 |
---|---|---|
committer | Simon Rutishauser <simon.rutishauser@web.de> | 2014-01-02 21:09:53 +0100 |
commit | 8c116142b89aa78f50fbf9dc08701428a6ea0b98 (patch) | |
tree | baeef2a817676efc0950689f1e8196b77ecd8dda /src/de/danoeh/antennapod/asynctask | |
parent | 375aefb2bf28c2bb4cee545808fadd93c1328434 (diff) | |
download | AntennaPod-8c116142b89aa78f50fbf9dc08701428a6ea0b98.zip |
* directly update Feed/FeedItem FlattrStatus instead of writing back entire Feed/FeedItem to database
* fix race condition when fetching FlattrStatus
* fix missing copy of Flattr status in Feed.updateFromOther()
* fix feed reading from db, was missing FlattrStatus
followup on #331
Diffstat (limited to 'src/de/danoeh/antennapod/asynctask')
-rw-r--r-- | src/de/danoeh/antennapod/asynctask/FlattrClickWorker.java | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/src/de/danoeh/antennapod/asynctask/FlattrClickWorker.java b/src/de/danoeh/antennapod/asynctask/FlattrClickWorker.java index 1335e7bf7..fa0b0bb3d 100644 --- a/src/de/danoeh/antennapod/asynctask/FlattrClickWorker.java +++ b/src/de/danoeh/antennapod/asynctask/FlattrClickWorker.java @@ -4,6 +4,7 @@ import java.util.ArrayList; import java.util.Iterator; import java.util.List; import java.util.ListIterator; +import java.util.concurrent.Executor; import org.shredzone.flattr4j.exception.FlattrException; import org.shredzone.flattr4j.model.Flattr; @@ -223,10 +224,10 @@ public class FlattrClickWorker extends AsyncTask<Void, String, Void> { FlattrUtils.clickUrl(context, thing.getPaymentLink()); flattrd.add(thing.getTitle()); - + thing.getFlattrStatus().setFlattred(); } - catch (FlattrException e) { + catch (Exception e) { Log.d(TAG, "flattrQueue processing exception at item " + thing.getTitle() + " " + e.getMessage()); flattr_failed.ensureCapacity(flattrList.size()); flattr_failed.add(thing.getTitle()); @@ -256,4 +257,16 @@ public class FlattrClickWorker extends AsyncTask<Void, String, Void> { } } + public void executeSync() { + class DirectExecutor implements Executor { + public void execute(Runnable r) { + r.run(); + } + } + FlattrUtils.hasToken(); + executeOnExecutor(new DirectExecutor()); + + } + + } |