refactor: centralize globalKey construction via buildGlobalKey()

This commit is contained in:
edde746
2026-02-23 17:53:20 +01:00
parent ef2c464dd4
commit e23f472d78
21 changed files with 65 additions and 48 deletions
+2 -1
View File
@@ -1,6 +1,7 @@
import 'package:json_annotation/json_annotation.dart';
import 'mixins/multi_server_fields.dart';
import '../utils/global_key_utils.dart';
part 'plex_library.g.dart';
@@ -26,7 +27,7 @@ class PlexLibrary with MultiServerFields {
final String? serverName;
/// Global unique identifier across all servers (serverId:key)
String get globalKey => serverId != null ? '$serverId:$key' : key;
String get globalKey => serverId != null ? buildGlobalKey(serverId!, key) : key;
PlexLibrary({
required this.key,
+2 -1
View File
@@ -4,6 +4,7 @@ import '../services/settings_service.dart' show EpisodePosterMode;
import '../widgets/plex_optimized_image.dart' show kBlurArtwork, obfuscateText;
import 'mixins/multi_server_fields.dart';
import 'plex_role.dart';
import '../utils/global_key_utils.dart';
part 'plex_metadata.g.dart';
@@ -111,7 +112,7 @@ class PlexMetadata with MultiServerFields {
final String? clearLogo;
/// Global unique identifier across all servers (serverId:ratingKey)
String get globalKey => serverId != null ? '$serverId:$ratingKey' : ratingKey;
String get globalKey => serverId != null ? buildGlobalKey(serverId!, ratingKey) : ratingKey;
/// Parsed media type enum for type-safe comparisons
PlexMediaType get mediaType {
+2 -1
View File
@@ -2,6 +2,7 @@ import 'package:json_annotation/json_annotation.dart';
import '../widgets/plex_optimized_image.dart' show kBlurArtwork, obfuscateText;
import 'mixins/multi_server_fields.dart';
import '../utils/global_key_utils.dart';
part 'plex_playlist.g.dart';
@@ -65,7 +66,7 @@ class PlexPlaylist with MultiServerFields {
bool get isEditable => !smart;
/// Get globally unique key across all servers
String get globalKey => serverId != null ? '$serverId:$ratingKey' : ratingKey;
String get globalKey => serverId != null ? buildGlobalKey(serverId!, ratingKey) : ratingKey;
// Properties for MediaCard compatibility with PlexMetadata interface