@TypeConverters({Converters.class}) @Database( entities = {
@Database(entities = {TaskEntry.class}, version = 1, exportSchema = false) @TypeConverters(DateConverter.class) public abstract class AppDatabase extends RoomDatabase { private static final String LOG_TAG = AppDatabase.class.getSimpleName(); private static final Object LOCK = new Object(); private static final String DATABASE_NAME = "todolist"; private static AppDatabase sInstance; public static AppDatabase getInstance(Context context) { if (sInstance == null) { synchronized (LOCK) { Log.d(LOG_TAG, "Creating new database instance"); sInstance = Room.databaseBuilder(context.getApplicationContext(), AppDatabase.class, AppDatabase.DATABASE_NAME) .build(); } } Log.d(LOG_TAG, "Getting the database instance"); return sInstance; } public abstract TaskDao taskDao(); }
@Database(entities = {TaskEntry.class}, version = 1, exportSchema = false) @TypeConverters(DateConverter.class) public abstract class AppDatabase extends RoomDatabase { private static final String LOG_TAG = AppDatabase.class.getSimpleName(); private static final Object LOCK = new Object(); private static final String DATABASE_NAME = "todolist"; private static AppDatabase sInstance; public static AppDatabase getInstance(Context context) { if (sInstance == null) { synchronized (LOCK) { Log.d(LOG_TAG, "Creating new database instance"); sInstance = Room.databaseBuilder(context.getApplicationContext(), AppDatabase.class, AppDatabase.DATABASE_NAME) // TODO (2) call allowMainThreadQueries before building the instance .build(); } } Log.d(LOG_TAG, "Getting the database instance"); return sInstance; } public abstract TaskDao taskDao(); }
@Database(entities = {TaskEntry.class}, version = 1, exportSchema = false) @TypeConverters(DateConverter.class) public abstract class AppDatabase extends RoomDatabase { private static final String LOG_TAG = AppDatabase.class.getSimpleName(); private static final Object LOCK = new Object(); private static final String DATABASE_NAME = "todolist"; private static AppDatabase sInstance; public static AppDatabase getInstance(Context context) { if (sInstance == null) { synchronized (LOCK) { Log.d(LOG_TAG, "Creating new database instance"); sInstance = Room.databaseBuilder(context.getApplicationContext(), AppDatabase.class, AppDatabase.DATABASE_NAME) .build(); } } Log.d(LOG_TAG, "Getting the database instance"); return sInstance; } public abstract TaskDao taskDao(); }
@Database(entities = {TaskEntry.class}, version = 1, exportSchema = false) @TypeConverters(DateConverter.class) public abstract class AppDatabase extends RoomDatabase { private static final String LOG_TAG = AppDatabase.class.getSimpleName(); private static final Object LOCK = new Object(); private static final String DATABASE_NAME = "todolist"; private static AppDatabase sInstance; public static AppDatabase getInstance(Context context) { if (sInstance == null) { synchronized (LOCK) { Log.d(LOG_TAG, "Creating new database instance"); sInstance = Room.databaseBuilder(context.getApplicationContext(), AppDatabase.class, AppDatabase.DATABASE_NAME) .build(); } } Log.d(LOG_TAG, "Getting the database instance"); return sInstance; } public abstract TaskDao taskDao(); }
@Database(entities = {TaskEntry.class}, version = 1, exportSchema = false) @TypeConverters(DateConverter.class) public abstract class AppDatabase extends RoomDatabase { private static final String LOG_TAG = AppDatabase.class.getSimpleName(); private static final Object LOCK = new Object(); private static final String DATABASE_NAME = "todolist"; private static AppDatabase sInstance; public static AppDatabase getInstance(Context context) { if (sInstance == null) { synchronized (LOCK) { Log.d(LOG_TAG, "Creating new database instance"); sInstance = Room.databaseBuilder(context.getApplicationContext(), AppDatabase.class, AppDatabase.DATABASE_NAME) .build(); } } Log.d(LOG_TAG, "Getting the database instance"); return sInstance; } public abstract TaskDao taskDao(); }
@Database(entities = {TaskEntry.class}, version = 1, exportSchema = false) @TypeConverters(DateConverter.class) public abstract class AppDatabase extends RoomDatabase { private static final String LOG_TAG = AppDatabase.class.getSimpleName(); private static final Object LOCK = new Object(); private static final String DATABASE_NAME = "todolist"; private static AppDatabase sInstance; public static AppDatabase getInstance(Context context) { if (sInstance == null) { synchronized (LOCK) { Log.d(LOG_TAG, "Creating new database instance"); sInstance = Room.databaseBuilder(context.getApplicationContext(), AppDatabase.class, AppDatabase.DATABASE_NAME) .build(); } } Log.d(LOG_TAG, "Getting the database instance"); return sInstance; } public abstract TaskDao taskDao(); }
@Database(entities = {TaskEntry.class}, version = 1, exportSchema = false) @TypeConverters(DateConverter.class) public abstract class AppDatabase extends RoomDatabase { private static final String LOG_TAG = AppDatabase.class.getSimpleName(); private static final Object LOCK = new Object(); private static final String DATABASE_NAME = "todolist"; private static AppDatabase sInstance; public static AppDatabase getInstance(Context context) { if (sInstance == null) { synchronized (LOCK) { Log.d(LOG_TAG, "Creating new database instance"); sInstance = Room.databaseBuilder(context.getApplicationContext(), AppDatabase.class, AppDatabase.DATABASE_NAME) .build(); } } Log.d(LOG_TAG, "Getting the database instance"); return sInstance; } public abstract TaskDao taskDao(); }
@Database(entities = {TaskEntry.class}, version = 1, exportSchema = false) @TypeConverters(DateConverter.class) public abstract class AppDatabase extends RoomDatabase { private static final String LOG_TAG = AppDatabase.class.getSimpleName(); private static final Object LOCK = new Object(); private static final String DATABASE_NAME = "todolist"; private static AppDatabase sInstance; public static AppDatabase getInstance(Context context) { if (sInstance == null) { synchronized (LOCK) { Log.d(LOG_TAG, "Creating new database instance"); sInstance = Room.databaseBuilder(context.getApplicationContext(), AppDatabase.class, AppDatabase.DATABASE_NAME) .build(); } } Log.d(LOG_TAG, "Getting the database instance"); return sInstance; } public abstract TaskDao taskDao(); }
@Database(entities = {TaskEntry.class}, version = 1, exportSchema = false) @TypeConverters(DateConverter.class) public abstract class AppDatabase extends RoomDatabase { private static final String LOG_TAG = AppDatabase.class.getSimpleName(); private static final Object LOCK = new Object(); private static final String DATABASE_NAME = "todolist"; private static AppDatabase sInstance; public static AppDatabase getInstance(Context context) { if (sInstance == null) { synchronized (LOCK) { Log.d(LOG_TAG, "Creating new database instance"); sInstance = Room.databaseBuilder(context.getApplicationContext(), AppDatabase.class, AppDatabase.DATABASE_NAME) .build(); } } Log.d(LOG_TAG, "Getting the database instance"); return sInstance; } public abstract TaskDao taskDao(); }
@Database(entities = {TaskEntry.class}, version = 1, exportSchema = false) @TypeConverters(DateConverter.class) public abstract class AppDatabase extends RoomDatabase { private static final String LOG_TAG = AppDatabase.class.getSimpleName(); private static final Object LOCK = new Object(); private static final String DATABASE_NAME = "todolist"; private static AppDatabase sInstance; public static AppDatabase getInstance(Context context) { if (sInstance == null) { synchronized (LOCK) { Log.d(LOG_TAG, "Creating new database instance"); sInstance = Room.databaseBuilder(context.getApplicationContext(), AppDatabase.class, AppDatabase.DATABASE_NAME) .build(); } } Log.d(LOG_TAG, "Getting the database instance"); return sInstance; } public abstract TaskDao taskDao(); }
@Database(entities = {TaskEntry.class}, version = 1, exportSchema = false) @TypeConverters(DateConverter.class) public abstract class AppDatabase extends RoomDatabase { private static final String LOG_TAG = AppDatabase.class.getSimpleName(); private static final Object LOCK = new Object(); private static final String DATABASE_NAME = "todolist"; private static AppDatabase sInstance; public static AppDatabase getInstance(Context context) { if (sInstance == null) { synchronized (LOCK) { Log.d(LOG_TAG, "Creating new database instance"); sInstance = Room.databaseBuilder(context.getApplicationContext(), AppDatabase.class, AppDatabase.DATABASE_NAME) .build(); } } Log.d(LOG_TAG, "Getting the database instance"); return sInstance; } public abstract TaskDao taskDao(); }
@Database(entities = {TaskEntry.class}, version = 1, exportSchema = false) @TypeConverters(DateConverter.class) public abstract class AppDatabase extends RoomDatabase { private static final String LOG_TAG = AppDatabase.class.getSimpleName(); private static final Object LOCK = new Object(); private static final String DATABASE_NAME = "todolist"; private static AppDatabase sInstance; public static AppDatabase getInstance(Context context) { if (sInstance == null) { synchronized (LOCK) { Log.d(LOG_TAG, "Creating new database instance"); sInstance = Room.databaseBuilder(context.getApplicationContext(), AppDatabase.class, AppDatabase.DATABASE_NAME) .build(); } } Log.d(LOG_TAG, "Getting the database instance"); return sInstance; } public abstract TaskDao taskDao(); }
@Database(entities = {TaskEntry.class}, version = 1, exportSchema = false) @TypeConverters(DateConverter.class) public abstract class AppDatabase extends RoomDatabase { private static final String LOG_TAG = AppDatabase.class.getSimpleName(); private static final Object LOCK = new Object(); private static final String DATABASE_NAME = "todolist"; private static AppDatabase sInstance; public static AppDatabase getInstance(Context context) { if (sInstance == null) { synchronized (LOCK) { Log.d(LOG_TAG, "Creating new database instance"); sInstance = Room.databaseBuilder(context.getApplicationContext(), AppDatabase.class, AppDatabase.DATABASE_NAME) .build(); } } Log.d(LOG_TAG, "Getting the database instance"); return sInstance; } public abstract TaskDao taskDao(); }
@Database(entities = {TaskEntry.class}, version = 1, exportSchema = false) @TypeConverters(DateConverter.class) public abstract class AppDatabase extends RoomDatabase { private static final String LOG_TAG = AppDatabase.class.getSimpleName(); private static final Object LOCK = new Object(); private static final String DATABASE_NAME = "todolist"; private static AppDatabase sInstance; public static AppDatabase getInstance(Context context) { if (sInstance == null) { synchronized (LOCK) { Log.d(LOG_TAG, "Creating new database instance"); sInstance = Room.databaseBuilder(context.getApplicationContext(), AppDatabase.class, AppDatabase.DATABASE_NAME) // COMPLETED (1) Disable queries on main thread .build(); } } Log.d(LOG_TAG, "Getting the database instance"); return sInstance; } public abstract TaskDao taskDao(); }
@Database(entities = {TaskEntry.class}, version = 1, exportSchema = false) @TypeConverters(DateConverter.class) public abstract class AppDatabase extends RoomDatabase { private static final String LOG_TAG = AppDatabase.class.getSimpleName(); private static final Object LOCK = new Object(); private static final String DATABASE_NAME = "todolist"; private static AppDatabase sInstance; public static AppDatabase getInstance(Context context) { if (sInstance == null) { synchronized (LOCK) { Log.d(LOG_TAG, "Creating new database instance"); sInstance = Room.databaseBuilder(context.getApplicationContext(), AppDatabase.class, AppDatabase.DATABASE_NAME) // Queries should be done in a separate thread to avoid locking the UI // We will allow this ONLY TEMPORALLY to see that our DB is working .allowMainThreadQueries() .build(); } } Log.d(LOG_TAG, "Getting the database instance"); return sInstance; } public abstract TaskDao taskDao(); }
@Database(entities = {TaskEntry.class}, version = 1, exportSchema = false) @TypeConverters(DateConverter.class) public abstract class AppDatabase extends RoomDatabase { private static final String LOG_TAG = AppDatabase.class.getSimpleName(); private static final Object LOCK = new Object(); private static final String DATABASE_NAME = "todolist"; private static AppDatabase sInstance; public static AppDatabase getInstance(Context context) { if (sInstance == null) { synchronized (LOCK) { Log.d(LOG_TAG, "Creating new database instance"); sInstance = Room.databaseBuilder(context.getApplicationContext(), AppDatabase.class, AppDatabase.DATABASE_NAME) // Queries should be done in a separate thread to avoid locking the UI // We will allow this ONLY TEMPORALLY to see that our DB is working .allowMainThreadQueries() .build(); } } Log.d(LOG_TAG, "Getting the database instance"); return sInstance; } public abstract TaskDao taskDao(); }
@Database(entities = {TaskEntry.class}, version = 1, exportSchema = false) @TypeConverters(DateConverter.class) public abstract class AppDatabase extends RoomDatabase { private static final String LOG_TAG = AppDatabase.class.getSimpleName(); private static final Object LOCK = new Object(); private static final String DATABASE_NAME = "todolist"; private static AppDatabase sInstance; public static AppDatabase getInstance(Context context) { if (sInstance == null) { synchronized (LOCK) { Log.d(LOG_TAG, "Creating new database instance"); sInstance = Room.databaseBuilder(context.getApplicationContext(), AppDatabase.class, AppDatabase.DATABASE_NAME) // TODO (1) Disable queries on main thread // Queries should be done in a separate thread to avoid locking the UI // We will allow this ONLY TEMPORALLY to see that our DB is working .allowMainThreadQueries() .build(); } } Log.d(LOG_TAG, "Getting the database instance"); return sInstance; } public abstract TaskDao taskDao(); }
@Database(entities = {TaskEntry.class}, version = 1, exportSchema = false) @TypeConverters(DateConverter.class) public abstract class AppDatabase extends RoomDatabase { private static final String LOG_TAG = AppDatabase.class.getSimpleName(); private static final Object LOCK = new Object(); private static final String DATABASE_NAME = "todolist"; private static AppDatabase sInstance; public static AppDatabase getInstance(Context context) { if (sInstance == null) { synchronized (LOCK) { Log.d(LOG_TAG, "Creating new database instance"); sInstance = Room.databaseBuilder(context.getApplicationContext(), AppDatabase.class, AppDatabase.DATABASE_NAME) // COMPLETED (2) call allowMainThreadQueries before building the instance // Queries should be done in a separate thread to avoid locking the UI // We will allow this ONLY TEMPORALLY to see that our DB is working .allowMainThreadQueries() .build(); } } Log.d(LOG_TAG, "Getting the database instance"); return sInstance; } public abstract TaskDao taskDao(); }
@Database(entities = {Earthquake.class}, version = 1) @TypeConverters({EarthquakeTypeConverters.class}) public abstract class EarthquakeDatabase extends RoomDatabase { public abstract EarthquakeDAO earthquakeDAO(); }