Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @Database(entities = {/*... the first set of entities ...*/}, version = 1)
- public abstract class AppDatabase1 extends RoomDatabase {
- // the first set of DAOs
- }
- @Database(entities = {/*... the second set of entities ...*/}, version = 1)
- public abstract class AppDatabase2 extends RoomDatabase {
- // the second set of DAOs
- }
- AppDatabase db1 = Room.databaseBuilder(getApplicationContext(), AppDatabase1.class, "database1.db").build();
- AppDatabase db2 = Room.databaseBuilder(getApplicationContext(), AppDatabase2.class, "database2.db").build();
- @Entity
- public class User {
- @PrimaryKey
- @NonNull
- public String uid;
- @ColumnInfo(name = "first_name")
- public String firstName;
- @ColumnInfo(name = "last_name")
- public String lastName;
- }
- @Dao
- public interface UserDao {
- @Query("SELECT * FROM user")
- List<User> getAll();
- @Query("SELECT * FROM user WHERE uid IN (:userIds)")
- List<User> loadAllByIds(int[] userIds);
- @Query("SELECT * FROM user WHERE first_name LIKE :first AND " +
- "last_name LIKE :last LIMIT 1")
- User findByName(String first, String last);
- @Insert
- void insertAll(User... users);
- @Delete
- void delete(User user);
- }
- @Database(entities = {User.class}, version = 1)
- public abstract class AppDatabase extends RoomDatabase {
- public abstract UserDao userDao();
- }
- public class DatabaseClient {
- private Context mCtx;
- private AppDatabase appDatabase;
- private static String databaseName;
- private static DatabaseClient mInstance;
- private DatabaseClient(Context mCtx, String dbName) {
- this.mCtx = mCtx;
- if(databaseName == null || !databaseName.equalsIgnoreCase(dbName)) {
- databaseName = dbName;
- }
- appDatabase = Room.databaseBuilder(mCtx, AppDatabase.class, databaseName).build();
- }
- public String getDatabaseName() {
- return databaseName;
- }
- public static synchronized DatabaseClient getInstance(Context mCtx, String dbName) {
- if (mInstance == null || databaseName == null || !databaseName.equalsIgnoreCase(dbName)) {
- mInstance = new DatabaseClient(mCtx, dbName);
- }
- return mInstance;
- }
- public AppDatabase getAppDatabase() {
- return appDatabase;
- }
- }
- List<User> users = DatabaseClient.getInstance(getApplicationContext(), myDb).getAppDatabase().userDao().getAll()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement