refactor: update package structure to use core namespace

This commit is contained in:
2026-05-06 17:24:04 +02:00
parent 41f7129b08
commit 322eb69ab5
194 changed files with 465 additions and 457 deletions

View File

@@ -2,9 +2,9 @@ package hu.bbara.purefin.data.catalog
import android.util.Log
import androidx.datastore.core.DataStore
import hu.bbara.purefin.data.HomeRepository
import hu.bbara.purefin.data.NetworkMonitor
import hu.bbara.purefin.data.UserSessionRepository
import hu.bbara.purefin.core.data.HomeRepository
import hu.bbara.purefin.core.data.NetworkMonitor
import hu.bbara.purefin.core.data.UserSessionRepository
import hu.bbara.purefin.data.converter.toEpisode
import hu.bbara.purefin.data.converter.toLibrary
import hu.bbara.purefin.data.converter.toMovie

View File

@@ -1,8 +1,8 @@
package hu.bbara.purefin.data.catalog
import android.util.Log
import hu.bbara.purefin.data.LocalMediaRepository
import hu.bbara.purefin.data.UserSessionRepository
import hu.bbara.purefin.core.data.LocalMediaRepository
import hu.bbara.purefin.core.data.UserSessionRepository
import hu.bbara.purefin.data.converter.toEpisode
import hu.bbara.purefin.data.converter.toMovie
import hu.bbara.purefin.data.converter.toSeason

View File

@@ -1,6 +1,6 @@
package hu.bbara.purefin.data.catalog
import hu.bbara.purefin.data.LocalMediaRepository
import hu.bbara.purefin.core.data.LocalMediaRepository
import hu.bbara.purefin.data.offline.room.offline.OfflineRoomMediaLocalDataSource
import hu.bbara.purefin.model.Episode
import hu.bbara.purefin.model.Movie

View File

@@ -1,7 +1,7 @@
package hu.bbara.purefin.data.converter
import hu.bbara.purefin.image.ArtworkKind
import hu.bbara.purefin.image.ImageUrlBuilder
import hu.bbara.purefin.core.image.ArtworkKind
import hu.bbara.purefin.core.image.ImageUrlBuilder
import hu.bbara.purefin.model.Episode
import hu.bbara.purefin.model.Genre
import hu.bbara.purefin.model.Library

View File

@@ -6,7 +6,7 @@ import android.net.Network
import android.net.NetworkCapabilities
import android.net.NetworkRequest
import dagger.hilt.android.qualifiers.ApplicationContext
import hu.bbara.purefin.data.NetworkMonitor
import hu.bbara.purefin.core.data.NetworkMonitor
import kotlinx.coroutines.channels.awaitClose
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.callbackFlow

View File

@@ -6,19 +6,19 @@ import androidx.core.net.toUri
import androidx.media3.common.MediaItem
import androidx.media3.common.MediaMetadata
import androidx.media3.common.util.UnstableApi
import hu.bbara.purefin.data.PlayableMediaRepository
import hu.bbara.purefin.data.PlaybackReportContext
import hu.bbara.purefin.data.UserSessionRepository
import hu.bbara.purefin.core.data.PlayableMediaRepository
import hu.bbara.purefin.core.data.PlaybackReportContext
import hu.bbara.purefin.core.data.UserSessionRepository
import hu.bbara.purefin.data.jellyfin.client.JellyfinApiClient
import hu.bbara.purefin.data.jellyfin.playback.JellyfinPlaybackResolver
import hu.bbara.purefin.data.jellyfin.playback.PlaybackDecision
import hu.bbara.purefin.data.jellyfin.playback.playbackCustomCacheKey
import hu.bbara.purefin.image.ArtworkKind
import hu.bbara.purefin.image.ImageUrlBuilder
import hu.bbara.purefin.core.image.ArtworkKind
import hu.bbara.purefin.core.image.ImageUrlBuilder
import hu.bbara.purefin.model.MediaSegment
import hu.bbara.purefin.model.PlayableMedia
import hu.bbara.purefin.model.SegmentType
import hu.bbara.purefin.player.preference.TrackPreferencesRepository
import hu.bbara.purefin.core.player.preference.TrackPreferencesRepository
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.flow.first
import kotlinx.coroutines.withContext

