0
0
mirror of https://github.com/mediathekview/zapp.git synced 2024-09-20 12:22:15 +02:00

Move database to top level of architecture

This commit is contained in:
Christine Emrich 2020-07-05 21:09:27 +02:00
parent 811b6eaaf4
commit afce825b8e
7 changed files with 14 additions and 15 deletions

View File

@ -6,7 +6,7 @@ import androidx.appcompat.app.AppCompatDelegate;
import de.christinecoenen.code.zapp.app.mediathek.controller.downloads.DownloadController;
import de.christinecoenen.code.zapp.app.mediathek.repository.MediathekRepository;
import de.christinecoenen.code.zapp.app.mediathek.repository.persistence.MediathekDatabase;
import de.christinecoenen.code.zapp.persistence.Database;
import de.christinecoenen.code.zapp.app.player.IPlaybackPositionRepository;
import de.christinecoenen.code.zapp.app.player.PersistedPlaybackPositionRepository;
import de.christinecoenen.code.zapp.app.settings.repository.SettingsRepository;
@ -52,9 +52,9 @@ public abstract class ZappApplicationBase extends Application {
channelRepository = new ChannelRepository(this);
MediathekDatabase mediathekDatabase = MediathekDatabase.Companion.getInstance(this);
Database database = Database.Companion.getInstance(this);
mediathekRepository = new MediathekRepository(mediathekDatabase);
mediathekRepository = new MediathekRepository(database);
playbackPositionRepository = new PersistedPlaybackPositionRepository(mediathekRepository);
downloadController = new DownloadController(this, mediathekRepository);

View File

@ -8,11 +8,10 @@ import de.christinecoenen.code.zapp.app.mediathek.api.request.QueryRequest;
import de.christinecoenen.code.zapp.app.mediathek.model.DownloadStatus;
import de.christinecoenen.code.zapp.app.mediathek.model.MediathekShow;
import de.christinecoenen.code.zapp.app.mediathek.model.PersistedMediathekShow;
import de.christinecoenen.code.zapp.app.mediathek.repository.persistence.MediathekDatabase;
import de.christinecoenen.code.zapp.persistence.Database;
import de.christinecoenen.code.zapp.utils.api.UserAgentInterceptor;
import io.reactivex.Completable;
import io.reactivex.Flowable;
import io.reactivex.Maybe;
import io.reactivex.Single;
import io.reactivex.schedulers.Schedulers;
import okhttp3.ConnectionSpec;
@ -27,11 +26,11 @@ public class MediathekRepository {
private final MediathekService service;
private final MediathekDatabase database;
private final Database database;
public MediathekRepository(MediathekDatabase mediathekDatabase) {
this.database = mediathekDatabase;
public MediathekRepository(Database database) {
this.database = database;
// workaround to avoid SSLHandshakeException on Android 7 devices
// see: https://stackoverflow.com/questions/39133437/sslhandshakeexception-handshake-failed-on-android-n-7-0

View File

@ -1,4 +1,4 @@
package de.christinecoenen.code.zapp.app.mediathek.repository.persistence
package de.christinecoenen.code.zapp.persistence
import android.content.Context
import androidx.room.Database
@ -9,13 +9,13 @@ import de.christinecoenen.code.zapp.app.mediathek.model.PersistedMediathekShow
@Database(entities = [PersistedMediathekShow::class], version = 1, exportSchema = true)
@TypeConverters(DownloadStatusConverter::class, DateTimeConverter::class)
abstract class MediathekDatabase : RoomDatabase() {
abstract class Database : RoomDatabase() {
companion object {
fun getInstance(applicationContext: Context): MediathekDatabase {
fun getInstance(applicationContext: Context): de.christinecoenen.code.zapp.persistence.Database {
return Room
.databaseBuilder(applicationContext, MediathekDatabase::class.java, "mediathek.db")
.databaseBuilder(applicationContext, de.christinecoenen.code.zapp.persistence.Database::class.java, "zapp.db")
.build()
}

View File

@ -1,4 +1,4 @@
package de.christinecoenen.code.zapp.app.mediathek.repository.persistence
package de.christinecoenen.code.zapp.persistence
import androidx.room.TypeConverter
import org.joda.time.DateTime

View File

@ -1,4 +1,4 @@
package de.christinecoenen.code.zapp.app.mediathek.repository.persistence
package de.christinecoenen.code.zapp.persistence
import androidx.room.TypeConverter
import de.christinecoenen.code.zapp.app.mediathek.model.DownloadStatus

View File

@ -1,4 +1,4 @@
package de.christinecoenen.code.zapp.app.mediathek.repository.persistence
package de.christinecoenen.code.zapp.persistence
import androidx.room.*
import de.christinecoenen.code.zapp.app.mediathek.model.DownloadStatus