summaryrefslogtreecommitdiff
path: root/core
diff options
context:
space:
mode:
authorByteHamster <info@bytehamster.com>2018-04-07 16:21:57 +0200
committerByteHamster <info@bytehamster.com>2018-04-07 16:21:57 +0200
commite7ce5c669e03b1c89a83416834e858398e39b31f (patch)
treebc36f5479f799c1e697a82b7533a55352737d39e /core
parentcfaccef2b364abfbc1c4b0181edb2fb92e998209 (diff)
downloadAntennaPod-e7ce5c669e03b1c89a83416834e858398e39b31f.zip
Using Bill Pugh Singleton Implementation
Diffstat (limited to 'core')
-rw-r--r--core/src/main/java/de/danoeh/antennapod/core/storage/PodDBAdapter.java18
1 files changed, 7 insertions, 11 deletions
diff --git a/core/src/main/java/de/danoeh/antennapod/core/storage/PodDBAdapter.java b/core/src/main/java/de/danoeh/antennapod/core/storage/PodDBAdapter.java
index 99f5a466f..e82252310 100644
--- a/core/src/main/java/de/danoeh/antennapod/core/storage/PodDBAdapter.java
+++ b/core/src/main/java/de/danoeh/antennapod/core/storage/PodDBAdapter.java
@@ -308,26 +308,22 @@ public class PodDBAdapter {
KEY_CONTENT_ENCODED, KEY_FEED};
private static Context context;
- private static PodDBHelper dbHelper;
private static volatile SQLiteDatabase db;
private static int counter = 0;
- private static PodDBAdapter instance;
public static void init(Context context) {
PodDBAdapter.context = context.getApplicationContext();
}
- private static class PodDBHelperholder {
- public static final PodDBHelper dbHelper = new PodDBHelper(PodDBAdapter.context, DATABASE_NAME, null);
+ // Bill Pugh Singleton Implementation
+ private static class SingletonHolder {
+ private static final PodDBHelper dbHelper = new PodDBHelper(PodDBAdapter.context, DATABASE_NAME, null);
+ private static final PodDBAdapter dbAdapter = new PodDBAdapter();
}
public static PodDBAdapter getInstance() {
- if (instance == null) {
- instance = new PodDBAdapter();
- }
- dbHelper = PodDBHelperholder.dbHelper;
- return instance;
+ return SingletonHolder.dbAdapter;
}
private PodDBAdapter() {
@@ -346,11 +342,11 @@ public class PodDBAdapter {
private SQLiteDatabase openDb() {
SQLiteDatabase newDb;
try {
- newDb = dbHelper.getWritableDatabase();
+ newDb = SingletonHolder.dbHelper.getWritableDatabase();
newDb.enableWriteAheadLogging();
} catch (SQLException ex) {
Log.e(TAG, Log.getStackTraceString(ex));
- newDb = dbHelper.getReadableDatabase();
+ newDb = SingletonHolder.dbHelper.getReadableDatabase();
}
return newDb;
}