From b1c9b224c49b28aa18785ad8c773314456b1da72 Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Wed, 29 Oct 2014 21:17:31 -0400 Subject: [PATCH] add server id to dto's --- .../ApiClient/ServerCredentials.cs | 2 ++ MediaBrowser.Model/ApiClient/ServerInfo.cs | 4 +++- .../Connect/ConnectUserServer.cs | 1 + MediaBrowser.Model/LiveTv/BaseTimerInfoDto.cs | 9 +++++++- MediaBrowser.Model/LiveTv/ChannelInfoDto.cs | 10 +++++++-- MediaBrowser.Model/LiveTv/ProgramInfoDto.cs | 8 ++++++- .../LiveTv/RecordingGroupDto.cs | 13 ++++++++--- MediaBrowser.Model/LiveTv/RecordingInfoDto.cs | 8 ++++++- .../LiveTv/LiveTvDtoService.cs | 22 +++++++++++++------ .../LiveTv/LiveTvManager.cs | 7 +++--- .../ApplicationHost.cs | 2 +- Nuget/MediaBrowser.Common.Internal.nuspec | 4 ++-- Nuget/MediaBrowser.Common.nuspec | 2 +- Nuget/MediaBrowser.Model.Signed.nuspec | 2 +- Nuget/MediaBrowser.Server.Core.nuspec | 4 ++-- 15 files changed, 72 insertions(+), 26 deletions(-) diff --git a/MediaBrowser.Model/ApiClient/ServerCredentials.cs b/MediaBrowser.Model/ApiClient/ServerCredentials.cs index 4999062948..56bf5cc185 100644 --- a/MediaBrowser.Model/ApiClient/ServerCredentials.cs +++ b/MediaBrowser.Model/ApiClient/ServerCredentials.cs @@ -35,6 +35,8 @@ namespace MediaBrowser.Model.ApiClient // Merge the data existing.DateLastAccessed = new[] { existing.DateLastAccessed, server.DateLastAccessed }.Max(); + existing.UserLinkType = server.UserLinkType; + if (!string.IsNullOrEmpty(server.AccessToken)) { existing.AccessToken = server.AccessToken; diff --git a/MediaBrowser.Model/ApiClient/ServerInfo.cs b/MediaBrowser.Model/ApiClient/ServerInfo.cs index 299e3015c4..0570647e9b 100644 --- a/MediaBrowser.Model/ApiClient/ServerInfo.cs +++ b/MediaBrowser.Model/ApiClient/ServerInfo.cs @@ -1,4 +1,5 @@ -using MediaBrowser.Model.System; +using MediaBrowser.Model.Connect; +using MediaBrowser.Model.System; using System; using System.Collections.Generic; @@ -15,6 +16,7 @@ namespace MediaBrowser.Model.ApiClient public List WakeOnLanInfos { get; set; } public DateTime DateLastAccessed { get; set; } public String ExchangeToken { get; set; } + public UserLinkType? UserLinkType { get; set; } public ServerInfo() { diff --git a/MediaBrowser.Model/Connect/ConnectUserServer.cs b/MediaBrowser.Model/Connect/ConnectUserServer.cs index b48a132638..caa6ebb145 100644 --- a/MediaBrowser.Model/Connect/ConnectUserServer.cs +++ b/MediaBrowser.Model/Connect/ConnectUserServer.cs @@ -9,5 +9,6 @@ namespace MediaBrowser.Model.Connect public string AccessKey { get; set; } public string SystemId { get; set; } public string LocalAddress { get; set; } + public string UserType { get; set; } } } diff --git a/MediaBrowser.Model/LiveTv/BaseTimerInfoDto.cs b/MediaBrowser.Model/LiveTv/BaseTimerInfoDto.cs index 27001f7215..49e5724181 100644 --- a/MediaBrowser.Model/LiveTv/BaseTimerInfoDto.cs +++ b/MediaBrowser.Model/LiveTv/BaseTimerInfoDto.cs @@ -1,10 +1,11 @@ using System; using System.ComponentModel; +using MediaBrowser.Model.Dto; using MediaBrowser.Model.Extensions; namespace MediaBrowser.Model.LiveTv { - public class BaseTimerInfoDto : IHasPropertyChangedEvent + public class BaseTimerInfoDto : IHasPropertyChangedEvent, IHasServerId { /// /// Occurs when a property value changes. @@ -16,6 +17,12 @@ namespace MediaBrowser.Model.LiveTv /// public string Id { get; set; } + /// + /// Gets or sets the server identifier. + /// + /// The server identifier. + public string ServerId { get; set; } + /// /// Gets or sets the external identifier. /// diff --git a/MediaBrowser.Model/LiveTv/ChannelInfoDto.cs b/MediaBrowser.Model/LiveTv/ChannelInfoDto.cs index 351378eea1..667ad4f14a 100644 --- a/MediaBrowser.Model/LiveTv/ChannelInfoDto.cs +++ b/MediaBrowser.Model/LiveTv/ChannelInfoDto.cs @@ -13,14 +13,20 @@ namespace MediaBrowser.Model.LiveTv /// Class ChannelInfoDto /// [DebuggerDisplay("Name = {Name}, Number = {Number}")] - public class ChannelInfoDto : IHasPropertyChangedEvent, IItemDto + public class ChannelInfoDto : IHasPropertyChangedEvent, IItemDto, IHasServerId { /// /// Gets or sets the name. /// /// The name. public string Name { get; set; } - + + /// + /// Gets or sets the server identifier. + /// + /// The server identifier. + public string ServerId { get; set; } + /// /// Gets or sets the identifier. /// diff --git a/MediaBrowser.Model/LiveTv/ProgramInfoDto.cs b/MediaBrowser.Model/LiveTv/ProgramInfoDto.cs index 50881f72fe..97cd91b2cb 100644 --- a/MediaBrowser.Model/LiveTv/ProgramInfoDto.cs +++ b/MediaBrowser.Model/LiveTv/ProgramInfoDto.cs @@ -11,7 +11,7 @@ using MediaBrowser.Model.Library; namespace MediaBrowser.Model.LiveTv { [DebuggerDisplay("Name = {Name}, StartTime = {StartDate}, EndTime = {EndDate}")] - public class ProgramInfoDto : IHasPropertyChangedEvent, IItemDto + public class ProgramInfoDto : IHasPropertyChangedEvent, IItemDto, IHasServerId { /// /// Id of the program. @@ -24,6 +24,12 @@ namespace MediaBrowser.Model.LiveTv /// The primary image aspect ratio. public double? PrimaryImageAspectRatio { get; set; } + /// + /// Gets or sets the server identifier. + /// + /// The server identifier. + public string ServerId { get; set; } + /// /// Gets or sets the original primary image aspect ratio. /// diff --git a/MediaBrowser.Model/LiveTv/RecordingGroupDto.cs b/MediaBrowser.Model/LiveTv/RecordingGroupDto.cs index 07c5ac32f9..8a0b488cc5 100644 --- a/MediaBrowser.Model/LiveTv/RecordingGroupDto.cs +++ b/MediaBrowser.Model/LiveTv/RecordingGroupDto.cs @@ -1,6 +1,7 @@ -using System.ComponentModel; -using System.Diagnostics; +using MediaBrowser.Model.Dto; using MediaBrowser.Model.Extensions; +using System.ComponentModel; +using System.Diagnostics; namespace MediaBrowser.Model.LiveTv { @@ -8,8 +9,14 @@ namespace MediaBrowser.Model.LiveTv /// Class RecordingGroupDto. /// [DebuggerDisplay("Name = {Name}, Count = {RecordingCount}")] - public class RecordingGroupDto : IHasPropertyChangedEvent + public class RecordingGroupDto : IHasPropertyChangedEvent, IHasServerId { + /// + /// Gets or sets the server identifier. + /// + /// The server identifier. + public string ServerId { get; set; } + /// /// Gets or sets the name. /// diff --git a/MediaBrowser.Model/LiveTv/RecordingInfoDto.cs b/MediaBrowser.Model/LiveTv/RecordingInfoDto.cs index 43ae9681e3..15378a9af1 100644 --- a/MediaBrowser.Model/LiveTv/RecordingInfoDto.cs +++ b/MediaBrowser.Model/LiveTv/RecordingInfoDto.cs @@ -11,7 +11,7 @@ using System.Runtime.Serialization; namespace MediaBrowser.Model.LiveTv { [DebuggerDisplay("Name = {Name}, ChannelName = {ChannelName}")] - public class RecordingInfoDto : IHasPropertyChangedEvent, IItemDto + public class RecordingInfoDto : IHasPropertyChangedEvent, IItemDto, IHasServerId { /// /// Id of the recording. @@ -24,6 +24,12 @@ namespace MediaBrowser.Model.LiveTv /// The primary image aspect ratio. public double? PrimaryImageAspectRatio { get; set; } + /// + /// Gets or sets the server identifier. + /// + /// The server identifier. + public string ServerId { get; set; } + /// /// Gets or sets the original primary image aspect ratio. /// diff --git a/MediaBrowser.Server.Implementations/LiveTv/LiveTvDtoService.cs b/MediaBrowser.Server.Implementations/LiveTv/LiveTvDtoService.cs index 9c69e656d7..371619c084 100644 --- a/MediaBrowser.Server.Implementations/LiveTv/LiveTvDtoService.cs +++ b/MediaBrowser.Server.Implementations/LiveTv/LiveTvDtoService.cs @@ -1,4 +1,5 @@ -using MediaBrowser.Common.Extensions; +using MediaBrowser.Common; +using MediaBrowser.Common.Extensions; using MediaBrowser.Controller.Drawing; using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; @@ -22,13 +23,15 @@ namespace MediaBrowser.Server.Implementations.LiveTv private readonly IUserDataManager _userDataManager; private readonly IDtoService _dtoService; + private readonly IApplicationHost _appHost; - public LiveTvDtoService(IDtoService dtoService, IUserDataManager userDataManager, IImageProcessor imageProcessor, ILogger logger) + public LiveTvDtoService(IDtoService dtoService, IUserDataManager userDataManager, IImageProcessor imageProcessor, ILogger logger, IApplicationHost appHost) { _dtoService = dtoService; _userDataManager = userDataManager; _imageProcessor = imageProcessor; _logger = logger; + _appHost = appHost; } public TimerInfoDto GetTimerInfoDto(TimerInfo info, ILiveTvService service, LiveTvProgram program, LiveTvChannel channel) @@ -53,7 +56,8 @@ namespace MediaBrowser.Server.Implementations.LiveTv ServiceName = service.Name, ExternalProgramId = info.ProgramId, Priority = info.Priority, - RunTimeTicks = (info.EndDate - info.StartDate).Ticks + RunTimeTicks = (info.EndDate - info.StartDate).Ticks, + ServerId = _appHost.SystemId }; if (!string.IsNullOrEmpty(info.ProgramId)) @@ -99,7 +103,8 @@ namespace MediaBrowser.Server.Implementations.LiveTv ExternalChannelId = info.ChannelId, ExternalProgramId = info.ProgramId, ServiceName = service.Name, - ChannelName = channelName + ChannelName = channelName, + ServerId = _appHost.SystemId }; if (!string.IsNullOrEmpty(info.ChannelId)) @@ -219,7 +224,8 @@ namespace MediaBrowser.Server.Implementations.LiveTv RunTimeTicks = (info.EndDate - info.StartDate).Ticks, OriginalAirDate = info.OriginalAirDate, - MediaSources = recording.GetMediaSources(true).ToList() + MediaSources = recording.GetMediaSources(true).ToList(), + ServerId = _appHost.SystemId }; dto.MediaStreams = dto.MediaSources.SelectMany(i => i.MediaStreams).ToList(); @@ -314,7 +320,8 @@ namespace MediaBrowser.Server.Implementations.LiveTv Id = info.Id.ToString("N"), MediaType = info.MediaType, ExternalId = info.ExternalId, - MediaSources = info.GetMediaSources(true).ToList() + MediaSources = info.GetMediaSources(true).ToList(), + ServerId = _appHost.SystemId }; if (user != null) @@ -368,7 +375,8 @@ namespace MediaBrowser.Server.Implementations.LiveTv IsKids = item.IsKids, IsPremiere = item.IsPremiere, Type = "Program", - MediaType = item.MediaType + MediaType = item.MediaType, + ServerId = _appHost.SystemId }; if (item.EndDate.HasValue) diff --git a/MediaBrowser.Server.Implementations/LiveTv/LiveTvManager.cs b/MediaBrowser.Server.Implementations/LiveTv/LiveTvManager.cs index 17ccadd185..1f8e78c488 100644 --- a/MediaBrowser.Server.Implementations/LiveTv/LiveTvManager.cs +++ b/MediaBrowser.Server.Implementations/LiveTv/LiveTvManager.cs @@ -1,4 +1,5 @@ -using MediaBrowser.Common.Configuration; +using MediaBrowser.Common; +using MediaBrowser.Common.Configuration; using MediaBrowser.Common.Extensions; using MediaBrowser.Common.IO; using MediaBrowser.Common.ScheduledTasks; @@ -60,7 +61,7 @@ namespace MediaBrowser.Server.Implementations.LiveTv private readonly SemaphoreSlim _refreshSemaphore = new SemaphoreSlim(1, 1); - public LiveTvManager(IServerConfigurationManager config, IFileSystem fileSystem, ILogger logger, IItemRepository itemRepo, IImageProcessor imageProcessor, IUserDataManager userDataManager, IDtoService dtoService, IUserManager userManager, ILibraryManager libraryManager, ITaskManager taskManager, ILocalizationManager localization, IJsonSerializer jsonSerializer) + public LiveTvManager(IApplicationHost appHost, IServerConfigurationManager config, IFileSystem fileSystem, ILogger logger, IItemRepository itemRepo, IImageProcessor imageProcessor, IUserDataManager userDataManager, IDtoService dtoService, IUserManager userManager, ILibraryManager libraryManager, ITaskManager taskManager, ILocalizationManager localization, IJsonSerializer jsonSerializer) { _config = config; _fileSystem = fileSystem; @@ -74,7 +75,7 @@ namespace MediaBrowser.Server.Implementations.LiveTv _dtoService = dtoService; _userDataManager = userDataManager; - _tvDtoService = new LiveTvDtoService(dtoService, userDataManager, imageProcessor, logger); + _tvDtoService = new LiveTvDtoService(dtoService, userDataManager, imageProcessor, logger, appHost); } /// diff --git a/MediaBrowser.ServerApplication/ApplicationHost.cs b/MediaBrowser.ServerApplication/ApplicationHost.cs index 86a2b2bb94..7eeb527ce6 100644 --- a/MediaBrowser.ServerApplication/ApplicationHost.cs +++ b/MediaBrowser.ServerApplication/ApplicationHost.cs @@ -530,7 +530,7 @@ namespace MediaBrowser.ServerApplication var playlistManager = new PlaylistManager(LibraryManager, FileSystemManager, LibraryMonitor, LogManager.GetLogger("PlaylistManager"), UserManager); RegisterSingleInstance(playlistManager); - LiveTvManager = new LiveTvManager(ServerConfigurationManager, FileSystemManager, Logger, ItemRepository, ImageProcessor, UserDataManager, DtoService, UserManager, LibraryManager, TaskManager, LocalizationManager, JsonSerializer); + LiveTvManager = new LiveTvManager(this, ServerConfigurationManager, FileSystemManager, Logger, ItemRepository, ImageProcessor, UserDataManager, DtoService, UserManager, LibraryManager, TaskManager, LocalizationManager, JsonSerializer); RegisterSingleInstance(LiveTvManager); UserViewManager = new UserViewManager(LibraryManager, LocalizationManager, FileSystemManager, UserManager, ChannelManager, LiveTvManager, ApplicationPaths, playlistManager); diff --git a/Nuget/MediaBrowser.Common.Internal.nuspec b/Nuget/MediaBrowser.Common.Internal.nuspec index e1aec93a39..b574b635f7 100644 --- a/Nuget/MediaBrowser.Common.Internal.nuspec +++ b/Nuget/MediaBrowser.Common.Internal.nuspec @@ -2,7 +2,7 @@ MediaBrowser.Common.Internal - 3.0.502 + 3.0.503 MediaBrowser.Common.Internal Luke ebr,Luke,scottisafool @@ -12,7 +12,7 @@ Contains common components shared by Media Browser Theater and Media Browser Server. Not intended for plugin developer consumption. Copyright © Media Browser 2013 - + diff --git a/Nuget/MediaBrowser.Common.nuspec b/Nuget/MediaBrowser.Common.nuspec index e467bae2d1..e8f156e7ef 100644 --- a/Nuget/MediaBrowser.Common.nuspec +++ b/Nuget/MediaBrowser.Common.nuspec @@ -2,7 +2,7 @@ MediaBrowser.Common - 3.0.502 + 3.0.503 MediaBrowser.Common Media Browser Team ebr,Luke,scottisafool diff --git a/Nuget/MediaBrowser.Model.Signed.nuspec b/Nuget/MediaBrowser.Model.Signed.nuspec index 093eb066e8..80d26a29d6 100644 --- a/Nuget/MediaBrowser.Model.Signed.nuspec +++ b/Nuget/MediaBrowser.Model.Signed.nuspec @@ -2,7 +2,7 @@ MediaBrowser.Model.Signed - 3.0.502 + 3.0.503 MediaBrowser.Model - Signed Edition Media Browser Team ebr,Luke,scottisafool diff --git a/Nuget/MediaBrowser.Server.Core.nuspec b/Nuget/MediaBrowser.Server.Core.nuspec index ca8aa13fa4..739041e3ef 100644 --- a/Nuget/MediaBrowser.Server.Core.nuspec +++ b/Nuget/MediaBrowser.Server.Core.nuspec @@ -2,7 +2,7 @@ MediaBrowser.Server.Core - 3.0.502 + 3.0.503 Media Browser.Server.Core Media Browser Team ebr,Luke,scottisafool @@ -12,7 +12,7 @@ Contains core components required to build plugins for Media Browser Server. Copyright © Media Browser 2013 - +