aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--MediaBrowser.Controller/Session/SessionInfo.cs40
-rw-r--r--MediaBrowser.Model/Session/ClientCapabilities.cs5
-rw-r--r--MediaBrowser.Providers/Manager/ImageSaver.cs8
-rw-r--r--MediaBrowser.Server.Implementations/Devices/DeviceManager.cs2
-rw-r--r--MediaBrowser.Server.Implementations/Session/SessionManager.cs3
5 files changed, 31 insertions, 27 deletions
diff --git a/MediaBrowser.Controller/Session/SessionInfo.cs b/MediaBrowser.Controller/Session/SessionInfo.cs
index 078d4d70f..64b20c13e 100644
--- a/MediaBrowser.Controller/Session/SessionInfo.cs
+++ b/MediaBrowser.Controller/Session/SessionInfo.cs
@@ -14,17 +14,8 @@ namespace MediaBrowser.Controller.Session
public SessionInfo()
{
QueueableMediaTypes = new List<string>();
- PlayableMediaTypes = new List<string>
- {
- MediaType.Audio,
- MediaType.Book,
- MediaType.Game,
- MediaType.Photo,
- MediaType.Video
- };
AdditionalUsers = new List<SessionUserInfo>();
- SupportedCommands = new List<string>();
PlayState = new PlayerStateInfo();
}
@@ -32,6 +23,8 @@ namespace MediaBrowser.Controller.Session
public List<SessionUserInfo> AdditionalUsers { get; set; }
+ public ClientCapabilities Capabilities { get; set; }
+
/// <summary>
/// Gets or sets the remote end point.
/// </summary>
@@ -48,7 +41,17 @@ namespace MediaBrowser.Controller.Session
/// Gets or sets the playable media types.
/// </summary>
/// <value>The playable media types.</value>
- public List<string> PlayableMediaTypes { get; set; }
+ public List<string> PlayableMediaTypes
+ {
+ get
+ {
+ if (Capabilities == null)
+ {
+ return new List<string>();
+ }
+ return Capabilities.PlayableMediaTypes;
+ }
+ }
/// <summary>
/// Gets or sets the id.
@@ -126,7 +129,17 @@ namespace MediaBrowser.Controller.Session
/// Gets or sets the supported commands.
/// </summary>
/// <value>The supported commands.</value>
- public List<string> SupportedCommands { get; set; }
+ public List<string> SupportedCommands
+ {
+ get
+ {
+ if (Capabilities == null)
+ {
+ return new List<string>();
+ }
+ return Capabilities.SupportedCommands;
+ }
+ }
public TranscodingInfo TranscodingInfo { get; set; }
@@ -151,6 +164,11 @@ namespace MediaBrowser.Controller.Session
{
get
{
+ if (Capabilities == null || !Capabilities.SupportsMediaControl)
+ {
+ return false;
+ }
+
if (SessionController != null)
{
return SessionController.SupportsMediaControl;
diff --git a/MediaBrowser.Model/Session/ClientCapabilities.cs b/MediaBrowser.Model/Session/ClientCapabilities.cs
index 6ca4507c0..9361a60ea 100644
--- a/MediaBrowser.Model/Session/ClientCapabilities.cs
+++ b/MediaBrowser.Model/Session/ClientCapabilities.cs
@@ -20,11 +20,6 @@ namespace MediaBrowser.Model.Session
public DeviceProfile DeviceProfile { get; set; }
- /// <summary>
- /// Usage should be migrated to SupportsPersistentIdentifier. Keeping this to preserve data.
- /// </summary>
- public bool? SupportsUniqueIdentifier { get; set; }
-
public ClientCapabilities()
{
PlayableMediaTypes = new List<string>();
diff --git a/MediaBrowser.Providers/Manager/ImageSaver.cs b/MediaBrowser.Providers/Manager/ImageSaver.cs
index a8e16e4ae..22178434f 100644
--- a/MediaBrowser.Providers/Manager/ImageSaver.cs
+++ b/MediaBrowser.Providers/Manager/ImageSaver.cs
@@ -82,14 +82,6 @@ namespace MediaBrowser.Providers.Manager
{
saveLocally = true;
}
- if (item is IItemByName)
- {
- var hasDualAccess = item as IHasDualAccess;
- if (hasDualAccess == null || hasDualAccess.IsAccessedByName)
- {
- saveLocally = true;
- }
- }
if (type != ImageType.Primary && item is Episode)
{
diff --git a/MediaBrowser.Server.Implementations/Devices/DeviceManager.cs b/MediaBrowser.Server.Implementations/Devices/DeviceManager.cs
index 3211f88d5..84dd8a97c 100644
--- a/MediaBrowser.Server.Implementations/Devices/DeviceManager.cs
+++ b/MediaBrowser.Server.Implementations/Devices/DeviceManager.cs
@@ -109,7 +109,7 @@ namespace MediaBrowser.Server.Implementations.Devices
devices = devices.Where(i =>
{
var caps = GetCapabilities(i.Id);
- var deviceVal = caps.SupportsUniqueIdentifier ?? caps.SupportsPersistentIdentifier;
+ var deviceVal = caps.SupportsPersistentIdentifier;
return deviceVal == val;
});
}
diff --git a/MediaBrowser.Server.Implementations/Session/SessionManager.cs b/MediaBrowser.Server.Implementations/Session/SessionManager.cs
index a9488190c..d02ef9d27 100644
--- a/MediaBrowser.Server.Implementations/Session/SessionManager.cs
+++ b/MediaBrowser.Server.Implementations/Session/SessionManager.cs
@@ -1327,8 +1327,7 @@ namespace MediaBrowser.Server.Implementations.Session
ClientCapabilities capabilities,
bool saveCapabilities)
{
- session.PlayableMediaTypes = capabilities.PlayableMediaTypes;
- session.SupportedCommands = capabilities.SupportedCommands;
+ session.Capabilities = capabilities;
if (!string.IsNullOrWhiteSpace(capabilities.MessageCallbackUrl))
{