View File

@@ -4,12 +4,12 @@ import dagger.Binds
import dagger.Module
import dagger.hilt.InstallIn
import dagger.hilt.components.SingletonComponent
import hu.bbara.purefin.data.AuthenticationRepository
import hu.bbara.purefin.data.DownloadMediaSourceResolver
import hu.bbara.purefin.data.NetworkMonitor
import hu.bbara.purefin.data.PlayableMediaRepository
import hu.bbara.purefin.data.PlaybackProgressReporter
import hu.bbara.purefin.data.SessionBootstrapper
import hu.bbara.purefin.core.data.AuthenticationRepository
import hu.bbara.purefin.core.data.DownloadMediaSourceResolver
import hu.bbara.purefin.core.data.NetworkMonitor
import hu.bbara.purefin.core.data.PlayableMediaRepository
import hu.bbara.purefin.core.data.PlaybackProgressReporter
import hu.bbara.purefin.core.data.SessionBootstrapper
import hu.bbara.purefin.data.jellyfin.download.JellyfinDownloadMediaSourceResolver
import hu.bbara.purefin.data.jellyfin.session.JellyfinAuthenticationRepository
import hu.bbara.purefin.data.jellyfin.session.JellyfinSessionBootstrapper

View File

@@ -1,7 +1,7 @@
package hu.bbara.purefin.data.jellyfin
import hu.bbara.purefin.data.jellyfin.client.JellyfinApiClient
import hu.bbara.purefin.jellyfin.JellyfinMediaMetadataUpdater
import hu.bbara.purefin.core.jellyfin.JellyfinMediaMetadataUpdater
import java.util.UUID
import javax.inject.Inject

View File

@@ -1,8 +1,8 @@
package hu.bbara.purefin.data.jellyfin
import hu.bbara.purefin.data.PlaybackProgressReporter
import hu.bbara.purefin.core.data.PlaybackProgressReporter
import hu.bbara.purefin.data.jellyfin.client.JellyfinApiClient
import hu.bbara.purefin.data.PlaybackReportContext
import hu.bbara.purefin.core.data.PlaybackReportContext
import java.util.UUID
import javax.inject.Inject
import javax.inject.Singleton

View File

@@ -1,11 +1,11 @@
package hu.bbara.purefin.data.jellyfin
import hu.bbara.purefin.data.SearchManager
import hu.bbara.purefin.data.UserSessionRepository
import hu.bbara.purefin.core.data.SearchManager
import hu.bbara.purefin.core.data.UserSessionRepository
import hu.bbara.purefin.data.jellyfin.client.JellyfinApiClient
import hu.bbara.purefin.feature.search.SearchResult
import hu.bbara.purefin.image.ArtworkKind
import hu.bbara.purefin.image.ImageUrlBuilder
import hu.bbara.purefin.core.feature.search.SearchResult
import hu.bbara.purefin.core.image.ArtworkKind
import hu.bbara.purefin.core.image.ImageUrlBuilder
import hu.bbara.purefin.model.Genre
import hu.bbara.purefin.model.MediaKind
import kotlinx.coroutines.CoroutineScope

View File

@@ -3,9 +3,9 @@ package hu.bbara.purefin.data.jellyfin.client
import android.content.Context
import android.util.Log
import dagger.hilt.android.qualifiers.ApplicationContext
import hu.bbara.purefin.data.PlaybackMethod
import hu.bbara.purefin.data.PlaybackReportContext
import hu.bbara.purefin.data.UserSessionRepository
import hu.bbara.purefin.core.data.PlaybackMethod
import hu.bbara.purefin.core.data.PlaybackReportContext
import hu.bbara.purefin.core.data.UserSessionRepository
import kotlinx.coroutines.CancellationException
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.flow.first

View File

