support adding additional users to sessions

This commit is contained in:
Luke Pulverenti
2014-01-03 21:35:41 -05:00
parent 6da4231244
commit 135168b0e0
15 changed files with 318 additions and 68 deletions

View File

@@ -45,6 +45,9 @@ namespace MediaBrowser.Controller.Entities.TV
public List<MediaUrl> RemoteTrailers { get; set; }
/// <summary>
/// airdate, dvd or absolute
/// </summary>
public string DisplayOrder { get; set; }
/// <summary>

View File

@@ -1,5 +1,6 @@
using System;
using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Entities;
using System;
using System.Collections.Generic;
namespace MediaBrowser.Controller.Library
{
@@ -8,10 +9,14 @@ namespace MediaBrowser.Controller.Library
/// </summary>
public class PlaybackProgressEventArgs : EventArgs
{
public User User { get; set; }
public List<User> Users { get; set; }
public long? PlaybackPositionTicks { get; set; }
public BaseItem Item { get; set; }
public UserItemData UserData { get; set; }
public PlaybackProgressEventArgs()
{
Users = new List<User>();
}
}
public class PlaybackStopEventArgs : PlaybackProgressEventArgs

View File

@@ -141,5 +141,19 @@ namespace MediaBrowser.Controller.Session
/// <param name="cancellationToken">The cancellation token.</param>
/// <returns>Task.</returns>
Task SendServerRestartNotification(CancellationToken cancellationToken);
/// <summary>
/// Adds the additional user.
/// </summary>
/// <param name="sessionId">The session identifier.</param>
/// <param name="userId">The user identifier.</param>
void AddAdditionalUser(Guid sessionId, Guid userId);
/// <summary>
/// Removes the additional user.
/// </summary>
/// <param name="sessionId">The session identifier.</param>
/// <param name="userId">The user identifier.</param>
void RemoveAdditionalUser(Guid sessionId, Guid userId);
}
}

View File

@@ -1,4 +1,5 @@
using MediaBrowser.Controller.Entities;
using MediaBrowser.Model.Session;
using System;
using System.Collections.Generic;
@@ -12,8 +13,12 @@ namespace MediaBrowser.Controller.Session
public SessionInfo()
{
QueueableMediaTypes = new List<string>();
AdditionalUsersPresent = new List<SessionUserInfo>();
}
public List<SessionUserInfo> AdditionalUsersPresent { get; set; }
/// <summary>
/// Gets or sets the remote end point.
/// </summary>
@@ -31,7 +36,7 @@ namespace MediaBrowser.Controller.Session
/// </summary>
/// <value>The queueable media types.</value>
public List<string> QueueableMediaTypes { get; set; }
/// <summary>
/// Gets or sets the id.
/// </summary>
@@ -42,7 +47,13 @@ namespace MediaBrowser.Controller.Session
/// Gets or sets the user id.
/// </summary>
/// <value>The user id.</value>
public User User { get; set; }
public Guid? UserId { get; set; }
/// <summary>
/// Gets or sets the username.
/// </summary>
/// <value>The username.</value>
public string UserName { get; set; }
/// <summary>
/// Gets or sets the type of the client.