added packages for dao and repository
This commit is contained in:
@@ -3,15 +3,14 @@ package com.a1.nextlocation.data.db;
|
|||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
|
|
||||||
import androidx.annotation.NonNull;
|
import androidx.annotation.NonNull;
|
||||||
import androidx.room.DatabaseConfiguration;
|
|
||||||
import androidx.room.InvalidationTracker;
|
|
||||||
import androidx.room.Room;
|
import androidx.room.Room;
|
||||||
import androidx.room.RoomDatabase;
|
import androidx.room.RoomDatabase;
|
||||||
import androidx.sqlite.db.SupportSQLiteDatabase;
|
import androidx.sqlite.db.SupportSQLiteDatabase;
|
||||||
import androidx.sqlite.db.SupportSQLiteOpenHelper;
|
|
||||||
|
|
||||||
import com.a1.nextlocation.data.Coupon;
|
import com.a1.nextlocation.data.Coupon;
|
||||||
import com.a1.nextlocation.data.Route;
|
import com.a1.nextlocation.data.Route;
|
||||||
|
import com.a1.nextlocation.data.db.dao.CouponDao;
|
||||||
|
import com.a1.nextlocation.data.db.dao.RouteDao;
|
||||||
|
|
||||||
import java.util.concurrent.ExecutorService;
|
import java.util.concurrent.ExecutorService;
|
||||||
import java.util.concurrent.Executors;
|
import java.util.concurrent.Executors;
|
||||||
@@ -26,7 +25,7 @@ public abstract class Database extends RoomDatabase {
|
|||||||
private static final int NUMBER_OF_THREADS = 4;
|
private static final int NUMBER_OF_THREADS = 4;
|
||||||
static final ExecutorService databaseWriterExecutor = Executors.newFixedThreadPool(NUMBER_OF_THREADS);
|
static final ExecutorService databaseWriterExecutor = Executors.newFixedThreadPool(NUMBER_OF_THREADS);
|
||||||
|
|
||||||
static Database getDatabase(final Context context) {
|
public static Database getDatabase(final Context context) {
|
||||||
if (INSTANCE == null){
|
if (INSTANCE == null){
|
||||||
synchronized (Database.class) {
|
synchronized (Database.class) {
|
||||||
if (INSTANCE == null) {
|
if (INSTANCE == null) {
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
package com.a1.nextlocation.data.db;
|
package com.a1.nextlocation.data.db.dao;
|
||||||
|
|
||||||
import androidx.lifecycle.LiveData;
|
import androidx.lifecycle.LiveData;
|
||||||
import androidx.room.Dao;
|
import androidx.room.Dao;
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
package com.a1.nextlocation.data.db;
|
package com.a1.nextlocation.data.db.dao;
|
||||||
|
|
||||||
import androidx.lifecycle.LiveData;
|
import androidx.lifecycle.LiveData;
|
||||||
import androidx.room.Dao;
|
import androidx.room.Dao;
|
||||||
@@ -22,9 +22,6 @@ public interface RouteDao {
|
|||||||
@Query("SELECT * FROM route")
|
@Query("SELECT * FROM route")
|
||||||
LiveData<List<Route>> getAll();
|
LiveData<List<Route>> getAll();
|
||||||
|
|
||||||
@Update
|
|
||||||
void update(Route route);
|
|
||||||
|
|
||||||
@Query("SELECT * FROM route where name = :name LIMIT 1")
|
@Query("SELECT * FROM route where name = :name LIMIT 1")
|
||||||
Route getRouteByName(String name);
|
Route getRouteByName(String name);
|
||||||
}
|
}
|
||||||
@@ -1,11 +1,12 @@
|
|||||||
package com.a1.nextlocation.data.db;
|
package com.a1.nextlocation.data.db.repositories;
|
||||||
|
|
||||||
import android.app.Application;
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
|
|
||||||
import androidx.lifecycle.LiveData;
|
import androidx.lifecycle.LiveData;
|
||||||
|
|
||||||
import com.a1.nextlocation.data.Coupon;
|
import com.a1.nextlocation.data.Coupon;
|
||||||
|
import com.a1.nextlocation.data.db.dao.CouponDao;
|
||||||
|
import com.a1.nextlocation.data.db.Database;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@@ -0,0 +1,30 @@
|
|||||||
|
package com.a1.nextlocation.data.db.repositories;
|
||||||
|
|
||||||
|
import android.content.Context;
|
||||||
|
|
||||||
|
import androidx.lifecycle.LiveData;
|
||||||
|
|
||||||
|
import com.a1.nextlocation.data.Route;
|
||||||
|
import com.a1.nextlocation.data.db.Database;
|
||||||
|
import com.a1.nextlocation.data.db.dao.RouteDao;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public class RouteRepository {
|
||||||
|
private RouteDao mRouteDao;
|
||||||
|
private LiveData<List<Route>> mAllRoutes;
|
||||||
|
|
||||||
|
public RouteRepository(Context context) {
|
||||||
|
Database db = Database.getDatabase(context);
|
||||||
|
mRouteDao = db.routeDao();
|
||||||
|
mAllRoutes = mRouteDao.getAll();
|
||||||
|
}
|
||||||
|
|
||||||
|
public LiveData<List<Route>> getAllRoutes() {
|
||||||
|
return mAllRoutes;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Route getRouteByName(String name) {
|
||||||
|
return mRouteDao.getRouteByName(name);
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user