@@ -1,10 +1,10 @@
package hu.bbara.purefin.data.jellyfin.download
import hu.bbara.purefin.data.DownloadMediaSourceResolver
import hu.bbara.purefin.data.EpisodeDownloadSource
import hu.bbara.purefin.data.MovieDownloadSource
import hu.bbara.purefin.data.PlaybackMethod
import hu.bbara.purefin.data.UserSessionRepository
import hu.bbara.purefin.core.data.DownloadMediaSourceResolver
import hu.bbara.purefin.core.data.EpisodeDownloadSource
import hu.bbara.purefin.core.data.MovieDownloadSource
import hu.bbara.purefin.core.data.PlaybackMethod
import hu.bbara.purefin.core.data.UserSessionRepository
import hu.bbara.purefin.data.converter.toEpisode
import hu.bbara.purefin.data.converter.toMovie
import hu.bbara.purefin.data.converter.toSeason

View File

@@ -1,7 +1,7 @@
package hu.bbara.purefin.data.jellyfin.playback
import android.util.Log
import hu.bbara.purefin.data.UserSessionRepository
import hu.bbara.purefin.core.data.UserSessionRepository
import hu.bbara.purefin.data.jellyfin.client.JellyfinApiClient
import java.util.UUID
import java.util.concurrent.ConcurrentHashMap

View File

