diff --git a/app/src/main/java/com/a1/nextlocation/data/db/Database.java b/app/src/main/java/com/a1/nextlocation/data/db/Database.java index 7e1ca38..e7c97a7 100644 --- a/app/src/main/java/com/a1/nextlocation/data/db/Database.java +++ b/app/src/main/java/com/a1/nextlocation/data/db/Database.java @@ -3,15 +3,14 @@ package com.a1.nextlocation.data.db; import android.content.Context; import androidx.annotation.NonNull; -import androidx.room.DatabaseConfiguration; -import androidx.room.InvalidationTracker; import androidx.room.Room; import androidx.room.RoomDatabase; import androidx.sqlite.db.SupportSQLiteDatabase; -import androidx.sqlite.db.SupportSQLiteOpenHelper; import com.a1.nextlocation.data.Coupon; 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.Executors; @@ -26,7 +25,7 @@ public abstract class Database extends RoomDatabase { private static final int NUMBER_OF_THREADS = 4; 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){ synchronized (Database.class) { if (INSTANCE == null) { diff --git a/app/src/main/java/com/a1/nextlocation/data/db/CouponDao.java b/app/src/main/java/com/a1/nextlocation/data/db/dao/CouponDao.java similarity index 95% rename from app/src/main/java/com/a1/nextlocation/data/db/CouponDao.java rename to app/src/main/java/com/a1/nextlocation/data/db/dao/CouponDao.java index c528c54..ca68438 100644 --- a/app/src/main/java/com/a1/nextlocation/data/db/CouponDao.java +++ b/app/src/main/java/com/a1/nextlocation/data/db/dao/CouponDao.java @@ -1,4 +1,4 @@ -package com.a1.nextlocation.data.db; +package com.a1.nextlocation.data.db.dao; import androidx.lifecycle.LiveData; import androidx.room.Dao; diff --git a/app/src/main/java/com/a1/nextlocation/data/db/RouteDao.java b/app/src/main/java/com/a1/nextlocation/data/db/dao/RouteDao.java similarity index 86% rename from app/src/main/java/com/a1/nextlocation/data/db/RouteDao.java rename to app/src/main/java/com/a1/nextlocation/data/db/dao/RouteDao.java index 03e9bfe..4d30dc6 100644 --- a/app/src/main/java/com/a1/nextlocation/data/db/RouteDao.java +++ b/app/src/main/java/com/a1/nextlocation/data/db/dao/RouteDao.java @@ -1,4 +1,4 @@ -package com.a1.nextlocation.data.db; +package com.a1.nextlocation.data.db.dao; import androidx.lifecycle.LiveData; import androidx.room.Dao; @@ -22,9 +22,6 @@ public interface RouteDao { @Query("SELECT * FROM route") LiveData> getAll(); - @Update - void update(Route route); - @Query("SELECT * FROM route where name = :name LIMIT 1") Route getRouteByName(String name); } diff --git a/app/src/main/java/com/a1/nextlocation/data/db/CouponRepository.java b/app/src/main/java/com/a1/nextlocation/data/db/repositories/CouponRepository.java similarity index 81% rename from app/src/main/java/com/a1/nextlocation/data/db/CouponRepository.java rename to app/src/main/java/com/a1/nextlocation/data/db/repositories/CouponRepository.java index b34549a..8219799 100644 --- a/app/src/main/java/com/a1/nextlocation/data/db/CouponRepository.java +++ b/app/src/main/java/com/a1/nextlocation/data/db/repositories/CouponRepository.java @@ -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 androidx.lifecycle.LiveData; 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; diff --git a/app/src/main/java/com/a1/nextlocation/data/db/repositories/RouteRepository.java b/app/src/main/java/com/a1/nextlocation/data/db/repositories/RouteRepository.java new file mode 100644 index 0000000..0247951 --- /dev/null +++ b/app/src/main/java/com/a1/nextlocation/data/db/repositories/RouteRepository.java @@ -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> mAllRoutes; + + public RouteRepository(Context context) { + Database db = Database.getDatabase(context); + mRouteDao = db.routeDao(); + mAllRoutes = mRouteDao.getAll(); + } + + public LiveData> getAllRoutes() { + return mAllRoutes; + } + + public Route getRouteByName(String name) { + return mRouteDao.getRouteByName(name); + } +}