Merge pull request #1806 from domingos86/flattr-creator-fix

FlattrServiceCreator
This commit is contained in:
Tom Hennen 2016-03-22 17:28:54 -04:00
commit 3510734504
1 changed files with 9 additions and 4 deletions

View File

@ -1,11 +1,13 @@
package de.danoeh.antennapod.core.util.flattr;
import android.util.Log;
import de.danoeh.antennapod.core.BuildConfig;
import org.shredzone.flattr4j.FlattrFactory;
import org.shredzone.flattr4j.FlattrService;
import org.shredzone.flattr4j.oauth.AccessToken;
import de.danoeh.antennapod.core.BuildConfig;
/** Ensures that only one instance of the FlattrService class exists at a time */
public class FlattrServiceCreator {
@ -13,11 +15,14 @@ public class FlattrServiceCreator {
private static volatile FlattrService flattrService;
public static FlattrService getService(AccessToken token) {
return FlattrFactory.getInstance().createFlattrService(token);
public synchronized static FlattrService getService(AccessToken token) {
if (flattrService == null) {
flattrService = FlattrFactory.getInstance().createFlattrService(token);
}
return flattrService;
}
public static void deleteFlattrService() {
public synchronized static void deleteFlattrService() {
if (BuildConfig.DEBUG) Log.d(TAG, "Deleting service instance");
flattrService = null;
}