From d2f9648b00ec8eaae4b3d714256d34fd7d912127 Mon Sep 17 00:00:00 2001 From: madroid Date: Sat, 28 May 2022 14:32:39 +0800 Subject: [PATCH] Rename NiaNetwork & NiaPreferences, add DataSource suffix docs: https://developer.android.com/jetpack/guide/data-layer#naming-conventions --- .../repository/OfflineFirstAuthorsRepository.kt | 8 ++++---- .../data/repository/OfflineFirstNewsRepository.kt | 4 ++-- .../repository/OfflineFirstTopicsRepository.kt | 8 ++++---- .../data/repository/fake/FakeAuthorsRepository.kt | 4 ++-- .../data/repository/fake/FakeTopicsRepository.kt | 4 ++-- .../OfflineFirstAuthorsRepositoryTest.kt | 14 +++++++------- .../repository/OfflineFirstNewsRepositoryTest.kt | 10 +++++----- .../repository/OfflineFirstTopicsRepositoryTest.kt | 12 ++++++------ .../core/data/repository/TestSynchronizer.kt | 6 +++--- ...stNiaNetwork.kt => TestNiaNetworkDataSource.kt} | 6 +++--- ...erences.kt => NiaPreferencesLocalDataSource.kt} | 2 +- core-network/build.gradle.kts | 4 ++++ .../nowinandroid/core/network/di/NetworkModule.kt | 8 ++++---- .../{NiaNetwork.kt => NiaNetworkDataSource.kt} | 2 +- ...keNiaNetwork.kt => FakeNiaNetworkDataSource.kt} | 8 ++++---- .../core/network/retrofit/RetrofitNiaNetwork.kt | 6 +++--- .../nowinandroid/core/network/di/NetworkModule.kt | 4 ++-- ...workTest.kt => FakeNiaNetworkDataSourceTest.kt} | 6 +++--- .../apps/nowinandroid/sync/workers/SyncWorker.kt | 4 ++-- 19 files changed, 62 insertions(+), 58 deletions(-) rename core-data/src/test/java/com/google/samples/apps/nowinandroid/core/data/testdoubles/{TestNiaNetwork.kt => TestNiaNetworkDataSource.kt} (97%) rename core-datastore/src/main/java/com/google/samples/apps/nowinandroid/core/datastore/{NiaPreferences.kt => NiaPreferencesLocalDataSource.kt} (98%) rename core-network/src/main/java/com/google/samples/apps/nowinandroid/core/network/{NiaNetwork.kt => NiaNetworkDataSource.kt} (97%) rename core-network/src/main/java/com/google/samples/apps/nowinandroid/core/network/fake/{FakeNiaNetwork.kt => FakeNiaNetworkDataSource.kt} (93%) rename core-network/src/test/java/com/google/samples/apps/nowinandroid/core/network/fake/{FakeNiaNetworkTest.kt => FakeNiaNetworkDataSourceTest.kt} (91%) diff --git a/core-data/src/main/java/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstAuthorsRepository.kt b/core-data/src/main/java/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstAuthorsRepository.kt index 57385cca4..6fd6b69bf 100644 --- a/core-data/src/main/java/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstAuthorsRepository.kt +++ b/core-data/src/main/java/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstAuthorsRepository.kt @@ -23,9 +23,9 @@ import com.google.samples.apps.nowinandroid.core.database.dao.AuthorDao import com.google.samples.apps.nowinandroid.core.database.model.AuthorEntity import com.google.samples.apps.nowinandroid.core.database.model.asExternalModel import com.google.samples.apps.nowinandroid.core.datastore.ChangeListVersions -import com.google.samples.apps.nowinandroid.core.datastore.NiaPreferences +import com.google.samples.apps.nowinandroid.core.datastore.NiaPreferencesLocalDataSource import com.google.samples.apps.nowinandroid.core.model.data.Author -import com.google.samples.apps.nowinandroid.core.network.NiaNetwork +import com.google.samples.apps.nowinandroid.core.network.NiaNetworkDataSource import com.google.samples.apps.nowinandroid.core.network.model.NetworkAuthor import javax.inject.Inject import kotlinx.coroutines.flow.Flow @@ -37,8 +37,8 @@ import kotlinx.coroutines.flow.map */ class OfflineFirstAuthorsRepository @Inject constructor( private val authorDao: AuthorDao, - private val network: NiaNetwork, - private val niaPreferences: NiaPreferences, + private val network: NiaNetworkDataSource, + private val niaPreferences: NiaPreferencesLocalDataSource, ) : AuthorsRepository { override fun getAuthorStream(id: String): Flow = diff --git a/core-data/src/main/java/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstNewsRepository.kt b/core-data/src/main/java/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstNewsRepository.kt index 0f60de3ff..4588fd404 100644 --- a/core-data/src/main/java/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstNewsRepository.kt +++ b/core-data/src/main/java/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstNewsRepository.kt @@ -35,7 +35,7 @@ import com.google.samples.apps.nowinandroid.core.database.model.TopicEntity import com.google.samples.apps.nowinandroid.core.database.model.asExternalModel import com.google.samples.apps.nowinandroid.core.datastore.ChangeListVersions import com.google.samples.apps.nowinandroid.core.model.data.NewsResource -import com.google.samples.apps.nowinandroid.core.network.NiaNetwork +import com.google.samples.apps.nowinandroid.core.network.NiaNetworkDataSource import com.google.samples.apps.nowinandroid.core.network.model.NetworkNewsResource import javax.inject.Inject import kotlinx.coroutines.flow.Flow @@ -50,7 +50,7 @@ class OfflineFirstNewsRepository @Inject constructor( private val episodeDao: EpisodeDao, private val authorDao: AuthorDao, private val topicDao: TopicDao, - private val network: NiaNetwork, + private val network: NiaNetworkDataSource, ) : NewsRepository { override fun getNewsResourcesStream(): Flow> = diff --git a/core-data/src/main/java/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstTopicsRepository.kt b/core-data/src/main/java/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstTopicsRepository.kt index c41725cfd..157632b31 100644 --- a/core-data/src/main/java/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstTopicsRepository.kt +++ b/core-data/src/main/java/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstTopicsRepository.kt @@ -23,9 +23,9 @@ import com.google.samples.apps.nowinandroid.core.database.dao.TopicDao import com.google.samples.apps.nowinandroid.core.database.model.TopicEntity import com.google.samples.apps.nowinandroid.core.database.model.asExternalModel import com.google.samples.apps.nowinandroid.core.datastore.ChangeListVersions -import com.google.samples.apps.nowinandroid.core.datastore.NiaPreferences +import com.google.samples.apps.nowinandroid.core.datastore.NiaPreferencesLocalDataSource import com.google.samples.apps.nowinandroid.core.model.data.Topic -import com.google.samples.apps.nowinandroid.core.network.NiaNetwork +import com.google.samples.apps.nowinandroid.core.network.NiaNetworkDataSource import com.google.samples.apps.nowinandroid.core.network.model.NetworkTopic import javax.inject.Inject import kotlinx.coroutines.flow.Flow @@ -37,8 +37,8 @@ import kotlinx.coroutines.flow.map */ class OfflineFirstTopicsRepository @Inject constructor( private val topicDao: TopicDao, - private val network: NiaNetwork, - private val niaPreferences: NiaPreferences, + private val network: NiaNetworkDataSource, + private val niaPreferences: NiaPreferencesLocalDataSource, ) : TopicsRepository { override fun getTopicsStream(): Flow> = diff --git a/core-data/src/main/java/com/google/samples/apps/nowinandroid/core/data/repository/fake/FakeAuthorsRepository.kt b/core-data/src/main/java/com/google/samples/apps/nowinandroid/core/data/repository/fake/FakeAuthorsRepository.kt index 7bcfa02fd..6970a46d7 100644 --- a/core-data/src/main/java/com/google/samples/apps/nowinandroid/core/data/repository/fake/FakeAuthorsRepository.kt +++ b/core-data/src/main/java/com/google/samples/apps/nowinandroid/core/data/repository/fake/FakeAuthorsRepository.kt @@ -18,7 +18,7 @@ package com.google.samples.apps.nowinandroid.core.data.repository.fake import com.google.samples.apps.nowinandroid.core.data.Synchronizer import com.google.samples.apps.nowinandroid.core.data.repository.AuthorsRepository -import com.google.samples.apps.nowinandroid.core.datastore.NiaPreferences +import com.google.samples.apps.nowinandroid.core.datastore.NiaPreferencesLocalDataSource import com.google.samples.apps.nowinandroid.core.model.data.Author import com.google.samples.apps.nowinandroid.core.network.Dispatcher import com.google.samples.apps.nowinandroid.core.network.NiaDispatchers.IO @@ -41,7 +41,7 @@ import kotlinx.serialization.json.Json */ class FakeAuthorsRepository @Inject constructor( @Dispatcher(IO) private val ioDispatcher: CoroutineDispatcher, - private val niaPreferences: NiaPreferences, + private val niaPreferences: NiaPreferencesLocalDataSource, private val networkJson: Json, ) : AuthorsRepository { diff --git a/core-data/src/main/java/com/google/samples/apps/nowinandroid/core/data/repository/fake/FakeTopicsRepository.kt b/core-data/src/main/java/com/google/samples/apps/nowinandroid/core/data/repository/fake/FakeTopicsRepository.kt index bc6f4e0b0..d71dc022f 100644 --- a/core-data/src/main/java/com/google/samples/apps/nowinandroid/core/data/repository/fake/FakeTopicsRepository.kt +++ b/core-data/src/main/java/com/google/samples/apps/nowinandroid/core/data/repository/fake/FakeTopicsRepository.kt @@ -18,7 +18,7 @@ package com.google.samples.apps.nowinandroid.core.data.repository.fake import com.google.samples.apps.nowinandroid.core.data.Synchronizer import com.google.samples.apps.nowinandroid.core.data.repository.TopicsRepository -import com.google.samples.apps.nowinandroid.core.datastore.NiaPreferences +import com.google.samples.apps.nowinandroid.core.datastore.NiaPreferencesLocalDataSource import com.google.samples.apps.nowinandroid.core.model.data.Topic import com.google.samples.apps.nowinandroid.core.network.Dispatcher import com.google.samples.apps.nowinandroid.core.network.NiaDispatchers.IO @@ -43,7 +43,7 @@ import kotlinx.serialization.json.Json class FakeTopicsRepository @Inject constructor( @Dispatcher(IO) private val ioDispatcher: CoroutineDispatcher, private val networkJson: Json, - private val niaPreferences: NiaPreferences + private val niaPreferences: NiaPreferencesLocalDataSource ) : TopicsRepository { override fun getTopicsStream(): Flow> = flow> { emit( diff --git a/core-data/src/test/java/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstAuthorsRepositoryTest.kt b/core-data/src/test/java/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstAuthorsRepositoryTest.kt index 9ed4ea9d0..2f5f7f348 100644 --- a/core-data/src/test/java/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstAuthorsRepositoryTest.kt +++ b/core-data/src/test/java/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstAuthorsRepositoryTest.kt @@ -20,11 +20,11 @@ import com.google.samples.apps.nowinandroid.core.data.Synchronizer import com.google.samples.apps.nowinandroid.core.data.model.asEntity import com.google.samples.apps.nowinandroid.core.data.testdoubles.CollectionType import com.google.samples.apps.nowinandroid.core.data.testdoubles.TestAuthorDao -import com.google.samples.apps.nowinandroid.core.data.testdoubles.TestNiaNetwork +import com.google.samples.apps.nowinandroid.core.data.testdoubles.TestNiaNetworkDataSource import com.google.samples.apps.nowinandroid.core.database.dao.AuthorDao import com.google.samples.apps.nowinandroid.core.database.model.AuthorEntity import com.google.samples.apps.nowinandroid.core.database.model.asExternalModel -import com.google.samples.apps.nowinandroid.core.datastore.NiaPreferences +import com.google.samples.apps.nowinandroid.core.datastore.NiaPreferencesLocalDataSource import com.google.samples.apps.nowinandroid.core.datastore.test.testUserPreferencesDataStore import com.google.samples.apps.nowinandroid.core.model.data.Author import com.google.samples.apps.nowinandroid.core.network.model.NetworkAuthor @@ -43,7 +43,7 @@ class OfflineFirstAuthorsRepositoryTest { private lateinit var authorDao: AuthorDao - private lateinit var network: TestNiaNetwork + private lateinit var network: TestNiaNetworkDataSource private lateinit var synchronizer: Synchronizer @@ -53,16 +53,16 @@ class OfflineFirstAuthorsRepositoryTest { @Before fun setup() { authorDao = TestAuthorDao() - network = TestNiaNetwork() - val niaPreferences = NiaPreferences( + network = TestNiaNetworkDataSource() + val niaPreferencesDataSource = NiaPreferencesLocalDataSource( tmpFolder.testUserPreferencesDataStore() ) - synchronizer = TestSynchronizer(niaPreferences) + synchronizer = TestSynchronizer(niaPreferencesDataSource) subject = OfflineFirstAuthorsRepository( authorDao = authorDao, network = network, - niaPreferences = niaPreferences, + niaPreferences = niaPreferencesDataSource, ) } diff --git a/core-data/src/test/java/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstNewsRepositoryTest.kt b/core-data/src/test/java/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstNewsRepositoryTest.kt index a73a1c13a..e26e57939 100644 --- a/core-data/src/test/java/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstNewsRepositoryTest.kt +++ b/core-data/src/test/java/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstNewsRepositoryTest.kt @@ -27,7 +27,7 @@ import com.google.samples.apps.nowinandroid.core.data.testdoubles.CollectionType import com.google.samples.apps.nowinandroid.core.data.testdoubles.TestAuthorDao import com.google.samples.apps.nowinandroid.core.data.testdoubles.TestEpisodeDao import com.google.samples.apps.nowinandroid.core.data.testdoubles.TestNewsResourceDao -import com.google.samples.apps.nowinandroid.core.data.testdoubles.TestNiaNetwork +import com.google.samples.apps.nowinandroid.core.data.testdoubles.TestNiaNetworkDataSource import com.google.samples.apps.nowinandroid.core.data.testdoubles.TestTopicDao import com.google.samples.apps.nowinandroid.core.data.testdoubles.filteredInterestsIds import com.google.samples.apps.nowinandroid.core.data.testdoubles.nonPresentInterestsIds @@ -38,7 +38,7 @@ import com.google.samples.apps.nowinandroid.core.database.model.PopulatedEpisode import com.google.samples.apps.nowinandroid.core.database.model.PopulatedNewsResource import com.google.samples.apps.nowinandroid.core.database.model.TopicEntity import com.google.samples.apps.nowinandroid.core.database.model.asExternalModel -import com.google.samples.apps.nowinandroid.core.datastore.NiaPreferences +import com.google.samples.apps.nowinandroid.core.datastore.NiaPreferencesLocalDataSource import com.google.samples.apps.nowinandroid.core.datastore.test.testUserPreferencesDataStore import com.google.samples.apps.nowinandroid.core.model.data.NewsResource import com.google.samples.apps.nowinandroid.core.network.model.NetworkChangeList @@ -63,7 +63,7 @@ class OfflineFirstNewsRepositoryTest { private lateinit var topicDao: TestTopicDao - private lateinit var network: TestNiaNetwork + private lateinit var network: TestNiaNetworkDataSource private lateinit var synchronizer: Synchronizer @@ -76,9 +76,9 @@ class OfflineFirstNewsRepositoryTest { episodeDao = TestEpisodeDao() authorDao = TestAuthorDao() topicDao = TestTopicDao() - network = TestNiaNetwork() + network = TestNiaNetworkDataSource() synchronizer = TestSynchronizer( - NiaPreferences( + NiaPreferencesLocalDataSource( tmpFolder.testUserPreferencesDataStore() ) ) diff --git a/core-data/src/test/java/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstTopicsRepositoryTest.kt b/core-data/src/test/java/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstTopicsRepositoryTest.kt index e8ab276a2..f17769491 100644 --- a/core-data/src/test/java/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstTopicsRepositoryTest.kt +++ b/core-data/src/test/java/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstTopicsRepositoryTest.kt @@ -19,12 +19,12 @@ package com.google.samples.apps.nowinandroid.core.data.repository import com.google.samples.apps.nowinandroid.core.data.Synchronizer import com.google.samples.apps.nowinandroid.core.data.model.asEntity import com.google.samples.apps.nowinandroid.core.data.testdoubles.CollectionType -import com.google.samples.apps.nowinandroid.core.data.testdoubles.TestNiaNetwork +import com.google.samples.apps.nowinandroid.core.data.testdoubles.TestNiaNetworkDataSource import com.google.samples.apps.nowinandroid.core.data.testdoubles.TestTopicDao import com.google.samples.apps.nowinandroid.core.database.dao.TopicDao import com.google.samples.apps.nowinandroid.core.database.model.TopicEntity import com.google.samples.apps.nowinandroid.core.database.model.asExternalModel -import com.google.samples.apps.nowinandroid.core.datastore.NiaPreferences +import com.google.samples.apps.nowinandroid.core.datastore.NiaPreferencesLocalDataSource import com.google.samples.apps.nowinandroid.core.datastore.test.testUserPreferencesDataStore import com.google.samples.apps.nowinandroid.core.model.data.Topic import com.google.samples.apps.nowinandroid.core.network.model.NetworkTopic @@ -42,9 +42,9 @@ class OfflineFirstTopicsRepositoryTest { private lateinit var topicDao: TopicDao - private lateinit var network: TestNiaNetwork + private lateinit var network: TestNiaNetworkDataSource - private lateinit var niaPreferences: NiaPreferences + private lateinit var niaPreferences: NiaPreferencesLocalDataSource private lateinit var synchronizer: Synchronizer @@ -54,8 +54,8 @@ class OfflineFirstTopicsRepositoryTest { @Before fun setup() { topicDao = TestTopicDao() - network = TestNiaNetwork() - niaPreferences = NiaPreferences( + network = TestNiaNetworkDataSource() + niaPreferences = NiaPreferencesLocalDataSource( tmpFolder.testUserPreferencesDataStore() ) synchronizer = TestSynchronizer(niaPreferences) diff --git a/core-data/src/test/java/com/google/samples/apps/nowinandroid/core/data/repository/TestSynchronizer.kt b/core-data/src/test/java/com/google/samples/apps/nowinandroid/core/data/repository/TestSynchronizer.kt index e997c3ca6..6b210bb5b 100644 --- a/core-data/src/test/java/com/google/samples/apps/nowinandroid/core/data/repository/TestSynchronizer.kt +++ b/core-data/src/test/java/com/google/samples/apps/nowinandroid/core/data/repository/TestSynchronizer.kt @@ -18,13 +18,13 @@ package com.google.samples.apps.nowinandroid.core.data.repository import com.google.samples.apps.nowinandroid.core.data.Synchronizer import com.google.samples.apps.nowinandroid.core.datastore.ChangeListVersions -import com.google.samples.apps.nowinandroid.core.datastore.NiaPreferences +import com.google.samples.apps.nowinandroid.core.datastore.NiaPreferencesLocalDataSource /** - * Test synchronizer that delegates to [NiaPreferences] + * Test synchronizer that delegates to [NiaPreferencesLocalDataSource] */ class TestSynchronizer( - private val niaPreferences: NiaPreferences + private val niaPreferences: NiaPreferencesLocalDataSource ) : Synchronizer { override suspend fun getChangeListVersions(): ChangeListVersions = niaPreferences.getChangeListVersions() diff --git a/core-data/src/test/java/com/google/samples/apps/nowinandroid/core/data/testdoubles/TestNiaNetwork.kt b/core-data/src/test/java/com/google/samples/apps/nowinandroid/core/data/testdoubles/TestNiaNetworkDataSource.kt similarity index 97% rename from core-data/src/test/java/com/google/samples/apps/nowinandroid/core/data/testdoubles/TestNiaNetwork.kt rename to core-data/src/test/java/com/google/samples/apps/nowinandroid/core/data/testdoubles/TestNiaNetworkDataSource.kt index 923a0bca7..9a4ae159c 100644 --- a/core-data/src/test/java/com/google/samples/apps/nowinandroid/core/data/testdoubles/TestNiaNetwork.kt +++ b/core-data/src/test/java/com/google/samples/apps/nowinandroid/core/data/testdoubles/TestNiaNetworkDataSource.kt @@ -16,7 +16,7 @@ package com.google.samples.apps.nowinandroid.core.data.testdoubles -import com.google.samples.apps.nowinandroid.core.network.NiaNetwork +import com.google.samples.apps.nowinandroid.core.network.NiaNetworkDataSource import com.google.samples.apps.nowinandroid.core.network.fake.FakeDataSource import com.google.samples.apps.nowinandroid.core.network.model.NetworkAuthor import com.google.samples.apps.nowinandroid.core.network.model.NetworkChangeList @@ -33,9 +33,9 @@ enum class CollectionType { } /** - * Test double for [NiaNetwork] + * Test double for [NiaNetworkDataSource] */ -class TestNiaNetwork : NiaNetwork { +class TestNiaNetworkDataSource : NiaNetworkDataSource { private val networkJson = Json diff --git a/core-datastore/src/main/java/com/google/samples/apps/nowinandroid/core/datastore/NiaPreferences.kt b/core-datastore/src/main/java/com/google/samples/apps/nowinandroid/core/datastore/NiaPreferencesLocalDataSource.kt similarity index 98% rename from core-datastore/src/main/java/com/google/samples/apps/nowinandroid/core/datastore/NiaPreferences.kt rename to core-datastore/src/main/java/com/google/samples/apps/nowinandroid/core/datastore/NiaPreferencesLocalDataSource.kt index 9e00e912c..23e107188 100644 --- a/core-datastore/src/main/java/com/google/samples/apps/nowinandroid/core/datastore/NiaPreferences.kt +++ b/core-datastore/src/main/java/com/google/samples/apps/nowinandroid/core/datastore/NiaPreferencesLocalDataSource.kt @@ -25,7 +25,7 @@ import kotlinx.coroutines.flow.firstOrNull import kotlinx.coroutines.flow.map import kotlinx.coroutines.flow.retry -class NiaPreferences @Inject constructor( +class NiaPreferencesLocalDataSource @Inject constructor( private val userPreferences: DataStore ) { suspend fun setFollowedTopicIds(followedTopicIds: Set) { diff --git a/core-network/build.gradle.kts b/core-network/build.gradle.kts index 9b3303f4d..7bcb71b19 100644 --- a/core-network/build.gradle.kts +++ b/core-network/build.gradle.kts @@ -29,6 +29,10 @@ android { initWith(getByName("debug")) matchingFallbacks.add("debug") } + + release { + + } } // Force the staging variant to use the release source directory. This is necessary so that the // staging variant uses the remote network. diff --git a/core-network/src/debug/java/com/google/samples/apps/nowinandroid/core/network/di/NetworkModule.kt b/core-network/src/debug/java/com/google/samples/apps/nowinandroid/core/network/di/NetworkModule.kt index 5abcc9658..4689fdbe2 100644 --- a/core-network/src/debug/java/com/google/samples/apps/nowinandroid/core/network/di/NetworkModule.kt +++ b/core-network/src/debug/java/com/google/samples/apps/nowinandroid/core/network/di/NetworkModule.kt @@ -16,8 +16,8 @@ package com.google.samples.apps.nowinandroid.core.network.di -import com.google.samples.apps.nowinandroid.core.network.NiaNetwork -import com.google.samples.apps.nowinandroid.core.network.fake.FakeNiaNetwork +import com.google.samples.apps.nowinandroid.core.network.NiaNetworkDataSource +import com.google.samples.apps.nowinandroid.core.network.fake.FakeNiaNetworkDataSource import dagger.Binds import dagger.Module import dagger.Provides @@ -32,8 +32,8 @@ interface NetworkModule { @Binds fun bindsNiaNetwork( - niANetwork: FakeNiaNetwork - ): NiaNetwork + niANetwork: FakeNiaNetworkDataSource + ): NiaNetworkDataSource companion object { @Provides diff --git a/core-network/src/main/java/com/google/samples/apps/nowinandroid/core/network/NiaNetwork.kt b/core-network/src/main/java/com/google/samples/apps/nowinandroid/core/network/NiaNetworkDataSource.kt similarity index 97% rename from core-network/src/main/java/com/google/samples/apps/nowinandroid/core/network/NiaNetwork.kt rename to core-network/src/main/java/com/google/samples/apps/nowinandroid/core/network/NiaNetworkDataSource.kt index 925a744e1..52f9edd7a 100644 --- a/core-network/src/main/java/com/google/samples/apps/nowinandroid/core/network/NiaNetwork.kt +++ b/core-network/src/main/java/com/google/samples/apps/nowinandroid/core/network/NiaNetworkDataSource.kt @@ -24,7 +24,7 @@ import com.google.samples.apps.nowinandroid.core.network.model.NetworkTopic /** * Interface representing network calls to the NIA backend */ -interface NiaNetwork { +interface NiaNetworkDataSource { suspend fun getTopics(ids: List? = null): List suspend fun getAuthors(ids: List? = null): List diff --git a/core-network/src/main/java/com/google/samples/apps/nowinandroid/core/network/fake/FakeNiaNetwork.kt b/core-network/src/main/java/com/google/samples/apps/nowinandroid/core/network/fake/FakeNiaNetworkDataSource.kt similarity index 93% rename from core-network/src/main/java/com/google/samples/apps/nowinandroid/core/network/fake/FakeNiaNetwork.kt rename to core-network/src/main/java/com/google/samples/apps/nowinandroid/core/network/fake/FakeNiaNetworkDataSource.kt index 681c50da4..9bbe0bed3 100644 --- a/core-network/src/main/java/com/google/samples/apps/nowinandroid/core/network/fake/FakeNiaNetwork.kt +++ b/core-network/src/main/java/com/google/samples/apps/nowinandroid/core/network/fake/FakeNiaNetworkDataSource.kt @@ -18,7 +18,7 @@ package com.google.samples.apps.nowinandroid.core.network.fake import com.google.samples.apps.nowinandroid.core.network.Dispatcher import com.google.samples.apps.nowinandroid.core.network.NiaDispatchers.IO -import com.google.samples.apps.nowinandroid.core.network.NiaNetwork +import com.google.samples.apps.nowinandroid.core.network.NiaNetworkDataSource import com.google.samples.apps.nowinandroid.core.network.model.NetworkAuthor import com.google.samples.apps.nowinandroid.core.network.model.NetworkChangeList import com.google.samples.apps.nowinandroid.core.network.model.NetworkNewsResource @@ -30,12 +30,12 @@ import kotlinx.serialization.decodeFromString import kotlinx.serialization.json.Json /** - * [NiaNetwork] implementation that provides static news resources to aid development + * [NiaNetworkDataSource] implementation that provides static news resources to aid development */ -class FakeNiaNetwork @Inject constructor( +class FakeNiaNetworkDataSource @Inject constructor( @Dispatcher(IO) private val ioDispatcher: CoroutineDispatcher, private val networkJson: Json -) : NiaNetwork { +) : NiaNetworkDataSource { override suspend fun getTopics(ids: List?): List = withContext(ioDispatcher) { networkJson.decodeFromString(FakeDataSource.topicsData) diff --git a/core-network/src/main/java/com/google/samples/apps/nowinandroid/core/network/retrofit/RetrofitNiaNetwork.kt b/core-network/src/main/java/com/google/samples/apps/nowinandroid/core/network/retrofit/RetrofitNiaNetwork.kt index 396a2281d..351db55ed 100644 --- a/core-network/src/main/java/com/google/samples/apps/nowinandroid/core/network/retrofit/RetrofitNiaNetwork.kt +++ b/core-network/src/main/java/com/google/samples/apps/nowinandroid/core/network/retrofit/RetrofitNiaNetwork.kt @@ -17,7 +17,7 @@ package com.google.samples.apps.nowinandroid.core.network.retrofit import com.google.samples.apps.nowinandroid.core.network.BuildConfig -import com.google.samples.apps.nowinandroid.core.network.NiaNetwork +import com.google.samples.apps.nowinandroid.core.network.NiaNetworkDataSource import com.google.samples.apps.nowinandroid.core.network.model.NetworkAuthor import com.google.samples.apps.nowinandroid.core.network.model.NetworkChangeList import com.google.samples.apps.nowinandroid.core.network.model.NetworkNewsResource @@ -80,12 +80,12 @@ private data class NetworkResponse( ) /** - * [Retrofit] backed [NiaNetwork] + * [Retrofit] backed [NiaNetworkDataSource] */ @Singleton class RetrofitNiaNetwork @Inject constructor( networkJson: Json -) : NiaNetwork { +) : NiaNetworkDataSource { private val networkApi = Retrofit.Builder() .baseUrl(NiaBaseUrl) diff --git a/core-network/src/release/java/com/google/samples/apps/nowinandroid/core/network/di/NetworkModule.kt b/core-network/src/release/java/com/google/samples/apps/nowinandroid/core/network/di/NetworkModule.kt index 5739136c0..5a30a5761 100644 --- a/core-network/src/release/java/com/google/samples/apps/nowinandroid/core/network/di/NetworkModule.kt +++ b/core-network/src/release/java/com/google/samples/apps/nowinandroid/core/network/di/NetworkModule.kt @@ -16,7 +16,7 @@ package com.google.samples.apps.nowinandroid.core.network.di -import com.google.samples.apps.nowinandroid.core.network.NiaNetwork +import com.google.samples.apps.nowinandroid.core.network.NiaNetworkDataSource import com.google.samples.apps.nowinandroid.core.network.retrofit.RetrofitNiaNetwork import dagger.Binds import dagger.Module @@ -33,7 +33,7 @@ interface NetworkModule { @Binds fun bindsNiaNetwork( niANetwork: RetrofitNiaNetwork - ): NiaNetwork + ): NiaNetworkDataSource companion object { @Provides diff --git a/core-network/src/test/java/com/google/samples/apps/nowinandroid/core/network/fake/FakeNiaNetworkTest.kt b/core-network/src/test/java/com/google/samples/apps/nowinandroid/core/network/fake/FakeNiaNetworkDataSourceTest.kt similarity index 91% rename from core-network/src/test/java/com/google/samples/apps/nowinandroid/core/network/fake/FakeNiaNetworkTest.kt rename to core-network/src/test/java/com/google/samples/apps/nowinandroid/core/network/fake/FakeNiaNetworkDataSourceTest.kt index 2081f6e1a..653540b78 100644 --- a/core-network/src/test/java/com/google/samples/apps/nowinandroid/core/network/fake/FakeNiaNetworkTest.kt +++ b/core-network/src/test/java/com/google/samples/apps/nowinandroid/core/network/fake/FakeNiaNetworkDataSourceTest.kt @@ -23,15 +23,15 @@ import org.junit.Assert.assertEquals import org.junit.Before import org.junit.Test -class FakeNiaNetworkTest { +class FakeNiaNetworkDataSourceTest { - private lateinit var subject: FakeNiaNetwork + private lateinit var subject: FakeNiaNetworkDataSource private val testDispatcher = StandardTestDispatcher() @Before fun setUp() { - subject = FakeNiaNetwork( + subject = FakeNiaNetworkDataSource( ioDispatcher = testDispatcher, networkJson = Json { ignoreUnknownKeys = true } ) diff --git a/sync/src/main/java/com/google/samples/apps/nowinandroid/sync/workers/SyncWorker.kt b/sync/src/main/java/com/google/samples/apps/nowinandroid/sync/workers/SyncWorker.kt index 3f03e0b17..43a48ab1a 100644 --- a/sync/src/main/java/com/google/samples/apps/nowinandroid/sync/workers/SyncWorker.kt +++ b/sync/src/main/java/com/google/samples/apps/nowinandroid/sync/workers/SyncWorker.kt @@ -28,7 +28,7 @@ import com.google.samples.apps.nowinandroid.core.data.repository.AuthorsReposito import com.google.samples.apps.nowinandroid.core.data.repository.NewsRepository import com.google.samples.apps.nowinandroid.core.data.repository.TopicsRepository import com.google.samples.apps.nowinandroid.core.datastore.ChangeListVersions -import com.google.samples.apps.nowinandroid.core.datastore.NiaPreferences +import com.google.samples.apps.nowinandroid.core.datastore.NiaPreferencesLocalDataSource import com.google.samples.apps.nowinandroid.core.network.Dispatcher import com.google.samples.apps.nowinandroid.core.network.NiaDispatchers.IO import com.google.samples.apps.nowinandroid.sync.initializers.SyncConstraints @@ -48,7 +48,7 @@ import kotlinx.coroutines.withContext class SyncWorker @AssistedInject constructor( @Assisted private val appContext: Context, @Assisted workerParams: WorkerParameters, - private val niaPreferences: NiaPreferences, + private val niaPreferences: NiaPreferencesLocalDataSource, private val topicRepository: TopicsRepository, private val newsRepository: NewsRepository, private val authorsRepository: AuthorsRepository,