@@ -1,6 +1,6 @@
package hu.bbara.purefin.data.jellyfin.playback
import hu.bbara.purefin.data.PlaybackMethod
import hu.bbara.purefin.core.data.PlaybackMethod
fun playbackCustomCacheKey(
mediaId: String,

View File

@@ -1,6 +1,6 @@
package hu.bbara.purefin.data.jellyfin.playback
import hu.bbara.purefin.data.PlaybackReportContext
import hu.bbara.purefin.core.data.PlaybackReportContext
import org.jellyfin.sdk.model.api.MediaSourceInfo
data class PlaybackDecision(

View File

@@ -1,7 +1,7 @@
package hu.bbara.purefin.data.jellyfin.playback
import hu.bbara.purefin.data.PlaybackMethod
import hu.bbara.purefin.data.PlaybackReportContext
import hu.bbara.purefin.core.data.PlaybackMethod
import hu.bbara.purefin.core.data.PlaybackReportContext
import org.jellyfin.sdk.model.api.MediaProtocol
import org.jellyfin.sdk.model.api.MediaSourceInfo

View File

@@ -4,7 +4,7 @@ import dagger.Module
import dagger.Provides
import dagger.hilt.InstallIn
import dagger.hilt.components.SingletonComponent
import hu.bbara.purefin.data.PlaybackProfileFamily
import hu.bbara.purefin.core.data.PlaybackProfileFamily
import javax.inject.Singleton
@Module

View File

@@ -1,8 +1,8 @@
package hu.bbara.purefin.data.jellyfin.session
import android.util.Log
import hu.bbara.purefin.data.AuthenticationRepository
import hu.bbara.purefin.data.UserSessionRepository
import hu.bbara.purefin.core.data.AuthenticationRepository
import hu.bbara.purefin.core.data.UserSessionRepository
import hu.bbara.purefin.data.jellyfin.client.JellyfinApiClient
import javax.inject.Inject
import javax.inject.Singleton

View File

@@ -1,6 +1,6 @@
package hu.bbara.purefin.data.jellyfin.session
import hu.bbara.purefin.data.SessionBootstrapper
import hu.bbara.purefin.core.data.SessionBootstrapper
import hu.bbara.purefin.data.jellyfin.client.JellyfinApiClient
import javax.inject.Inject
import javax.inject.Singleton

View File

@@ -1,7 +1,7 @@
package hu.bbara.purefin.data.jellyfin.session
import kotlinx.serialization.Serializable
import hu.bbara.purefin.navigation.UuidSerializer
import hu.bbara.purefin.core.navigation.UuidSerializer
import java.util.UUID
@Serializable

View File

@@ -10,7 +10,7 @@ import dagger.Provides
import dagger.hilt.InstallIn
import dagger.hilt.android.qualifiers.ApplicationContext
import dagger.hilt.components.SingletonComponent
import hu.bbara.purefin.data.UserSessionRepository
import hu.bbara.purefin.core.data.UserSessionRepository
import javax.inject.Singleton
@Module

View File

@@ -1,7 +1,7 @@
package hu.bbara.purefin.data.jellyfin.session
import androidx.datastore.core.DataStore
import hu.bbara.purefin.data.UserSessionRepository
import hu.bbara.purefin.core.data.UserSessionRepository
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.distinctUntilChanged
import kotlinx.coroutines.flow.first

View File

@@ -4,17 +4,17 @@ import dagger.Binds
import dagger.Module
import dagger.hilt.InstallIn
import dagger.hilt.components.SingletonComponent
import hu.bbara.purefin.Offline
import hu.bbara.purefin.Online
import hu.bbara.purefin.data.HomeRepository
import hu.bbara.purefin.data.LocalMediaRepository
import hu.bbara.purefin.data.SearchManager
import hu.bbara.purefin.core.Offline
import hu.bbara.purefin.core.Online
import hu.bbara.purefin.core.data.HomeRepository
import hu.bbara.purefin.core.data.LocalMediaRepository
import hu.bbara.purefin.core.data.SearchManager
import hu.bbara.purefin.data.catalog.InMemoryAppContentRepository
import hu.bbara.purefin.data.catalog.InMemoryLocalMediaRepository
import hu.bbara.purefin.data.catalog.OfflineLocalMediaRepository
import hu.bbara.purefin.data.jellyfin.JellyfinMediaMetadataUpdaterImpl
import hu.bbara.purefin.data.jellyfin.SearchManagerImpl
import hu.bbara.purefin.jellyfin.JellyfinMediaMetadataUpdater
import hu.bbara.purefin.core.jellyfin.JellyfinMediaMetadataUpdater
@Module
@InstallIn(SingletonComponent::class)

View File

@@ -4,8 +4,8 @@ import dagger.Binds
import dagger.Module
import dagger.hilt.InstallIn
import dagger.hilt.components.SingletonComponent
import hu.bbara.purefin.data.OfflineCatalogStore
import hu.bbara.purefin.data.SmartDownloadStore
import hu.bbara.purefin.core.data.OfflineCatalogStore
import hu.bbara.purefin.core.data.SmartDownloadStore
@Module
@InstallIn(SingletonComponent::class)

View File

@@ -1,6 +1,6 @@
package hu.bbara.purefin.data.offline
import hu.bbara.purefin.data.OfflineCatalogStore
import hu.bbara.purefin.core.data.OfflineCatalogStore
import hu.bbara.purefin.data.offline.room.offline.OfflineRoomMediaLocalDataSource
import hu.bbara.purefin.model.Episode
import hu.bbara.purefin.model.Movie

View File

@@ -1,6 +1,6 @@
package hu.bbara.purefin.data.offline
import hu.bbara.purefin.data.SmartDownloadStore
import hu.bbara.purefin.core.data.SmartDownloadStore
import hu.bbara.purefin.data.offline.room.dao.SmartDownloadDao
import hu.bbara.purefin.data.offline.room.entity.SmartDownloadEntity
import java.util.UUID

View File

@@ -1,6 +1,6 @@
package hu.bbara.purefin.data.jellyfin.playback
import hu.bbara.purefin.data.PlaybackMethod
import hu.bbara.purefin.core.data.PlaybackMethod
import org.junit.Assert.assertEquals
import org.junit.Assert.assertNull
import org.junit.Test

View File

@@ -1,6 +1,6 @@
package hu.bbara.purefin.data.jellyfin.playback
import hu.bbara.purefin.data.PlaybackMethod
import hu.bbara.purefin.core.data.PlaybackMethod
import org.jellyfin.sdk.model.api.MediaProtocol
import org.jellyfin.sdk.model.api.MediaSourceInfo
import org.jellyfin.sdk.model.api.MediaSourceType