diff options
| author | Ionut Andrei Oanca <oancaionutandrei@gmail.com> | 2020-12-04 20:15:16 +0100 |
|---|---|---|
| committer | Ionut Andrei Oanca <oancaionutandrei@gmail.com> | 2020-12-04 20:15:16 +0100 |
| commit | cbf70e7a037f9edb431cf0e0f43b261b9a1cf203 (patch) | |
| tree | 087038c4a183c6b7c39654ef14aa4180be3ea60e | |
| parent | b7eb4da04e0cbb820becc9022975f69aed4f8531 (diff) | |
Change type of PlaylistItemId to Guid
20 files changed, 63 insertions, 69 deletions
diff --git a/Emby.Server.Implementations/SyncPlay/Group.cs b/Emby.Server.Implementations/SyncPlay/Group.cs index e32f5e25d..b5031b708 100644 --- a/Emby.Server.Implementations/SyncPlay/Group.cs +++ b/Emby.Server.Implementations/SyncPlay/Group.cs @@ -505,7 +505,7 @@ namespace Emby.Server.Implementations.SyncPlay } /// <inheritdoc /> - public bool SetPlayingItem(string playlistItemId) + public bool SetPlayingItem(Guid playlistItemId) { var itemFound = PlayQueue.SetPlayingItemByPlaylistId(playlistItemId); @@ -525,7 +525,7 @@ namespace Emby.Server.Implementations.SyncPlay } /// <inheritdoc /> - public bool RemoveFromPlayQueue(IReadOnlyList<string> playlistItemIds) + public bool RemoveFromPlayQueue(IReadOnlyList<Guid> playlistItemIds) { var playingItemRemoved = PlayQueue.RemoveFromPlaylist(playlistItemIds); if (playingItemRemoved) @@ -548,7 +548,7 @@ namespace Emby.Server.Implementations.SyncPlay } /// <inheritdoc /> - public bool MoveItemInPlayQueue(string playlistItemId, int newIndex) + public bool MoveItemInPlayQueue(Guid playlistItemId, int newIndex) { return PlayQueue.MovePlaylistItem(playlistItemId, newIndex); } diff --git a/Jellyfin.Api/Models/SyncPlayDtos/BufferRequestDto.cs b/Jellyfin.Api/Models/SyncPlayDtos/BufferRequestDto.cs index cafc400c9..479c44084 100644 --- a/Jellyfin.Api/Models/SyncPlayDtos/BufferRequestDto.cs +++ b/Jellyfin.Api/Models/SyncPlayDtos/BufferRequestDto.cs @@ -12,7 +12,7 @@ namespace Jellyfin.Api.Models.SyncPlayDtos /// </summary> public BufferRequestDto() { - PlaylistItemId = string.Empty; + PlaylistItemId = Guid.Empty; } /// <summary> @@ -37,6 +37,6 @@ namespace Jellyfin.Api.Models.SyncPlayDtos /// Gets or sets the playlist item identifier of the playing item. /// </summary> /// <value>The playlist item identifier.</value> - public string PlaylistItemId { get; set; } + public Guid PlaylistItemId { get; set; } } } diff --git a/Jellyfin.Api/Models/SyncPlayDtos/MovePlaylistItemRequestDto.cs b/Jellyfin.Api/Models/SyncPlayDtos/MovePlaylistItemRequestDto.cs index 9e9c0b1ea..3af25f3e3 100644 --- a/Jellyfin.Api/Models/SyncPlayDtos/MovePlaylistItemRequestDto.cs +++ b/Jellyfin.Api/Models/SyncPlayDtos/MovePlaylistItemRequestDto.cs @@ -1,3 +1,5 @@ +using System; + namespace Jellyfin.Api.Models.SyncPlayDtos { /// <summary> @@ -10,14 +12,14 @@ namespace Jellyfin.Api.Models.SyncPlayDtos /// </summary> public MovePlaylistItemRequestDto() { - PlaylistItemId = string.Empty; + PlaylistItemId = Guid.Empty; } /// <summary> /// Gets or sets the playlist identifier of the item. /// </summary> /// <value>The playlist identifier of the item.</value> - public string PlaylistItemId { get; set; } + public Guid PlaylistItemId { get; set; } /// <summary> /// Gets or sets the new position. diff --git a/Jellyfin.Api/Models/SyncPlayDtos/NextItemRequestDto.cs b/Jellyfin.Api/Models/SyncPlayDtos/NextItemRequestDto.cs index aa67954e7..f59a93f13 100644 --- a/Jellyfin.Api/Models/SyncPlayDtos/NextItemRequestDto.cs +++ b/Jellyfin.Api/Models/SyncPlayDtos/NextItemRequestDto.cs @@ -1,3 +1,5 @@ +using System; + namespace Jellyfin.Api.Models.SyncPlayDtos { /// <summary> @@ -10,13 +12,13 @@ namespace Jellyfin.Api.Models.SyncPlayDtos /// </summary> public NextItemRequestDto() { - PlaylistItemId = string.Empty; + PlaylistItemId = Guid.Empty; } /// <summary> /// Gets or sets the playing item identifier. /// </summary> /// <value>The playing item identifier.</value> - public string PlaylistItemId { get; set; } + public Guid PlaylistItemId { get; set; } } } diff --git a/Jellyfin.Api/Models/SyncPlayDtos/PreviousItemRequestDto.cs b/Jellyfin.Api/Models/SyncPlayDtos/PreviousItemRequestDto.cs index b23d4dee0..7fd4a49be 100644 --- a/Jellyfin.Api/Models/SyncPlayDtos/PreviousItemRequestDto.cs +++ b/Jellyfin.Api/Models/SyncPlayDtos/PreviousItemRequestDto.cs @@ -1,3 +1,5 @@ +using System; + namespace Jellyfin.Api.Models.SyncPlayDtos { /// <summary> @@ -10,13 +12,13 @@ namespace Jellyfin.Api.Models.SyncPlayDtos /// </summary> public PreviousItemRequestDto() { - PlaylistItemId = string.Empty; + PlaylistItemId = Guid.Empty; } /// <summary> /// Gets or sets the playing item identifier. /// </summary> /// <value>The playing item identifier.</value> - public string PlaylistItemId { get; set; } + public Guid PlaylistItemId { get; set; } } } diff --git a/Jellyfin.Api/Models/SyncPlayDtos/ReadyRequestDto.cs b/Jellyfin.Api/Models/SyncPlayDtos/ReadyRequestDto.cs index 0155d5249..d9c193016 100644 --- a/Jellyfin.Api/Models/SyncPlayDtos/ReadyRequestDto.cs +++ b/Jellyfin.Api/Models/SyncPlayDtos/ReadyRequestDto.cs @@ -12,7 +12,7 @@ namespace Jellyfin.Api.Models.SyncPlayDtos /// </summary> public ReadyRequestDto() { - PlaylistItemId = string.Empty; + PlaylistItemId = Guid.Empty; } /// <summary> @@ -37,6 +37,6 @@ namespace Jellyfin.Api.Models.SyncPlayDtos /// Gets or sets the playlist item identifier of the playing item. /// </summary> /// <value>The playlist item identifier.</value> - public string PlaylistItemId { get; set; } + public Guid PlaylistItemId { get; set; } } } diff --git a/Jellyfin.Api/Models/SyncPlayDtos/RemoveFromPlaylistRequestDto.cs b/Jellyfin.Api/Models/SyncPlayDtos/RemoveFromPlaylistRequestDto.cs index facb809fc..e9b2b2cb3 100644 --- a/Jellyfin.Api/Models/SyncPlayDtos/RemoveFromPlaylistRequestDto.cs +++ b/Jellyfin.Api/Models/SyncPlayDtos/RemoveFromPlaylistRequestDto.cs @@ -13,13 +13,13 @@ namespace Jellyfin.Api.Models.SyncPlayDtos /// </summary> public RemoveFromPlaylistRequestDto() { - PlaylistItemIds = Array.Empty<string>(); + PlaylistItemIds = Array.Empty<Guid>(); } /// <summary> /// Gets or sets the playlist identifiers ot the items. /// </summary> /// <value>The playlist identifiers ot the items.</value> - public IReadOnlyList<string> PlaylistItemIds { get; set; } + public IReadOnlyList<Guid> PlaylistItemIds { get; set; } } } diff --git a/Jellyfin.Api/Models/SyncPlayDtos/SetPlaylistItemRequestDto.cs b/Jellyfin.Api/Models/SyncPlayDtos/SetPlaylistItemRequestDto.cs index 344085871..b937679fc 100644 --- a/Jellyfin.Api/Models/SyncPlayDtos/SetPlaylistItemRequestDto.cs +++ b/Jellyfin.Api/Models/SyncPlayDtos/SetPlaylistItemRequestDto.cs @@ -1,3 +1,5 @@ +using System; + namespace Jellyfin.Api.Models.SyncPlayDtos { /// <summary> @@ -10,13 +12,13 @@ namespace Jellyfin.Api.Models.SyncPlayDtos /// </summary> public SetPlaylistItemRequestDto() { - PlaylistItemId = string.Empty; + PlaylistItemId = Guid.Empty; } /// <summary> /// Gets or sets the playlist identifier of the playing item. /// </summary> /// <value>The playlist identifier of the playing item.</value> - public string PlaylistItemId { get; set; } + public Guid PlaylistItemId { get; set; } } } diff --git a/MediaBrowser.Controller/SyncPlay/GroupStates/WaitingGroupState.cs b/MediaBrowser.Controller/SyncPlay/GroupStates/WaitingGroupState.cs index f5f603c29..c2820604f 100644 --- a/MediaBrowser.Controller/SyncPlay/GroupStates/WaitingGroupState.cs +++ b/MediaBrowser.Controller/SyncPlay/GroupStates/WaitingGroupState.cs @@ -329,7 +329,7 @@ namespace MediaBrowser.Controller.SyncPlay.GroupStates } // Make sure the client is playing the correct item. - if (!request.PlaylistItemId.Equals(context.PlayQueue.GetPlayingItemPlaylistId(), StringComparison.OrdinalIgnoreCase)) + if (!request.PlaylistItemId.Equals(context.PlayQueue.GetPlayingItemPlaylistId())) { _logger.LogDebug("Session {SessionId} reported wrong playlist item in group {GroupId}.", session.Id, context.GroupId.ToString()); @@ -403,7 +403,7 @@ namespace MediaBrowser.Controller.SyncPlay.GroupStates } // Make sure the client is playing the correct item. - if (!request.PlaylistItemId.Equals(context.PlayQueue.GetPlayingItemPlaylistId(), StringComparison.OrdinalIgnoreCase)) + if (!request.PlaylistItemId.Equals(context.PlayQueue.GetPlayingItemPlaylistId())) { _logger.LogDebug("Session {SessionId} reported wrong playlist item in group {GroupId}.", session.Id, context.GroupId.ToString()); @@ -572,7 +572,7 @@ namespace MediaBrowser.Controller.SyncPlay.GroupStates ResumePlaying = true; // Make sure the client knows the playing item, to avoid duplicate requests. - if (!request.PlaylistItemId.Equals(context.PlayQueue.GetPlayingItemPlaylistId(), StringComparison.OrdinalIgnoreCase)) + if (!request.PlaylistItemId.Equals(context.PlayQueue.GetPlayingItemPlaylistId())) { _logger.LogDebug("Session {SessionId} provided the wrong playlist item for group {GroupId}.", session.Id, context.GroupId.ToString()); return; @@ -618,7 +618,7 @@ namespace MediaBrowser.Controller.SyncPlay.GroupStates ResumePlaying = true; // Make sure the client knows the playing item, to avoid duplicate requests. - if (!request.PlaylistItemId.Equals(context.PlayQueue.GetPlayingItemPlaylistId(), StringComparison.OrdinalIgnoreCase)) + if (!request.PlaylistItemId.Equals(context.PlayQueue.GetPlayingItemPlaylistId())) { _logger.LogDebug("Session {SessionId} provided the wrong playlist item for group {GroupId}.", session.Id, context.GroupId.ToString()); return; diff --git a/MediaBrowser.Controller/SyncPlay/IGroupStateContext.cs b/MediaBrowser.Controller/SyncPlay/IGroupStateContext.cs index 13f1b2316..aa263638a 100644 --- a/MediaBrowser.Controller/SyncPlay/IGroupStateContext.cs +++ b/MediaBrowser.Controller/SyncPlay/IGroupStateContext.cs @@ -158,14 +158,14 @@ namespace MediaBrowser.Controller.SyncPlay /// </summary> /// <param name="playlistItemId">The new playing item identifier.</param> /// <returns><c>true</c> if the play queue has been changed; <c>false</c> if something went wrong.</returns> - bool SetPlayingItem(string playlistItemId); + bool SetPlayingItem(Guid playlistItemId); /// <summary> /// Removes items from the play queue. /// </summary> /// <param name="playlistItemIds">The items to remove.</param> /// <returns><c>true</c> if playing item got removed; <c>false</c> otherwise.</returns> - bool RemoveFromPlayQueue(IReadOnlyList<string> playlistItemIds); + bool RemoveFromPlayQueue(IReadOnlyList<Guid> playlistItemIds); /// <summary> /// Moves an item in the play queue. @@ -173,7 +173,7 @@ namespace MediaBrowser.Controller.SyncPlay /// <param name="playlistItemId">The playlist identifier of the item to move.</param> /// <param name="newIndex">The new position.</param> /// <returns><c>true</c> if item has been moved; <c>false</c> if something went wrong.</returns> - bool MoveItemInPlayQueue(string playlistItemId, int newIndex); + bool MoveItemInPlayQueue(Guid playlistItemId, int newIndex); /// <summary> /// Updates the play queue. diff --git a/MediaBrowser.Controller/SyncPlay/PlaybackRequests/BufferGroupRequest.cs b/MediaBrowser.Controller/SyncPlay/PlaybackRequests/BufferGroupRequest.cs index 2981dbbdd..39e0ec209 100644 --- a/MediaBrowser.Controller/SyncPlay/PlaybackRequests/BufferGroupRequest.cs +++ b/MediaBrowser.Controller/SyncPlay/PlaybackRequests/BufferGroupRequest.cs @@ -17,7 +17,7 @@ namespace MediaBrowser.Controller.SyncPlay.PlaybackRequests /// <param name="positionTicks">The position ticks.</param> /// <param name="isPlaying">Whether the client playback is unpaused.</param> /// <param name="playlistItemId">The playlist item identifier of the playing item.</param> - public BufferGroupRequest(DateTime when, long positionTicks, bool isPlaying, string playlistItemId) + public BufferGroupRequest(DateTime when, long positionTicks, bool isPlaying, Guid playlistItemId) { When = when; PositionTicks = positionTicks; @@ -47,7 +47,7 @@ namespace MediaBrowser.Controller.SyncPlay.PlaybackRequests /// Gets the playlist item identifier of the playing item. /// </summary> /// <value>The playlist item identifier.</value> - public string PlaylistItemId { get; } + public Guid PlaylistItemId { get; } /// <inheritdoc /> public override PlaybackRequestType Action { get; } = PlaybackRequestType.Buffer; diff --git a/MediaBrowser.Controller/SyncPlay/PlaybackRequests/MovePlaylistItemGroupRequest.cs b/MediaBrowser.Controller/SyncPlay/PlaybackRequests/MovePlaylistItemGroupRequest.cs index efca4ed3e..7ebf67af1 100644 --- a/MediaBrowser.Controller/SyncPlay/PlaybackRequests/MovePlaylistItemGroupRequest.cs +++ b/MediaBrowser.Controller/SyncPlay/PlaybackRequests/MovePlaylistItemGroupRequest.cs @@ -1,3 +1,4 @@ +using System; using System.Threading; using MediaBrowser.Controller.Session; using MediaBrowser.Model.SyncPlay; @@ -14,7 +15,7 @@ namespace MediaBrowser.Controller.SyncPlay.PlaybackRequests /// </summary> /// <param name="playlistItemId">The playlist identifier of the item.</param> /// <param name="newIndex">The new position.</param> - public MovePlaylistItemGroupRequest(string playlistItemId, int newIndex) + public MovePlaylistItemGroupRequest(Guid playlistItemId, int newIndex) { PlaylistItemId = playlistItemId; NewIndex = newIndex; @@ -24,7 +25,7 @@ namespace MediaBrowser.Controller.SyncPlay.PlaybackRequests /// Gets the playlist identifier of the item. /// </summary> /// <value>The playlist identifier of the item.</value> - public string PlaylistItemId { get; } + public Guid PlaylistItemId { get; } /// <summary> /// Gets the new position. diff --git a/MediaBrowser.Controller/SyncPlay/PlaybackRequests/NextItemGroupRequest.cs b/MediaBrowser.Controller/SyncPlay/PlaybackRequests/NextItemGroupRequest.cs index ab60265a6..478414137 100644 --- a/MediaBrowser.Controller/SyncPlay/PlaybackRequests/NextItemGroupRequest.cs +++ b/MediaBrowser.Controller/SyncPlay/PlaybackRequests/NextItemGroupRequest.cs @@ -1,3 +1,4 @@ +using System; using System.Threading; using MediaBrowser.Controller.Session; using MediaBrowser.Model.SyncPlay; @@ -13,7 +14,7 @@ namespace MediaBrowser.Controller.SyncPlay.PlaybackRequests /// Initializes a new instance of the <see cref="NextItemGroupRequest"/> class. /// </summary> /// <param name="playlistItemId">The playing item identifier.</param> - public NextItemGroupRequest(string playlistItemId) + public NextItemGroupRequest(Guid playlistItemId) { PlaylistItemId = playlistItemId; } @@ -22,7 +23,7 @@ namespace MediaBrowser.Controller.SyncPlay.PlaybackRequests /// Gets the playing item identifier. /// </summary> /// <value>The playing item identifier.</value> - public string PlaylistItemId { get; } + public Guid PlaylistItemId { get; } /// <inheritdoc /> public override PlaybackRequestType Action { get; } = PlaybackRequestType.NextItem; diff --git a/MediaBrowser.Controller/SyncPlay/PlaybackRequests/PreviousItemGroupRequest.cs b/MediaBrowser.Controller/SyncPlay/PlaybackRequests/PreviousItemGroupRequest.cs index 445c5fce6..ad3ea5e55 100644 --- a/MediaBrowser.Controller/SyncPlay/PlaybackRequests/PreviousItemGroupRequest.cs +++ b/MediaBrowser.Controller/SyncPlay/PlaybackRequests/PreviousItemGroupRequest.cs @@ -1,3 +1,4 @@ +using System; using System.Threading; using MediaBrowser.Controller.Session; using MediaBrowser.Model.SyncPlay; @@ -13,7 +14,7 @@ namespace MediaBrowser.Controller.SyncPlay.PlaybackRequests /// Initializes a new instance of the <see cref="PreviousItemGroupRequest"/> class. /// </summary> /// <param name="playlistItemId">The playing item identifier.</param> - public PreviousItemGroupRequest(string playlistItemId) + public PreviousItemGroupRequest(Guid playlistItemId) { PlaylistItemId = playlistItemId; } @@ -22,7 +23,7 @@ namespace MediaBrowser.Controller.SyncPlay.PlaybackRequests /// Gets the playing item identifier. /// </summary> /// <value>The playing item identifier.</value> - public string PlaylistItemId { get; } + public Guid PlaylistItemId { get; } /// <inheritdoc /> public override PlaybackRequestType Action { get; } = PlaybackRequestType.PreviousItem; diff --git a/MediaBrowser.Controller/SyncPlay/PlaybackRequests/ReadyGroupRequest.cs b/MediaBrowser.Controller/SyncPlay/PlaybackRequests/ReadyGroupRequest.cs index b09db4ba8..b2efcc97d 100644 --- a/MediaBrowser.Controller/SyncPlay/PlaybackRequests/ReadyGroupRequest.cs +++ b/MediaBrowser.Controller/SyncPlay/PlaybackRequests/ReadyGroupRequest.cs @@ -17,7 +17,7 @@ namespace MediaBrowser.Controller.SyncPlay.PlaybackRequests /// <param name="positionTicks">The position ticks.</param> /// <param name="isPlaying">Whether the client playback is unpaused.</param> /// <param name="playlistItemId">The playlist item identifier of the playing item.</param> - public ReadyGroupRequest(DateTime when, long positionTicks, bool isPlaying, string playlistItemId) + public ReadyGroupRequest(DateTime when, long positionTicks, bool isPlaying, Guid playlistItemId) { When = when; PositionTicks = positionTicks; @@ -47,7 +47,7 @@ namespace MediaBrowser.Controller.SyncPlay.PlaybackRequests /// Gets the playlist item identifier of the playing item. /// </summary> /// <value>The playlist item identifier.</value> - public string PlaylistItemId { get; } + public Guid PlaylistItemId { get; } /// <inheritdoc /> public override PlaybackRequestType Action { get; } = PlaybackRequestType.Ready; diff --git a/MediaBrowser.Controller/SyncPlay/PlaybackRequests/RemoveFromPlaylistGroupRequest.cs b/MediaBrowser.Controller/SyncPlay/PlaybackRequests/RemoveFromPlaylistGroupRequest.cs index dac1914aa..24009d93c 100644 --- a/MediaBrowser.Controller/SyncPlay/PlaybackRequests/RemoveFromPlaylistGroupRequest.cs +++ b/MediaBrowser.Controller/SyncPlay/PlaybackRequests/RemoveFromPlaylistGroupRequest.cs @@ -15,16 +15,16 @@ namespace MediaBrowser.Controller.SyncPlay.PlaybackRequests /// Initializes a new instance of the <see cref="RemoveFromPlaylistGroupRequest"/> class. /// </summary> /// <param name="items">The playlist ids of the items to remove.</param> - public RemoveFromPlaylistGroupRequest(IReadOnlyList<string> items) + public RemoveFromPlaylistGroupRequest(IReadOnlyList<Guid> items) { - PlaylistItemIds = items ?? Array.Empty<string>(); + PlaylistItemIds = items ?? Array.Empty<Guid>(); } /// <summary> /// Gets the playlist identifiers ot the items. /// </summary> /// <value>The playlist identifiers ot the items.</value> - public IReadOnlyList<string> PlaylistItemIds { get; } + public IReadOnlyList<Guid> PlaylistItemIds { get; } /// <inheritdoc /> public override PlaybackRequestType Action { get; } = PlaybackRequestType.RemoveFromPlaylist; diff --git a/MediaBrowser.Controller/SyncPlay/PlaybackRequests/SetPlaylistItemGroupRequest.cs b/MediaBrowser.Controller/SyncPlay/PlaybackRequests/SetPlaylistItemGroupRequest.cs index 58fed3fa0..3edf9b8a4 100644 --- a/MediaBrowser.Controller/SyncPlay/PlaybackRequests/SetPlaylistItemGroupRequest.cs +++ b/MediaBrowser.Controller/SyncPlay/PlaybackRequests/SetPlaylistItemGroupRequest.cs @@ -1,3 +1,4 @@ +using System; using System.Threading; using MediaBrowser.Controller.Session; using MediaBrowser.Model.SyncPlay; @@ -13,7 +14,7 @@ namespace MediaBrowser.Controller.SyncPlay.PlaybackRequests /// Initializes a new instance of the <see cref="SetPlaylistItemGroupRequest"/> class. /// </summary> /// <param name="playlistItemId">The playlist identifier of the item.</param> - public SetPlaylistItemGroupRequest(string playlistItemId) + public SetPlaylistItemGroupRequest(Guid playlistItemId) { PlaylistItemId = playlistItemId; } @@ -22,7 +23,7 @@ namespace MediaBrowser.Controller.SyncPlay.PlaybackRequests /// Gets the playlist identifier of the playing item. /// </summary> /// <value>The playlist identifier of the playing item.</value> - public string PlaylistItemId { get; } + public Guid PlaylistItemId { get; } /// <inheritdoc /> public override PlaybackRequestType Action { get; } = PlaybackRequestType.SetPlaylistItem; diff --git a/MediaBrowser.Controller/SyncPlay/Queue/PlayQueueManager.cs b/MediaBrowser.Controller/SyncPlay/Queue/PlayQueueManager.cs index bfb9d1e4c..fdec29417 100644 --- a/MediaBrowser.Controller/SyncPlay/Queue/PlayQueueManager.cs +++ b/MediaBrowser.Controller/SyncPlay/Queue/PlayQueueManager.cs @@ -67,12 +67,6 @@ namespace MediaBrowser.Controller.SyncPlay.Queue private List<QueueItem> ShuffledPlaylist { get; set; } = new List<QueueItem>(); /// <summary> - /// Gets or sets the progressive identifier counter. - /// </summary> - /// <value>The progressive identifier.</value> - private int ProgressiveId { get; set; } - - /// <summary> /// Checks if an item is playing. /// </summary> /// <returns><c>true</c> if an item is playing; <c>false</c> otherwise.</returns> @@ -233,10 +227,10 @@ namespace MediaBrowser.Controller.SyncPlay.Queue /// Gets playlist identifier of the playing item, if any. /// </summary> /// <returns>The playlist identifier of the playing item.</returns> - public string GetPlayingItemPlaylistId() + public Guid GetPlayingItemPlaylistId() { var playingItem = GetPlayingItem(); - return playingItem?.PlaylistItemId; + return playingItem?.PlaylistItemId ?? Guid.Empty; } /// <summary> @@ -265,10 +259,10 @@ namespace MediaBrowser.Controller.SyncPlay.Queue /// </summary> /// <param name="playlistItemId">The new playing item identifier.</param> /// <returns><c>true</c> if playing item has been set; <c>false</c> if item is not in the playlist.</returns> - public bool SetPlayingItemByPlaylistId(string playlistItemId) + public bool SetPlayingItemByPlaylistId(Guid playlistItemId) { var playlist = GetPlaylistInternal(); - PlayingItemIndex = playlist.FindIndex(item => item.PlaylistItemId.Equals(playlistItemId, StringComparison.OrdinalIgnoreCase)); + PlayingItemIndex = playlist.FindIndex(item => item.PlaylistItemId.Equals(playlistItemId)); LastChange = DateTime.UtcNow; return PlayingItemIndex != NoPlayingItemIndex; @@ -298,7 +292,7 @@ namespace MediaBrowser.Controller.SyncPlay.Queue /// </summary> /// <param name="playlistItemIds">The items to remove.</param> /// <returns><c>true</c> if playing item got removed; <c>false</c> otherwise.</returns> - public bool RemoveFromPlaylist(IReadOnlyList<string> playlistItemIds) + public bool RemoveFromPlaylist(IReadOnlyList<Guid> playlistItemIds) { var playingItem = GetPlayingItem(); @@ -341,12 +335,12 @@ namespace MediaBrowser.Controller.SyncPlay.Queue /// <param name="playlistItemId">The item to move.</param> /// <param name="newIndex">The new position.</param> /// <returns><c>true</c> if the item has been moved; <c>false</c> otherwise.</returns> - public bool MovePlaylistItem(string playlistItemId, int newIndex) + public bool MovePlaylistItem(Guid playlistItemId, int newIndex) { var playlist = GetPlaylistInternal(); var playingItem = GetPlayingItem(); - var oldIndex = playlist.FindIndex(item => item.PlaylistItemId.Equals(playlistItemId, StringComparison.OrdinalIgnoreCase)); + var oldIndex = playlist.FindIndex(item => item.PlaylistItemId.Equals(playlistItemId)); if (oldIndex < 0) { return false; @@ -367,7 +361,6 @@ namespace MediaBrowser.Controller.SyncPlay.Queue /// </summary> public void Reset() { - ProgressiveId = 0; SortedPlaylist.Clear(); ShuffledPlaylist.Clear(); PlayingItemIndex = NoPlayingItemIndex; @@ -530,15 +523,6 @@ namespace MediaBrowser.Controller.SyncPlay.Queue } /// <summary> - /// Gets the next available identifier. - /// </summary> - /// <returns>The next available identifier.</returns> - private int GetNextProgressiveId() - { - return ProgressiveId++; - } - - /// <summary> /// Creates a list from the array of items. Each item is given an unique playlist identifier. /// </summary> /// <returns>The list of queue items.</returns> @@ -547,7 +531,7 @@ namespace MediaBrowser.Controller.SyncPlay.Queue var list = new List<QueueItem>(); foreach (var item in items) { - var queueItem = new QueueItem(item, "syncPlayItem" + GetNextProgressiveId()); + var queueItem = new QueueItem(item); list.Add(queueItem); } diff --git a/MediaBrowser.Model/SyncPlay/QueueItem.cs b/MediaBrowser.Model/SyncPlay/QueueItem.cs index 9c4d3a4ce..a6dcc109e 100644 --- a/MediaBrowser.Model/SyncPlay/QueueItem.cs +++ b/MediaBrowser.Model/SyncPlay/QueueItem.cs @@ -11,11 +11,9 @@ namespace MediaBrowser.Model.SyncPlay /// Initializes a new instance of the <see cref="QueueItem"/> class. /// </summary> /// <param name="itemId">The item identifier.</param> - /// <param name="playlistItemId">The playlist identifier of the item.</param> - public QueueItem(Guid itemId, string playlistItemId) + public QueueItem(Guid itemId) { ItemId = itemId; - PlaylistItemId = playlistItemId; } /// <summary> @@ -28,6 +26,6 @@ namespace MediaBrowser.Model.SyncPlay /// Gets the playlist identifier of the item. /// </summary> /// <value>The playlist identifier of the item.</value> - public string PlaylistItemId { get; } + public Guid PlaylistItemId { get; } = Guid.NewGuid(); } } diff --git a/MediaBrowser.Model/SyncPlay/SendCommand.cs b/MediaBrowser.Model/SyncPlay/SendCommand.cs index ab4c64130..73cb50876 100644 --- a/MediaBrowser.Model/SyncPlay/SendCommand.cs +++ b/MediaBrowser.Model/SyncPlay/SendCommand.cs @@ -16,7 +16,7 @@ namespace MediaBrowser.Model.SyncPlay /// <param name="command">The command.</param> /// <param name="positionTicks">The position ticks, for commands that require it.</param> /// <param name="emittedAt">The UTC time when this command has been emitted.</param> - public SendCommand(Guid groupId, string playlistItemId, DateTime when, SendCommandType command, long? positionTicks, DateTime emittedAt) + public SendCommand(Guid groupId, Guid playlistItemId, DateTime when, SendCommandType command, long? positionTicks, DateTime emittedAt) { GroupId = groupId; PlaylistItemId = playlistItemId; @@ -36,7 +36,7 @@ namespace MediaBrowser.Model.SyncPlay /// Gets the playlist identifier of the playing item. /// </summary> /// <value>The playlist identifier of the playing item.</value> - public string PlaylistItemId { get; } + public Guid PlaylistItemId { get; } /// <summary> /// Gets or sets the UTC time when to execute the command. |
