From 79ac2793e3b89ac780642a919a34b37421cd4db8 Mon Sep 17 00:00:00 2001 From: edde746 <86283021+edde746@users.noreply.github.com> Date: Mon, 15 Dec 2025 05:45:38 +0100 Subject: [PATCH] refactor: remove redundant server enabling --- lib/main.dart | 6 +-- lib/screens/auth_screen.dart | 6 +-- lib/services/server_registry.dart | 79 +------------------------------ lib/services/storage_service.dart | 17 ------- 4 files changed, 5 insertions(+), 103 deletions(-) diff --git a/lib/main.dart b/lib/main.dart index c2500f6a..a492da88 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -344,8 +344,8 @@ class _SetupScreenState extends State { // Migrate from single-server to multi-server if needed await registry.migrateFromSingleServer(); - // Load enabled servers - final servers = await registry.getEnabledServers(); + // Load all configured servers + final servers = await registry.getServers(); if (servers.isEmpty) { // No servers configured - show auth screen @@ -360,7 +360,7 @@ class _SetupScreenState extends State { final multiServerProvider = Provider.of(context, listen: false); try { - appLogger.i('Connecting to ${servers.length} enabled servers...'); + appLogger.i('Connecting to ${servers.length} servers...'); // Get or generate client identifier final clientId = storage.getClientIdentifier(); diff --git a/lib/screens/auth_screen.dart b/lib/screens/auth_screen.dart index 4ce7e074..97fa2f76 100644 --- a/lib/screens/auth_screen.dart +++ b/lib/screens/auth_screen.dart @@ -66,14 +66,10 @@ class _AuthScreenState extends State { return; } - // Save all servers to registry and enable them + // Save all servers to registry (all servers are considered enabled) final registry = ServerRegistry(storage); await registry.saveServers(servers); - // Enable all servers - final serverIds = servers.map((s) => s.clientIdentifier).toSet(); - await registry.saveEnabledServerIds(serverIds); - // Connect to all servers if (!mounted) return; final multiServerProvider = context.read(); diff --git a/lib/services/server_registry.dart b/lib/services/server_registry.dart index 7a1461b2..746aa12f 100644 --- a/lib/services/server_registry.dart +++ b/lib/services/server_registry.dart @@ -5,7 +5,7 @@ import 'plex_auth_service.dart'; import 'storage_service.dart'; /// Centralized server configuration registry -/// Manages which servers are available, enabled/disabled, and their configurations +/// Manages which servers are available and their configurations class ServerRegistry { final StorageService _storage; @@ -39,71 +39,6 @@ class ServerRegistry { } } - /// Get enabled server IDs - Future> getEnabledServerIds() async { - try { - final enabledJson = _storage.getEnabledServersJson(); - if (enabledJson == null || enabledJson.isEmpty) { - // If no enabled servers are stored, all servers are enabled by default - final servers = await getServers(); - return servers.map((s) => s.clientIdentifier).toSet(); - } - - final List enabledList = jsonDecode(enabledJson); - return enabledList.cast().toSet(); - } catch (e, stackTrace) { - appLogger.e('Failed to load enabled servers from storage', error: e, stackTrace: stackTrace); - return {}; - } - } - - /// Save enabled server IDs - Future saveEnabledServerIds(Set serverIds) async { - try { - final enabledJson = jsonEncode(serverIds.toList()); - await _storage.saveEnabledServersJson(enabledJson); - appLogger.d('Saved ${serverIds.length} enabled servers to storage'); - } catch (e, stackTrace) { - appLogger.e('Failed to save enabled servers to storage', error: e, stackTrace: stackTrace); - rethrow; - } - } - - /// Get only enabled servers - Future> getEnabledServers() async { - final servers = await getServers(); - final enabledIds = await getEnabledServerIds(); - - if (enabledIds.isEmpty) { - // If no enabled list, all servers are enabled - return servers; - } - - return servers.where((s) => enabledIds.contains(s.clientIdentifier)).toList(); - } - - /// Enable a server - Future enableServer(String serverId) async { - final enabledIds = await getEnabledServerIds(); - enabledIds.add(serverId); - await saveEnabledServerIds(enabledIds); - appLogger.i('Enabled server: $serverId'); - } - - /// Disable a server - Future disableServer(String serverId) async { - final enabledIds = await getEnabledServerIds(); - enabledIds.remove(serverId); - await saveEnabledServerIds(enabledIds); - appLogger.i('Disabled server: $serverId'); - } - - /// Check if a server is enabled - Future isServerEnabled(String serverId) async { - final enabledIds = await getEnabledServerIds(); - return enabledIds.contains(serverId); - } - /// Get a specific server by ID Future getServer(String serverId) async { final servers = await getServers(); @@ -143,11 +78,6 @@ class ServerRegistry { } await saveServers(servers); - - // Ensure new servers are enabled by default - if (index < 0) { - await enableServer(server.clientIdentifier); - } } /// Remove a server @@ -156,18 +86,12 @@ class ServerRegistry { servers.removeWhere((s) => s.clientIdentifier == serverId); await saveServers(servers); - // Also remove from enabled list - final enabledIds = await getEnabledServerIds(); - enabledIds.remove(serverId); - await saveEnabledServerIds(enabledIds); - appLogger.i('Removed server: $serverId'); } /// Clear all servers Future clearAllServers() async { await _storage.clearServersList(); - await _storage.clearEnabledServers(); appLogger.i('Cleared all servers from registry'); } @@ -196,7 +120,6 @@ class ServerRegistry { // Save as first server in new format await saveServers([server]); - await enableServer(server.clientIdentifier); appLogger.i('Migration complete'); } catch (e, stackTrace) { diff --git a/lib/services/storage_service.dart b/lib/services/storage_service.dart index bab7c3f8..dbc57162 100644 --- a/lib/services/storage_service.dart +++ b/lib/services/storage_service.dart @@ -19,7 +19,6 @@ class StorageService extends BaseSharedPreferencesService { static const String _keyHomeUsersCacheExpiry = 'home_users_cache_expiry'; static const String _keyHiddenLibraries = 'hidden_libraries'; static const String _keyServersList = 'servers_list'; - static const String _keyEnabledServers = 'enabled_servers'; static const String _keyServerOrder = 'server_order'; // Key prefixes for per-id storage @@ -329,31 +328,15 @@ class StorageService extends BaseSharedPreferencesService { await prefs.setString(_keyServersList, serversJson); } - /// Get enabled servers as JSON string - String? getEnabledServersJson() { - return prefs.getString(_keyEnabledServers); - } - - /// Save enabled servers as JSON string - Future saveEnabledServersJson(String enabledJson) async { - await prefs.setString(_keyEnabledServers, enabledJson); - } - /// Clear servers list Future clearServersList() async { await prefs.remove(_keyServersList); } - /// Clear enabled servers - Future clearEnabledServers() async { - await prefs.remove(_keyEnabledServers); - } - /// Clear all multi-server data Future clearMultiServerData() async { await Future.wait([ clearServersList(), - clearEnabledServers(), clearServerOrder(), _clearKeysWithPrefix(_prefixServerEndpoint), ]);