From 7169c0a22da8147e1fd00f6568e41d235123809f Mon Sep 17 00:00:00 2001 From: Ionut Andrei Oanca Date: Thu, 3 Dec 2020 19:01:57 +0100 Subject: Move SyncPlay request DTOs to proper namespace --- Jellyfin.Api/Controllers/SyncPlayController.cs | 34 +++++++++--------- .../Models/SyncPlayDtos/BufferRequestDto.cs | 42 ++++++++++++++++++++++ .../Models/SyncPlayDtos/IgnoreWaitRequestDto.cs | 14 ++++++++ .../Models/SyncPlayDtos/JoinGroupRequestDto.cs | 16 +++++++++ .../SyncPlayDtos/MovePlaylistItemRequestDto.cs | 28 +++++++++++++++ .../Models/SyncPlayDtos/NewGroupRequestDto.cs | 22 ++++++++++++ .../Models/SyncPlayDtos/NextItemRequestDto.cs | 22 ++++++++++++ Jellyfin.Api/Models/SyncPlayDtos/PingRequestDto.cs | 14 ++++++++ Jellyfin.Api/Models/SyncPlayDtos/PlayRequestDto.cs | 37 +++++++++++++++++++ .../Models/SyncPlayDtos/PreviousItemRequestDto.cs | 22 ++++++++++++ .../Models/SyncPlayDtos/QueueRequestDto.cs | 32 +++++++++++++++++ .../Models/SyncPlayDtos/ReadyRequestDto.cs | 42 ++++++++++++++++++++++ .../SyncPlayDtos/RemoveFromPlaylistRequestDto.cs | 25 +++++++++++++ Jellyfin.Api/Models/SyncPlayDtos/SeekRequestDto.cs | 14 ++++++++ .../SyncPlayDtos/SetPlaylistItemRequestDto.cs | 22 ++++++++++++ .../Models/SyncPlayDtos/SetRepeatModeRequestDto.cs | 16 +++++++++ .../SyncPlayDtos/SetShuffleModeRequestDto.cs | 16 +++++++++ .../SyncPlay/ISyncPlayManager.cs | 1 - .../SyncPlay/RequestBodies/BufferRequestBody.cs | 42 ---------------------- .../RequestBodies/IgnoreWaitRequestBody.cs | 14 -------- .../SyncPlay/RequestBodies/JoinGroupRequestBody.cs | 16 --------- .../RequestBodies/MovePlaylistItemRequestBody.cs | 28 --------------- .../SyncPlay/RequestBodies/NewGroupRequestBody.cs | 22 ------------ .../SyncPlay/RequestBodies/NextItemRequestBody.cs | 22 ------------ .../SyncPlay/RequestBodies/PingRequestBody.cs | 14 -------- .../SyncPlay/RequestBodies/PlayRequestBody.cs | 37 ------------------- .../RequestBodies/PreviousItemRequestBody.cs | 22 ------------ .../SyncPlay/RequestBodies/QueueRequestBody.cs | 31 ---------------- .../SyncPlay/RequestBodies/ReadyRequestBody.cs | 42 ---------------------- .../RequestBodies/RemoveFromPlaylistRequestBody.cs | 25 ------------- .../SyncPlay/RequestBodies/SeekRequestBody.cs | 14 -------- .../RequestBodies/SetPlaylistItemRequestBody.cs | 22 ------------ .../RequestBodies/SetRepeatModeRequestBody.cs | 14 -------- .../RequestBodies/SetShuffleModeRequestBody.cs | 14 -------- 34 files changed, 401 insertions(+), 397 deletions(-) create mode 100644 Jellyfin.Api/Models/SyncPlayDtos/BufferRequestDto.cs create mode 100644 Jellyfin.Api/Models/SyncPlayDtos/IgnoreWaitRequestDto.cs create mode 100644 Jellyfin.Api/Models/SyncPlayDtos/JoinGroupRequestDto.cs create mode 100644 Jellyfin.Api/Models/SyncPlayDtos/MovePlaylistItemRequestDto.cs create mode 100644 Jellyfin.Api/Models/SyncPlayDtos/NewGroupRequestDto.cs create mode 100644 Jellyfin.Api/Models/SyncPlayDtos/NextItemRequestDto.cs create mode 100644 Jellyfin.Api/Models/SyncPlayDtos/PingRequestDto.cs create mode 100644 Jellyfin.Api/Models/SyncPlayDtos/PlayRequestDto.cs create mode 100644 Jellyfin.Api/Models/SyncPlayDtos/PreviousItemRequestDto.cs create mode 100644 Jellyfin.Api/Models/SyncPlayDtos/QueueRequestDto.cs create mode 100644 Jellyfin.Api/Models/SyncPlayDtos/ReadyRequestDto.cs create mode 100644 Jellyfin.Api/Models/SyncPlayDtos/RemoveFromPlaylistRequestDto.cs create mode 100644 Jellyfin.Api/Models/SyncPlayDtos/SeekRequestDto.cs create mode 100644 Jellyfin.Api/Models/SyncPlayDtos/SetPlaylistItemRequestDto.cs create mode 100644 Jellyfin.Api/Models/SyncPlayDtos/SetRepeatModeRequestDto.cs create mode 100644 Jellyfin.Api/Models/SyncPlayDtos/SetShuffleModeRequestDto.cs delete mode 100644 MediaBrowser.Model/SyncPlay/RequestBodies/BufferRequestBody.cs delete mode 100644 MediaBrowser.Model/SyncPlay/RequestBodies/IgnoreWaitRequestBody.cs delete mode 100644 MediaBrowser.Model/SyncPlay/RequestBodies/JoinGroupRequestBody.cs delete mode 100644 MediaBrowser.Model/SyncPlay/RequestBodies/MovePlaylistItemRequestBody.cs delete mode 100644 MediaBrowser.Model/SyncPlay/RequestBodies/NewGroupRequestBody.cs delete mode 100644 MediaBrowser.Model/SyncPlay/RequestBodies/NextItemRequestBody.cs delete mode 100644 MediaBrowser.Model/SyncPlay/RequestBodies/PingRequestBody.cs delete mode 100644 MediaBrowser.Model/SyncPlay/RequestBodies/PlayRequestBody.cs delete mode 100644 MediaBrowser.Model/SyncPlay/RequestBodies/PreviousItemRequestBody.cs delete mode 100644 MediaBrowser.Model/SyncPlay/RequestBodies/QueueRequestBody.cs delete mode 100644 MediaBrowser.Model/SyncPlay/RequestBodies/ReadyRequestBody.cs delete mode 100644 MediaBrowser.Model/SyncPlay/RequestBodies/RemoveFromPlaylistRequestBody.cs delete mode 100644 MediaBrowser.Model/SyncPlay/RequestBodies/SeekRequestBody.cs delete mode 100644 MediaBrowser.Model/SyncPlay/RequestBodies/SetPlaylistItemRequestBody.cs delete mode 100644 MediaBrowser.Model/SyncPlay/RequestBodies/SetRepeatModeRequestBody.cs delete mode 100644 MediaBrowser.Model/SyncPlay/RequestBodies/SetShuffleModeRequestBody.cs diff --git a/Jellyfin.Api/Controllers/SyncPlayController.cs b/Jellyfin.Api/Controllers/SyncPlayController.cs index f8bbed9c42..32e020c8ae 100644 --- a/Jellyfin.Api/Controllers/SyncPlayController.cs +++ b/Jellyfin.Api/Controllers/SyncPlayController.cs @@ -4,13 +4,13 @@ using System.ComponentModel.DataAnnotations; using System.Threading; using Jellyfin.Api.Constants; using Jellyfin.Api.Helpers; +using Jellyfin.Api.Models.SyncPlayDtos; using MediaBrowser.Controller.Net; using MediaBrowser.Controller.Session; using MediaBrowser.Controller.SyncPlay; using MediaBrowser.Controller.SyncPlay.PlaybackRequests; using MediaBrowser.Controller.SyncPlay.Requests; using MediaBrowser.Model.SyncPlay; -using MediaBrowser.Model.SyncPlay.RequestBodies; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; @@ -53,7 +53,7 @@ namespace Jellyfin.Api.Controllers [ProducesResponseType(StatusCodes.Status204NoContent)] [Authorize(Policy = Policies.SyncPlayCreateGroupAccess)] public ActionResult SyncPlayCreateGroup( - [FromBody, Required] NewGroupRequestBody requestData) + [FromBody, Required] NewGroupRequestDto requestData) { var currentSession = RequestHelpers.GetSession(_sessionManager, _authorizationContext, Request); var syncPlayRequest = new NewGroupRequest(requestData.GroupName); @@ -70,7 +70,7 @@ namespace Jellyfin.Api.Controllers [HttpPost("Join")] [ProducesResponseType(StatusCodes.Status204NoContent)] public ActionResult SyncPlayJoinGroup( - [FromBody, Required] JoinGroupRequestBody requestData) + [FromBody, Required] JoinGroupRequestDto requestData) { var currentSession = RequestHelpers.GetSession(_sessionManager, _authorizationContext, Request); var syncPlayRequest = new JoinGroupRequest(requestData.GroupId); @@ -116,7 +116,7 @@ namespace Jellyfin.Api.Controllers [HttpPost("SetNewQueue")] [ProducesResponseType(StatusCodes.Status204NoContent)] public ActionResult SyncPlaySetNewQueue( - [FromBody, Required] PlayRequestBody requestData) + [FromBody, Required] PlayRequestDto requestData) { var currentSession = RequestHelpers.GetSession(_sessionManager, _authorizationContext, Request); var syncPlayRequest = new PlayGroupRequest( @@ -136,7 +136,7 @@ namespace Jellyfin.Api.Controllers [HttpPost("SetPlaylistItem")] [ProducesResponseType(StatusCodes.Status204NoContent)] public ActionResult SyncPlaySetPlaylistItem( - [FromBody, Required] SetPlaylistItemRequestBody requestData) + [FromBody, Required] SetPlaylistItemRequestDto requestData) { var currentSession = RequestHelpers.GetSession(_sessionManager, _authorizationContext, Request); var syncPlayRequest = new SetPlaylistItemGroupRequest(requestData.PlaylistItemId); @@ -153,7 +153,7 @@ namespace Jellyfin.Api.Controllers [HttpPost("RemoveFromPlaylist")] [ProducesResponseType(StatusCodes.Status204NoContent)] public ActionResult SyncPlayRemoveFromPlaylist( - [FromBody, Required] RemoveFromPlaylistRequestBody requestData) + [FromBody, Required] RemoveFromPlaylistRequestDto requestData) { var currentSession = RequestHelpers.GetSession(_sessionManager, _authorizationContext, Request); var syncPlayRequest = new RemoveFromPlaylistGroupRequest(requestData.PlaylistItemIds); @@ -170,7 +170,7 @@ namespace Jellyfin.Api.Controllers [HttpPost("MovePlaylistItem")] [ProducesResponseType(StatusCodes.Status204NoContent)] public ActionResult SyncPlayMovePlaylistItem( - [FromBody, Required] MovePlaylistItemRequestBody requestData) + [FromBody, Required] MovePlaylistItemRequestDto requestData) { var currentSession = RequestHelpers.GetSession(_sessionManager, _authorizationContext, Request); var syncPlayRequest = new MovePlaylistItemGroupRequest(requestData.PlaylistItemId, requestData.NewIndex); @@ -187,7 +187,7 @@ namespace Jellyfin.Api.Controllers [HttpPost("Queue")] [ProducesResponseType(StatusCodes.Status204NoContent)] public ActionResult SyncPlayQueue( - [FromBody, Required] QueueRequestBody requestData) + [FromBody, Required] QueueRequestDto requestData) { var currentSession = RequestHelpers.GetSession(_sessionManager, _authorizationContext, Request); var syncPlayRequest = new QueueGroupRequest(requestData.ItemIds, requestData.Mode); @@ -249,7 +249,7 @@ namespace Jellyfin.Api.Controllers [HttpPost("Seek")] [ProducesResponseType(StatusCodes.Status204NoContent)] public ActionResult SyncPlaySeek( - [FromBody, Required] SeekRequestBody requestData) + [FromBody, Required] SeekRequestDto requestData) { var currentSession = RequestHelpers.GetSession(_sessionManager, _authorizationContext, Request); var syncPlayRequest = new SeekGroupRequest(requestData.PositionTicks); @@ -266,7 +266,7 @@ namespace Jellyfin.Api.Controllers [HttpPost("Buffering")] [ProducesResponseType(StatusCodes.Status204NoContent)] public ActionResult SyncPlayBuffering( - [FromBody, Required] BufferRequestBody requestData) + [FromBody, Required] BufferRequestDto requestData) { var currentSession = RequestHelpers.GetSession(_sessionManager, _authorizationContext, Request); var syncPlayRequest = new BufferGroupRequest( @@ -287,7 +287,7 @@ namespace Jellyfin.Api.Controllers [HttpPost("Ready")] [ProducesResponseType(StatusCodes.Status204NoContent)] public ActionResult SyncPlayReady( - [FromBody, Required] ReadyRequestBody requestData) + [FromBody, Required] ReadyRequestDto requestData) { var currentSession = RequestHelpers.GetSession(_sessionManager, _authorizationContext, Request); var syncPlayRequest = new ReadyGroupRequest( @@ -308,7 +308,7 @@ namespace Jellyfin.Api.Controllers [HttpPost("SetIgnoreWait")] [ProducesResponseType(StatusCodes.Status204NoContent)] public ActionResult SyncPlaySetIgnoreWait( - [FromBody, Required] IgnoreWaitRequestBody requestData) + [FromBody, Required] IgnoreWaitRequestDto requestData) { var currentSession = RequestHelpers.GetSession(_sessionManager, _authorizationContext, Request); var syncPlayRequest = new IgnoreWaitGroupRequest(requestData.IgnoreWait); @@ -325,7 +325,7 @@ namespace Jellyfin.Api.Controllers [HttpPost("NextItem")] [ProducesResponseType(StatusCodes.Status204NoContent)] public ActionResult SyncPlayNextItem( - [FromBody, Required] NextItemRequestBody requestData) + [FromBody, Required] NextItemRequestDto requestData) { var currentSession = RequestHelpers.GetSession(_sessionManager, _authorizationContext, Request); var syncPlayRequest = new NextItemGroupRequest(requestData.PlaylistItemId); @@ -342,7 +342,7 @@ namespace Jellyfin.Api.Controllers [HttpPost("PreviousItem")] [ProducesResponseType(StatusCodes.Status204NoContent)] public ActionResult SyncPlayPreviousItem( - [FromBody, Required] PreviousItemRequestBody requestData) + [FromBody, Required] PreviousItemRequestDto requestData) { var currentSession = RequestHelpers.GetSession(_sessionManager, _authorizationContext, Request); var syncPlayRequest = new PreviousItemGroupRequest(requestData.PlaylistItemId); @@ -359,7 +359,7 @@ namespace Jellyfin.Api.Controllers [HttpPost("SetRepeatMode")] [ProducesResponseType(StatusCodes.Status204NoContent)] public ActionResult SyncPlaySetRepeatMode( - [FromBody, Required] SetRepeatModeRequestBody requestData) + [FromBody, Required] SetRepeatModeRequestDto requestData) { var currentSession = RequestHelpers.GetSession(_sessionManager, _authorizationContext, Request); var syncPlayRequest = new SetRepeatModeGroupRequest(requestData.Mode); @@ -376,7 +376,7 @@ namespace Jellyfin.Api.Controllers [HttpPost("SetShuffleMode")] [ProducesResponseType(StatusCodes.Status204NoContent)] public ActionResult SyncPlaySetShuffleMode( - [FromBody, Required] SetShuffleModeRequestBody requestData) + [FromBody, Required] SetShuffleModeRequestDto requestData) { var currentSession = RequestHelpers.GetSession(_sessionManager, _authorizationContext, Request); var syncPlayRequest = new SetShuffleModeGroupRequest(requestData.Mode); @@ -393,7 +393,7 @@ namespace Jellyfin.Api.Controllers [HttpPost("Ping")] [ProducesResponseType(StatusCodes.Status204NoContent)] public ActionResult SyncPlayPing( - [FromBody, Required] PingRequestBody requestData) + [FromBody, Required] PingRequestDto requestData) { var currentSession = RequestHelpers.GetSession(_sessionManager, _authorizationContext, Request); var syncPlayRequest = new PingGroupRequest(requestData.Ping); diff --git a/Jellyfin.Api/Models/SyncPlayDtos/BufferRequestDto.cs b/Jellyfin.Api/Models/SyncPlayDtos/BufferRequestDto.cs new file mode 100644 index 0000000000..cafc400c9c --- /dev/null +++ b/Jellyfin.Api/Models/SyncPlayDtos/BufferRequestDto.cs @@ -0,0 +1,42 @@ +using System; + +namespace Jellyfin.Api.Models.SyncPlayDtos +{ + /// + /// Class BufferRequestDto. + /// + public class BufferRequestDto + { + /// + /// Initializes a new instance of the class. + /// + public BufferRequestDto() + { + PlaylistItemId = string.Empty; + } + + /// + /// Gets or sets when the request has been made by the client. + /// + /// The date of the request. + public DateTime When { get; set; } + + /// + /// Gets or sets the position ticks. + /// + /// The position ticks. + public long PositionTicks { get; set; } + + /// + /// Gets or sets a value indicating whether the client playback is unpaused. + /// + /// The client playback status. + public bool IsPlaying { get; set; } + + /// + /// Gets or sets the playlist item identifier of the playing item. + /// + /// The playlist item identifier. + public string PlaylistItemId { get; set; } + } +} diff --git a/Jellyfin.Api/Models/SyncPlayDtos/IgnoreWaitRequestDto.cs b/Jellyfin.Api/Models/SyncPlayDtos/IgnoreWaitRequestDto.cs new file mode 100644 index 0000000000..4c30b7be43 --- /dev/null +++ b/Jellyfin.Api/Models/SyncPlayDtos/IgnoreWaitRequestDto.cs @@ -0,0 +1,14 @@ +namespace Jellyfin.Api.Models.SyncPlayDtos +{ + /// + /// Class IgnoreWaitRequestDto. + /// + public class IgnoreWaitRequestDto + { + /// + /// Gets or sets a value indicating whether the client should be ignored. + /// + /// The client group-wait status. + public bool IgnoreWait { get; set; } + } +} diff --git a/Jellyfin.Api/Models/SyncPlayDtos/JoinGroupRequestDto.cs b/Jellyfin.Api/Models/SyncPlayDtos/JoinGroupRequestDto.cs new file mode 100644 index 0000000000..ed97b8d6a5 --- /dev/null +++ b/Jellyfin.Api/Models/SyncPlayDtos/JoinGroupRequestDto.cs @@ -0,0 +1,16 @@ +using System; + +namespace Jellyfin.Api.Models.SyncPlayDtos +{ + /// + /// Class JoinGroupRequestDto. + /// + public class JoinGroupRequestDto + { + /// + /// Gets or sets the group identifier. + /// + /// The identifier of the group to join. + public Guid GroupId { get; set; } + } +} diff --git a/Jellyfin.Api/Models/SyncPlayDtos/MovePlaylistItemRequestDto.cs b/Jellyfin.Api/Models/SyncPlayDtos/MovePlaylistItemRequestDto.cs new file mode 100644 index 0000000000..9e9c0b1eab --- /dev/null +++ b/Jellyfin.Api/Models/SyncPlayDtos/MovePlaylistItemRequestDto.cs @@ -0,0 +1,28 @@ +namespace Jellyfin.Api.Models.SyncPlayDtos +{ + /// + /// Class MovePlaylistItemRequestDto. + /// + public class MovePlaylistItemRequestDto + { + /// + /// Initializes a new instance of the class. + /// + public MovePlaylistItemRequestDto() + { + PlaylistItemId = string.Empty; + } + + /// + /// Gets or sets the playlist identifier of the item. + /// + /// The playlist identifier of the item. + public string PlaylistItemId { get; set; } + + /// + /// Gets or sets the new position. + /// + /// The new position. + public int NewIndex { get; set; } + } +} diff --git a/Jellyfin.Api/Models/SyncPlayDtos/NewGroupRequestDto.cs b/Jellyfin.Api/Models/SyncPlayDtos/NewGroupRequestDto.cs new file mode 100644 index 0000000000..441d7be367 --- /dev/null +++ b/Jellyfin.Api/Models/SyncPlayDtos/NewGroupRequestDto.cs @@ -0,0 +1,22 @@ +namespace Jellyfin.Api.Models.SyncPlayDtos +{ + /// + /// Class NewGroupRequestDto. + /// + public class NewGroupRequestDto + { + /// + /// Initializes a new instance of the class. + /// + public NewGroupRequestDto() + { + GroupName = string.Empty; + } + + /// + /// Gets or sets the group name. + /// + /// The name of the new group. + public string GroupName { get; set; } + } +} diff --git a/Jellyfin.Api/Models/SyncPlayDtos/NextItemRequestDto.cs b/Jellyfin.Api/Models/SyncPlayDtos/NextItemRequestDto.cs new file mode 100644 index 0000000000..aa67954e75 --- /dev/null +++ b/Jellyfin.Api/Models/SyncPlayDtos/NextItemRequestDto.cs @@ -0,0 +1,22 @@ +namespace Jellyfin.Api.Models.SyncPlayDtos +{ + /// + /// Class NextItemRequestDto. + /// + public class NextItemRequestDto + { + /// + /// Initializes a new instance of the class. + /// + public NextItemRequestDto() + { + PlaylistItemId = string.Empty; + } + + /// + /// Gets or sets the playing item identifier. + /// + /// The playing item identifier. + public string PlaylistItemId { get; set; } + } +} diff --git a/Jellyfin.Api/Models/SyncPlayDtos/PingRequestDto.cs b/Jellyfin.Api/Models/SyncPlayDtos/PingRequestDto.cs new file mode 100644 index 0000000000..c4ac068565 --- /dev/null +++ b/Jellyfin.Api/Models/SyncPlayDtos/PingRequestDto.cs @@ -0,0 +1,14 @@ +namespace Jellyfin.Api.Models.SyncPlayDtos +{ + /// + /// Class PingRequestDto. + /// + public class PingRequestDto + { + /// + /// Gets or sets the ping time. + /// + /// The ping time. + public long Ping { get; set; } + } +} diff --git a/Jellyfin.Api/Models/SyncPlayDtos/PlayRequestDto.cs b/Jellyfin.Api/Models/SyncPlayDtos/PlayRequestDto.cs new file mode 100644 index 0000000000..844388cd99 --- /dev/null +++ b/Jellyfin.Api/Models/SyncPlayDtos/PlayRequestDto.cs @@ -0,0 +1,37 @@ +using System; +using System.Collections.Generic; + +namespace Jellyfin.Api.Models.SyncPlayDtos +{ + /// + /// Class PlayRequestDto. + /// + public class PlayRequestDto + { + /// + /// Initializes a new instance of the class. + /// + public PlayRequestDto() + { + PlayingQueue = Array.Empty(); + } + + /// + /// Gets or sets the playing queue. + /// + /// The playing queue. + public IReadOnlyList PlayingQueue { get; set; } + + /// + /// Gets or sets the position of the playing item in the queue. + /// + /// The playing item position. + public int PlayingItemPosition { get; set; } + + /// + /// Gets or sets the start position ticks. + /// + /// The start position ticks. + public long StartPositionTicks { get; set; } + } +} diff --git a/Jellyfin.Api/Models/SyncPlayDtos/PreviousItemRequestDto.cs b/Jellyfin.Api/Models/SyncPlayDtos/PreviousItemRequestDto.cs new file mode 100644 index 0000000000..b23d4dee0a --- /dev/null +++ b/Jellyfin.Api/Models/SyncPlayDtos/PreviousItemRequestDto.cs @@ -0,0 +1,22 @@ +namespace Jellyfin.Api.Models.SyncPlayDtos +{ + /// + /// Class PreviousItemRequestDto. + /// + public class PreviousItemRequestDto + { + /// + /// Initializes a new instance of the class. + /// + public PreviousItemRequestDto() + { + PlaylistItemId = string.Empty; + } + + /// + /// Gets or sets the playing item identifier. + /// + /// The playing item identifier. + public string PlaylistItemId { get; set; } + } +} diff --git a/Jellyfin.Api/Models/SyncPlayDtos/QueueRequestDto.cs b/Jellyfin.Api/Models/SyncPlayDtos/QueueRequestDto.cs new file mode 100644 index 0000000000..2b187f443f --- /dev/null +++ b/Jellyfin.Api/Models/SyncPlayDtos/QueueRequestDto.cs @@ -0,0 +1,32 @@ +using System; +using System.Collections.Generic; +using MediaBrowser.Model.SyncPlay; + +namespace Jellyfin.Api.Models.SyncPlayDtos +{ + /// + /// Class QueueRequestDto. + /// + public class QueueRequestDto + { + /// + /// Initializes a new instance of the class. + /// + public QueueRequestDto() + { + ItemIds = Array.Empty(); + } + + /// + /// Gets or sets the items to enqueue. + /// + /// The items to enqueue. + public IReadOnlyList ItemIds { get; set; } + + /// + /// Gets or sets the mode in which to add the new items. + /// + /// The enqueue mode. + public GroupQueueMode Mode { get; set; } + } +} diff --git a/Jellyfin.Api/Models/SyncPlayDtos/ReadyRequestDto.cs b/Jellyfin.Api/Models/SyncPlayDtos/ReadyRequestDto.cs new file mode 100644 index 0000000000..0155d52495 --- /dev/null +++ b/Jellyfin.Api/Models/SyncPlayDtos/ReadyRequestDto.cs @@ -0,0 +1,42 @@ +using System; + +namespace Jellyfin.Api.Models.SyncPlayDtos +{ + /// + /// Class ReadyRequest. + /// + public class ReadyRequestDto + { + /// + /// Initializes a new instance of the class. + /// + public ReadyRequestDto() + { + PlaylistItemId = string.Empty; + } + + /// + /// Gets or sets when the request has been made by the client. + /// + /// The date of the request. + public DateTime When { get; set; } + + /// + /// Gets or sets the position ticks. + /// + /// The position ticks. + public long PositionTicks { get; set; } + + /// + /// Gets or sets a value indicating whether the client playback is unpaused. + /// + /// The client playback status. + public bool IsPlaying { get; set; } + + /// + /// Gets or sets the playlist item identifier of the playing item. + /// + /// The playlist item identifier. + public string PlaylistItemId { get; set; } + } +} diff --git a/Jellyfin.Api/Models/SyncPlayDtos/RemoveFromPlaylistRequestDto.cs b/Jellyfin.Api/Models/SyncPlayDtos/RemoveFromPlaylistRequestDto.cs new file mode 100644 index 0000000000..facb809fca --- /dev/null +++ b/Jellyfin.Api/Models/SyncPlayDtos/RemoveFromPlaylistRequestDto.cs @@ -0,0 +1,25 @@ +using System; +using System.Collections.Generic; + +namespace Jellyfin.Api.Models.SyncPlayDtos +{ + /// + /// Class RemoveFromPlaylistRequestDto. + /// + public class RemoveFromPlaylistRequestDto + { + /// + /// Initializes a new instance of the class. + /// + public RemoveFromPlaylistRequestDto() + { + PlaylistItemIds = Array.Empty(); + } + + /// + /// Gets or sets the playlist identifiers ot the items. + /// + /// The playlist identifiers ot the items. + public IReadOnlyList PlaylistItemIds { get; set; } + } +} diff --git a/Jellyfin.Api/Models/SyncPlayDtos/SeekRequestDto.cs b/Jellyfin.Api/Models/SyncPlayDtos/SeekRequestDto.cs new file mode 100644 index 0000000000..b9af0be7ff --- /dev/null +++ b/Jellyfin.Api/Models/SyncPlayDtos/SeekRequestDto.cs @@ -0,0 +1,14 @@ +namespace Jellyfin.Api.Models.SyncPlayDtos +{ + /// + /// Class SeekRequestDto. + /// + public class SeekRequestDto + { + /// + /// Gets or sets the position ticks. + /// + /// The position ticks. + public long PositionTicks { get; set; } + } +} diff --git a/Jellyfin.Api/Models/SyncPlayDtos/SetPlaylistItemRequestDto.cs b/Jellyfin.Api/Models/SyncPlayDtos/SetPlaylistItemRequestDto.cs new file mode 100644 index 0000000000..3440858712 --- /dev/null +++ b/Jellyfin.Api/Models/SyncPlayDtos/SetPlaylistItemRequestDto.cs @@ -0,0 +1,22 @@ +namespace Jellyfin.Api.Models.SyncPlayDtos +{ + /// + /// Class SetPlaylistItemRequestDto. + /// + public class SetPlaylistItemRequestDto + { + /// + /// Initializes a new instance of the class. + /// + public SetPlaylistItemRequestDto() + { + PlaylistItemId = string.Empty; + } + + /// + /// Gets or sets the playlist identifier of the playing item. + /// + /// The playlist identifier of the playing item. + public string PlaylistItemId { get; set; } + } +} diff --git a/Jellyfin.Api/Models/SyncPlayDtos/SetRepeatModeRequestDto.cs b/Jellyfin.Api/Models/SyncPlayDtos/SetRepeatModeRequestDto.cs new file mode 100644 index 0000000000..e748fc3e0f --- /dev/null +++ b/Jellyfin.Api/Models/SyncPlayDtos/SetRepeatModeRequestDto.cs @@ -0,0 +1,16 @@ +using MediaBrowser.Model.SyncPlay; + +namespace Jellyfin.Api.Models.SyncPlayDtos +{ + /// + /// Class SetRepeatModeRequestDto. + /// + public class SetRepeatModeRequestDto + { + /// + /// Gets or sets the repeat mode. + /// + /// The repeat mode. + public GroupRepeatMode Mode { get; set; } + } +} diff --git a/Jellyfin.Api/Models/SyncPlayDtos/SetShuffleModeRequestDto.cs b/Jellyfin.Api/Models/SyncPlayDtos/SetShuffleModeRequestDto.cs new file mode 100644 index 0000000000..0e427f4a4d --- /dev/null +++ b/Jellyfin.Api/Models/SyncPlayDtos/SetShuffleModeRequestDto.cs @@ -0,0 +1,16 @@ +using MediaBrowser.Model.SyncPlay; + +namespace Jellyfin.Api.Models.SyncPlayDtos +{ + /// + /// Class SetShuffleModeRequestDto. + /// + public class SetShuffleModeRequestDto + { + /// + /// Gets or sets the shuffle mode. + /// + /// The shuffle mode. + public GroupShuffleMode Mode { get; set; } + } +} diff --git a/MediaBrowser.Controller/SyncPlay/ISyncPlayManager.cs b/MediaBrowser.Controller/SyncPlay/ISyncPlayManager.cs index 146e4351df..d0244563a4 100644 --- a/MediaBrowser.Controller/SyncPlay/ISyncPlayManager.cs +++ b/MediaBrowser.Controller/SyncPlay/ISyncPlayManager.cs @@ -4,7 +4,6 @@ using System.Threading; using MediaBrowser.Controller.Session; using MediaBrowser.Controller.SyncPlay.Requests; using MediaBrowser.Model.SyncPlay; -using MediaBrowser.Model.SyncPlay.RequestBodies; namespace MediaBrowser.Controller.SyncPlay { diff --git a/MediaBrowser.Model/SyncPlay/RequestBodies/BufferRequestBody.cs b/MediaBrowser.Model/SyncPlay/RequestBodies/BufferRequestBody.cs deleted file mode 100644 index 09ca712e51..0000000000 --- a/MediaBrowser.Model/SyncPlay/RequestBodies/BufferRequestBody.cs +++ /dev/null @@ -1,42 +0,0 @@ -using System; - -namespace MediaBrowser.Model.SyncPlay.RequestBodies -{ - /// - /// Class BufferRequestBody. - /// - public class BufferRequestBody - { - /// - /// Initializes a new instance of the class. - /// - public BufferRequestBody() - { - PlaylistItemId = string.Empty; - } - - /// - /// Gets or sets when the request has been made by the client. - /// - /// The date of the request. - public DateTime When { get; set; } - - /// - /// Gets or sets the position ticks. - /// - /// The position ticks. - public long PositionTicks { get; set; } - - /// - /// Gets or sets a value indicating whether the client playback is unpaused. - /// - /// The client playback status. - public bool IsPlaying { get; set; } - - /// - /// Gets or sets the playlist item identifier of the playing item. - /// - /// The playlist item identifier. - public string PlaylistItemId { get; set; } - } -} diff --git a/MediaBrowser.Model/SyncPlay/RequestBodies/IgnoreWaitRequestBody.cs b/MediaBrowser.Model/SyncPlay/RequestBodies/IgnoreWaitRequestBody.cs deleted file mode 100644 index 22407e88ed..0000000000 --- a/MediaBrowser.Model/SyncPlay/RequestBodies/IgnoreWaitRequestBody.cs +++ /dev/null @@ -1,14 +0,0 @@ -namespace MediaBrowser.Model.SyncPlay.RequestBodies -{ - /// - /// Class IgnoreWaitRequestBody. - /// - public class IgnoreWaitRequestBody - { - /// - /// Gets or sets a value indicating whether the client should be ignored. - /// - /// The client group-wait status. - public bool IgnoreWait { get; set; } - } -} diff --git a/MediaBrowser.Model/SyncPlay/RequestBodies/JoinGroupRequestBody.cs b/MediaBrowser.Model/SyncPlay/RequestBodies/JoinGroupRequestBody.cs deleted file mode 100644 index 2cec7bdc21..0000000000 --- a/MediaBrowser.Model/SyncPlay/RequestBodies/JoinGroupRequestBody.cs +++ /dev/null @@ -1,16 +0,0 @@ -using System; - -namespace MediaBrowser.Model.SyncPlay.RequestBodies -{ - /// - /// Class JoinGroupRequestBody. - /// - public class JoinGroupRequestBody - { - /// - /// Gets or sets the group identifier. - /// - /// The identifier of the group to join. - public Guid GroupId { get; set; } - } -} diff --git a/MediaBrowser.Model/SyncPlay/RequestBodies/MovePlaylistItemRequestBody.cs b/MediaBrowser.Model/SyncPlay/RequestBodies/MovePlaylistItemRequestBody.cs deleted file mode 100644 index d18eb68ffe..0000000000 --- a/MediaBrowser.Model/SyncPlay/RequestBodies/MovePlaylistItemRequestBody.cs +++ /dev/null @@ -1,28 +0,0 @@ -namespace MediaBrowser.Model.SyncPlay.RequestBodies -{ - /// - /// Class MovePlaylistItemRequestBody. - /// - public class MovePlaylistItemRequestBody - { - /// - /// Initializes a new instance of the class. - /// - public MovePlaylistItemRequestBody() - { - PlaylistItemId = string.Empty; - } - - /// - /// Gets or sets the playlist identifier of the item. - /// - /// The playlist identifier of the item. - public string PlaylistItemId { get; set; } - - /// - /// Gets or sets the new position. - /// - /// The new position. - public int NewIndex { get; set; } - } -} diff --git a/MediaBrowser.Model/SyncPlay/RequestBodies/NewGroupRequestBody.cs b/MediaBrowser.Model/SyncPlay/RequestBodies/NewGroupRequestBody.cs deleted file mode 100644 index 1a85d276b9..0000000000 --- a/MediaBrowser.Model/SyncPlay/RequestBodies/NewGroupRequestBody.cs +++ /dev/null @@ -1,22 +0,0 @@ -namespace MediaBrowser.Model.SyncPlay.RequestBodies -{ - /// - /// Class NewGroupRequestBody. - /// - public class NewGroupRequestBody - { - /// - /// Initializes a new instance of the class. - /// - public NewGroupRequestBody() - { - GroupName = string.Empty; - } - - /// - /// Gets or sets the group name. - /// - /// The name of the new group. - public string GroupName { get; set; } - } -} diff --git a/MediaBrowser.Model/SyncPlay/RequestBodies/NextItemRequestBody.cs b/MediaBrowser.Model/SyncPlay/RequestBodies/NextItemRequestBody.cs deleted file mode 100644 index 39ce75dc19..0000000000 --- a/MediaBrowser.Model/SyncPlay/RequestBodies/NextItemRequestBody.cs +++ /dev/null @@ -1,22 +0,0 @@ -namespace MediaBrowser.Model.SyncPlay.RequestBodies -{ - /// - /// Class NextItemRequestBody. - /// - public class NextItemRequestBody - { - /// - /// Initializes a new instance of the class. - /// - public NextItemRequestBody() - { - PlaylistItemId = string.Empty; - } - - /// - /// Gets or sets the playing item identifier. - /// - /// The playing item identifier. - public string PlaylistItemId { get; set; } - } -} diff --git a/MediaBrowser.Model/SyncPlay/RequestBodies/PingRequestBody.cs b/MediaBrowser.Model/SyncPlay/RequestBodies/PingRequestBody.cs deleted file mode 100644 index f08015bc46..0000000000 --- a/MediaBrowser.Model/SyncPlay/RequestBodies/PingRequestBody.cs +++ /dev/null @@ -1,14 +0,0 @@ -namespace MediaBrowser.Model.SyncPlay.RequestBodies -{ - /// - /// Class PingRequestBody. - /// - public class PingRequestBody - { - /// - /// Gets or sets the ping time. - /// - /// The ping time. - public long Ping { get; set; } - } -} diff --git a/MediaBrowser.Model/SyncPlay/RequestBodies/PlayRequestBody.cs b/MediaBrowser.Model/SyncPlay/RequestBodies/PlayRequestBody.cs deleted file mode 100644 index 97ec95c624..0000000000 --- a/MediaBrowser.Model/SyncPlay/RequestBodies/PlayRequestBody.cs +++ /dev/null @@ -1,37 +0,0 @@ -using System; -using System.Collections.Generic; - -namespace MediaBrowser.Model.SyncPlay.RequestBodies -{ - /// - /// Class PlayRequestBody. - /// - public class PlayRequestBody - { - /// - /// Initializes a new instance of the class. - /// - public PlayRequestBody() - { - PlayingQueue = Array.Empty(); - } - - /// - /// Gets or sets the playing queue. - /// - /// The playing queue. - public IReadOnlyList PlayingQueue { get; set; } - - /// - /// Gets or sets the position of the playing item in the queue. - /// - /// The playing item position. - public int PlayingItemPosition { get; set; } - - /// - /// Gets or sets the start position ticks. - /// - /// The start position ticks. - public long StartPositionTicks { get; set; } - } -} diff --git a/MediaBrowser.Model/SyncPlay/RequestBodies/PreviousItemRequestBody.cs b/MediaBrowser.Model/SyncPlay/RequestBodies/PreviousItemRequestBody.cs deleted file mode 100644 index 671a7291ce..0000000000 --- a/MediaBrowser.Model/SyncPlay/RequestBodies/PreviousItemRequestBody.cs +++ /dev/null @@ -1,22 +0,0 @@ -namespace MediaBrowser.Model.SyncPlay.RequestBodies -{ - /// - /// Class PreviousItemRequestBody. - /// - public class PreviousItemRequestBody - { - /// - /// Initializes a new instance of the class. - /// - public PreviousItemRequestBody() - { - PlaylistItemId = string.Empty; - } - - /// - /// Gets or sets the playing item identifier. - /// - /// The playing item identifier. - public string PlaylistItemId { get; set; } - } -} diff --git a/MediaBrowser.Model/SyncPlay/RequestBodies/QueueRequestBody.cs b/MediaBrowser.Model/SyncPlay/RequestBodies/QueueRequestBody.cs deleted file mode 100644 index 1afc61dd46..0000000000 --- a/MediaBrowser.Model/SyncPlay/RequestBodies/QueueRequestBody.cs +++ /dev/null @@ -1,31 +0,0 @@ -using System; -using System.Collections.Generic; - -namespace MediaBrowser.Model.SyncPlay.RequestBodies -{ - /// - /// Class QueueRequestBody. - /// - public class QueueRequestBody - { - /// - /// Initializes a new instance of the class. - /// - public QueueRequestBody() - { - ItemIds = Array.Empty(); - } - - /// - /// Gets or sets the items to enqueue. - /// - /// The items to enqueue. - public IReadOnlyList ItemIds { get; set; } - - /// - /// Gets or sets the mode in which to add the new items. - /// - /// The enqueue mode. - public GroupQueueMode Mode { get; set; } - } -} diff --git a/MediaBrowser.Model/SyncPlay/RequestBodies/ReadyRequestBody.cs b/MediaBrowser.Model/SyncPlay/RequestBodies/ReadyRequestBody.cs deleted file mode 100644 index 359186e781..0000000000 --- a/MediaBrowser.Model/SyncPlay/RequestBodies/ReadyRequestBody.cs +++ /dev/null @@ -1,42 +0,0 @@ -using System; - -namespace MediaBrowser.Model.SyncPlay.RequestBodies -{ - /// - /// Class ReadyRequest. - /// - public class ReadyRequestBody - { - /// - /// Initializes a new instance of the class. - /// - public ReadyRequestBody() - { - PlaylistItemId = string.Empty; - } - - /// - /// Gets or sets when the request has been made by the client. - /// - /// The date of the request. - public DateTime When { get; set; } - - /// - /// Gets or sets the position ticks. - /// - /// The position ticks. - public long PositionTicks { get; set; } - - /// - /// Gets or sets a value indicating whether the client playback is unpaused. - /// - /// The client playback status. - public bool IsPlaying { get; set; } - - /// - /// Gets or sets the playlist item identifier of the playing item. - /// - /// The playlist item identifier. - public string PlaylistItemId { get; set; } - } -} diff --git a/MediaBrowser.Model/SyncPlay/RequestBodies/RemoveFromPlaylistRequestBody.cs b/MediaBrowser.Model/SyncPlay/RequestBodies/RemoveFromPlaylistRequestBody.cs deleted file mode 100644 index a2b617cd03..0000000000 --- a/MediaBrowser.Model/SyncPlay/RequestBodies/RemoveFromPlaylistRequestBody.cs +++ /dev/null @@ -1,25 +0,0 @@ -using System; -using System.Collections.Generic; - -namespace MediaBrowser.Model.SyncPlay.RequestBodies -{ - /// - /// Class RemoveFromPlaylistRequestBody. - /// - public class RemoveFromPlaylistRequestBody - { - /// - /// Initializes a new instance of the class. - /// - public RemoveFromPlaylistRequestBody() - { - PlaylistItemIds = Array.Empty(); - } - - /// - /// Gets or sets the playlist identifiers ot the items. - /// - /// The playlist identifiers ot the items. - public IReadOnlyList PlaylistItemIds { get; set; } - } -} diff --git a/MediaBrowser.Model/SyncPlay/RequestBodies/SeekRequestBody.cs b/MediaBrowser.Model/SyncPlay/RequestBodies/SeekRequestBody.cs deleted file mode 100644 index 689183bb6a..0000000000 --- a/MediaBrowser.Model/SyncPlay/RequestBodies/SeekRequestBody.cs +++ /dev/null @@ -1,14 +0,0 @@ -namespace MediaBrowser.Model.SyncPlay.RequestBodies -{ - /// - /// Class SeekRequestBody. - /// - public class SeekRequestBody - { - /// - /// Gets or sets the position ticks. - /// - /// The position ticks. - public long PositionTicks { get; set; } - } -} diff --git a/MediaBrowser.Model/SyncPlay/RequestBodies/SetPlaylistItemRequestBody.cs b/MediaBrowser.Model/SyncPlay/RequestBodies/SetPlaylistItemRequestBody.cs deleted file mode 100644 index abe66c479e..0000000000 --- a/MediaBrowser.Model/SyncPlay/RequestBodies/SetPlaylistItemRequestBody.cs +++ /dev/null @@ -1,22 +0,0 @@ -namespace MediaBrowser.Model.SyncPlay.RequestBodies -{ - /// - /// Class SetPlaylistItemRequestBody. - /// - public class SetPlaylistItemRequestBody - { - /// - /// Initializes a new instance of the class. - /// - public SetPlaylistItemRequestBody() - { - PlaylistItemId = string.Empty; - } - - /// - /// Gets or sets the playlist identifier of the playing item. - /// - /// The playlist identifier of the playing item. - public string PlaylistItemId { get; set; } - } -} diff --git a/MediaBrowser.Model/SyncPlay/RequestBodies/SetRepeatModeRequestBody.cs b/MediaBrowser.Model/SyncPlay/RequestBodies/SetRepeatModeRequestBody.cs deleted file mode 100644 index 6de5415cae..0000000000 --- a/MediaBrowser.Model/SyncPlay/RequestBodies/SetRepeatModeRequestBody.cs +++ /dev/null @@ -1,14 +0,0 @@ -namespace MediaBrowser.Model.SyncPlay.RequestBodies -{ - /// - /// Class SetRepeatModeRequestBody. - /// - public class SetRepeatModeRequestBody - { - /// - /// Gets or sets the repeat mode. - /// - /// The repeat mode. - public GroupRepeatMode Mode { get; set; } - } -} diff --git a/MediaBrowser.Model/SyncPlay/RequestBodies/SetShuffleModeRequestBody.cs b/MediaBrowser.Model/SyncPlay/RequestBodies/SetShuffleModeRequestBody.cs deleted file mode 100644 index 867cb938dc..0000000000 --- a/MediaBrowser.Model/SyncPlay/RequestBodies/SetShuffleModeRequestBody.cs +++ /dev/null @@ -1,14 +0,0 @@ -namespace MediaBrowser.Model.SyncPlay.RequestBodies -{ - /// - /// Class SetShuffleModeRequestBody. - /// - public class SetShuffleModeRequestBody - { - /// - /// Gets or sets the shuffle mode. - /// - /// The shuffle mode. - public GroupShuffleMode Mode { get; set; } - } -} -- cgit v1.2.3