feat: WebSocket now-playing via Socket.IO from backend

This commit is contained in:
nk
2026-06-02 19:52:15 +03:00
parent a83672b455
commit bcb999ace9
1159 changed files with 15703 additions and 9918 deletions

View File

@@ -16,6 +16,7 @@ import com.radiola.data.repository.NowPlayingRepositoryImpl;
import com.radiola.data.repository.RecordingRepositoryImpl;
import com.radiola.data.repository.SettingsRepositoryImpl;
import com.radiola.data.repository.StationRepositoryImpl;
import com.radiola.data.repository.StationTester;
import com.radiola.data.repository.TrackHistoryRepositoryImpl;
import com.radiola.di.AppModule_ProvideDatabaseFactory;
import com.radiola.di.AppModule_ProvideFavoritesRepositoryFactory;
@@ -40,6 +41,7 @@ import com.radiola.domain.usecase.GetStationsUseCase;
import com.radiola.domain.usecase.PlayStationUseCase;
import com.radiola.domain.usecase.RefreshStationsUseCase;
import com.radiola.domain.usecase.SearchTrackInServiceUseCase;
import com.radiola.domain.usecase.TestStationsUseCase;
import com.radiola.domain.usecase.ToggleFavoriteUseCase;
import com.radiola.service.PlayerController;
import com.radiola.service.PlayerService;
@@ -437,35 +439,35 @@ public final class DaggerRadiolaApplication_HiltComponents_SingletonC {
@IdentifierNameString
private static final class LazyClassKeyProvider {
static String com_radiola_ui_settings_SettingsViewModel = "com.radiola.ui.settings.SettingsViewModel";
static String com_radiola_ui_history_HistoryViewModel = "com.radiola.ui.history.HistoryViewModel";
static String com_radiola_ui_favorites_FavoritesViewModel = "com.radiola.ui.favorites.FavoritesViewModel";
static String com_radiola_ui_history_HistoryViewModel = "com.radiola.ui.history.HistoryViewModel";
static String com_radiola_ui_recordings_RecordingsViewModel = "com.radiola.ui.recordings.RecordingsViewModel";
static String com_radiola_ui_settings_SettingsViewModel = "com.radiola.ui.settings.SettingsViewModel";
static String com_radiola_ui_stations_StationsViewModel = "com.radiola.ui.stations.StationsViewModel";
static String com_radiola_ui_player_PlayerViewModel = "com.radiola.ui.player.PlayerViewModel";
static String com_radiola_ui_recordings_RecordingsViewModel = "com.radiola.ui.recordings.RecordingsViewModel";
@KeepFieldType
SettingsViewModel com_radiola_ui_settings_SettingsViewModel2;
HistoryViewModel com_radiola_ui_history_HistoryViewModel2;
@KeepFieldType
FavoritesViewModel com_radiola_ui_favorites_FavoritesViewModel2;
@KeepFieldType
HistoryViewModel com_radiola_ui_history_HistoryViewModel2;
RecordingsViewModel com_radiola_ui_recordings_RecordingsViewModel2;
@KeepFieldType
SettingsViewModel com_radiola_ui_settings_SettingsViewModel2;
@KeepFieldType
StationsViewModel com_radiola_ui_stations_StationsViewModel2;
@KeepFieldType
PlayerViewModel com_radiola_ui_player_PlayerViewModel2;
@KeepFieldType
RecordingsViewModel com_radiola_ui_recordings_RecordingsViewModel2;
}
}
@@ -510,6 +512,10 @@ public final class DaggerRadiolaApplication_HiltComponents_SingletonC {
return new GetNowPlayingUseCase(singletonCImpl.provideNowPlayingRepositoryProvider.get());
}
private TestStationsUseCase testStationsUseCase() {
return new TestStationsUseCase(singletonCImpl.provideStationRepositoryProvider.get(), singletonCImpl.provideNowPlayingRepositoryProvider.get(), singletonCImpl.stationTesterProvider.get());
}
private RefreshStationsUseCase refreshStationsUseCase() {
return new RefreshStationsUseCase(singletonCImpl.provideStationRepositoryProvider.get());
}
@@ -541,7 +547,7 @@ public final class DaggerRadiolaApplication_HiltComponents_SingletonC {
@IdentifierNameString
private static final class LazyClassKeyProvider {
static String com_radiola_ui_history_HistoryViewModel = "com.radiola.ui.history.HistoryViewModel";
static String com_radiola_ui_stations_StationsViewModel = "com.radiola.ui.stations.StationsViewModel";
static String com_radiola_ui_favorites_FavoritesViewModel = "com.radiola.ui.favorites.FavoritesViewModel";
@@ -549,12 +555,12 @@ public final class DaggerRadiolaApplication_HiltComponents_SingletonC {
static String com_radiola_ui_settings_SettingsViewModel = "com.radiola.ui.settings.SettingsViewModel";
static String com_radiola_ui_history_HistoryViewModel = "com.radiola.ui.history.HistoryViewModel";
static String com_radiola_ui_player_PlayerViewModel = "com.radiola.ui.player.PlayerViewModel";
static String com_radiola_ui_stations_StationsViewModel = "com.radiola.ui.stations.StationsViewModel";
@KeepFieldType
HistoryViewModel com_radiola_ui_history_HistoryViewModel2;
StationsViewModel com_radiola_ui_stations_StationsViewModel2;
@KeepFieldType
FavoritesViewModel com_radiola_ui_favorites_FavoritesViewModel2;
@@ -566,10 +572,10 @@ public final class DaggerRadiolaApplication_HiltComponents_SingletonC {
SettingsViewModel com_radiola_ui_settings_SettingsViewModel2;
@KeepFieldType
PlayerViewModel com_radiola_ui_player_PlayerViewModel2;
HistoryViewModel com_radiola_ui_history_HistoryViewModel2;
@KeepFieldType
StationsViewModel com_radiola_ui_stations_StationsViewModel2;
PlayerViewModel com_radiola_ui_player_PlayerViewModel2;
}
private static final class SwitchingProvider<T> implements Provider<T> {
@@ -606,7 +612,7 @@ public final class DaggerRadiolaApplication_HiltComponents_SingletonC {
return (T) new RecordingsViewModel(singletonCImpl.provideRecordingRepositoryProvider.get());
case 4: // com.radiola.ui.settings.SettingsViewModel
return (T) new SettingsViewModel(singletonCImpl.provideSettingsRepositoryProvider.get());
return (T) new SettingsViewModel(singletonCImpl.provideSettingsRepositoryProvider.get(), viewModelCImpl.testStationsUseCase());
case 5: // com.radiola.ui.stations.StationsViewModel
return (T) new StationsViewModel(viewModelCImpl.getStationsUseCase(), viewModelCImpl.refreshStationsUseCase(), viewModelCImpl.playStationUseCase(), viewModelCImpl.toggleFavoriteUseCase(), singletonCImpl.provideFavoritesRepositoryProvider.get(), singletonCImpl.provideStationRepositoryProvider.get());
@@ -727,6 +733,8 @@ public final class DaggerRadiolaApplication_HiltComponents_SingletonC {
private Provider<RecordingRepository> provideRecordingRepositoryProvider;
private Provider<StationTester> stationTesterProvider;
private SingletonCImpl(ApplicationContextModule applicationContextModuleParam) {
this.applicationContextModule = applicationContextModuleParam;
initialize(applicationContextModuleParam);
@@ -772,6 +780,7 @@ public final class DaggerRadiolaApplication_HiltComponents_SingletonC {
this.provideNowPlayingRepositoryProvider = DoubleCheck.provider(new SwitchingProvider<NowPlayingRepository>(singletonCImpl, 10));
this.provideSettingsRepositoryProvider = DoubleCheck.provider(new SwitchingProvider<SettingsRepository>(singletonCImpl, 11));
this.provideRecordingRepositoryProvider = DoubleCheck.provider(new SwitchingProvider<RecordingRepository>(singletonCImpl, 12));
this.stationTesterProvider = DoubleCheck.provider(new SwitchingProvider<StationTester>(singletonCImpl, 13));
}
@Override
@@ -846,6 +855,9 @@ public final class DaggerRadiolaApplication_HiltComponents_SingletonC {
case 12: // com.radiola.domain.repository.RecordingRepository
return (T) AppModule_ProvideRecordingRepositoryFactory.provideRecordingRepository(singletonCImpl.recordingRepositoryImpl());
case 13: // com.radiola.data.repository.StationTester
return (T) new StationTester(singletonCImpl.provideOkHttpClientProvider.get());
default: throw new AssertionError(id);
}
}