diff options
Diffstat (limited to 'MediaBrowser.Api')
| -rw-r--r-- | MediaBrowser.Api/Library/LibraryService.cs | 15 | ||||
| -rw-r--r-- | MediaBrowser.Api/Session/SessionsService.cs | 33 | ||||
| -rw-r--r-- | MediaBrowser.Api/StartupWizardService.cs | 35 | ||||
| -rw-r--r-- | MediaBrowser.Api/VideosService.cs | 6 |
4 files changed, 50 insertions, 39 deletions
diff --git a/MediaBrowser.Api/Library/LibraryService.cs b/MediaBrowser.Api/Library/LibraryService.cs index 6152ea20b8..a036a00a6e 100644 --- a/MediaBrowser.Api/Library/LibraryService.cs +++ b/MediaBrowser.Api/Library/LibraryService.cs @@ -335,7 +335,8 @@ namespace MediaBrowser.Api.Library Fields = request.Fields, Id = request.Id, Limit = request.Limit, - UserId = request.UserId + UserId = request.UserId, + ImageTypeLimit = request.ImageTypeLimit }); } if (item is MusicAlbum) @@ -350,7 +351,8 @@ namespace MediaBrowser.Api.Library Id = request.Id, Limit = request.Limit, UserId = request.UserId, - ExcludeArtistIds = request.ExcludeArtistIds + ExcludeArtistIds = request.ExcludeArtistIds, + ImageTypeLimit = request.ImageTypeLimit }); } if (item is MusicArtist) @@ -364,7 +366,8 @@ namespace MediaBrowser.Api.Library Fields = request.Fields, Id = request.Id, Limit = request.Limit, - UserId = request.UserId + UserId = request.UserId, + ImageTypeLimit = request.ImageTypeLimit }); } @@ -381,7 +384,8 @@ namespace MediaBrowser.Api.Library Fields = request.Fields, Id = request.Id, Limit = request.Limit, - UserId = request.UserId + UserId = request.UserId, + ImageTypeLimit = request.ImageTypeLimit }); } @@ -396,7 +400,8 @@ namespace MediaBrowser.Api.Library Fields = request.Fields, Id = request.Id, Limit = request.Limit, - UserId = request.UserId + UserId = request.UserId, + ImageTypeLimit = request.ImageTypeLimit }); } diff --git a/MediaBrowser.Api/Session/SessionsService.cs b/MediaBrowser.Api/Session/SessionsService.cs index e961f9d516..35c29cd15b 100644 --- a/MediaBrowser.Api/Session/SessionsService.cs +++ b/MediaBrowser.Api/Session/SessionsService.cs @@ -66,7 +66,7 @@ namespace MediaBrowser.Api.Session [Route("/Sessions/{Id}/Playing", "POST", Summary = "Instructs a session to play an item")] [Authenticated] - public class Play : IReturnVoid + public class Play : PlayRequest { /// <summary> /// Gets or sets the id. @@ -74,27 +74,6 @@ namespace MediaBrowser.Api.Session /// <value>The id.</value> [ApiMember(Name = "Id", Description = "Session Id", IsRequired = true, DataType = "string", ParameterType = "path", Verb = "POST")] public string Id { get; set; } - - /// <summary> - /// Artist, Genre, Studio, Person, or any kind of BaseItem - /// </summary> - /// <value>The type of the item.</value> - [ApiMember(Name = "ItemIds", Description = "The ids of the items to play, comma delimited", IsRequired = true, DataType = "string", ParameterType = "query", Verb = "POST", AllowMultiple = true)] - public string ItemIds { get; set; } - - /// <summary> - /// Gets or sets the start position ticks that the first item should be played at - /// </summary> - /// <value>The start position ticks.</value> - [ApiMember(Name = "StartPositionTicks", Description = "The starting position of the first item.", IsRequired = false, DataType = "string", ParameterType = "query", Verb = "POST")] - public long? StartPositionTicks { get; set; } - - /// <summary> - /// Gets or sets the play command. - /// </summary> - /// <value>The play command.</value> - [ApiMember(Name = "PlayCommand", Description = "The type of play command to issue (PlayNow, PlayNext, PlayLast). Clients who have not yet implemented play next and play last may play now.", IsRequired = true, DataType = "string", ParameterType = "query", Verb = "POST")] - public PlayCommand PlayCommand { get; set; } } [Route("/Sessions/{Id}/Playing/{Command}", "POST", Summary = "Issues a playstate command to a client")] @@ -471,15 +450,7 @@ namespace MediaBrowser.Api.Session /// <param name="request">The request.</param> public void Post(Play request) { - var command = new PlayRequest - { - ItemIds = request.ItemIds.Split(','), - - PlayCommand = request.PlayCommand, - StartPositionTicks = request.StartPositionTicks - }; - - var task = _sessionManager.SendPlayCommand(GetSession(_sessionContext).Result.Id, request.Id, command, CancellationToken.None); + var task = _sessionManager.SendPlayCommand(GetSession(_sessionContext).Result.Id, request.Id, request, CancellationToken.None); Task.WaitAll(task); } diff --git a/MediaBrowser.Api/StartupWizardService.cs b/MediaBrowser.Api/StartupWizardService.cs index 1b185b073b..54e4657c11 100644 --- a/MediaBrowser.Api/StartupWizardService.cs +++ b/MediaBrowser.Api/StartupWizardService.cs @@ -9,6 +9,8 @@ using System.Linq; using System.Threading.Tasks; using MediaBrowser.Controller.MediaEncoding; using MediaBrowser.Model.Services; +using MediaBrowser.Common.Net; +using System.Threading; namespace MediaBrowser.Api { @@ -50,14 +52,16 @@ namespace MediaBrowser.Api private readonly IUserManager _userManager; private readonly IConnectManager _connectManager; private readonly IMediaEncoder _mediaEncoder; + private readonly IHttpClient _httpClient; - public StartupWizardService(IServerConfigurationManager config, IServerApplicationHost appHost, IUserManager userManager, IConnectManager connectManager, IMediaEncoder mediaEncoder) + public StartupWizardService(IServerConfigurationManager config, IHttpClient httpClient, IServerApplicationHost appHost, IUserManager userManager, IConnectManager connectManager, IMediaEncoder mediaEncoder) { _config = config; _appHost = appHost; _userManager = userManager; _connectManager = connectManager; _mediaEncoder = mediaEncoder; + _httpClient = httpClient; } public void Post(ReportStartupWizardComplete request) @@ -65,6 +69,35 @@ namespace MediaBrowser.Api _config.Configuration.IsStartupWizardCompleted = true; _config.SetOptimalValues(); _config.SaveConfiguration(); + + Task.Run(UpdateStats); + } + + private async Task UpdateStats() + { + try + { + var url = string.Format("http://www.mb3admin.com/admin/service/package/installed?mac={0}&product=MBServer&operation=Install&version={1}", + _appHost.SystemId, + _appHost.ApplicationVersion.ToString()); + + using (var response = await _httpClient.SendAsync(new HttpRequestOptions + { + + Url = url, + CancellationToken = CancellationToken.None, + LogErrors = false, + LogRequest = false + + }, "GET").ConfigureAwait(false)) + { + + } + } + catch + { + + } } public object Get(GetStartupInfo request) diff --git a/MediaBrowser.Api/VideosService.cs b/MediaBrowser.Api/VideosService.cs index 3f840dbfa3..3f4bb46f45 100644 --- a/MediaBrowser.Api/VideosService.cs +++ b/MediaBrowser.Api/VideosService.cs @@ -114,12 +114,14 @@ namespace MediaBrowser.Api foreach (var link in video.GetLinkedAlternateVersions()) { - link.PrimaryVersionId = null; + link.SetPrimaryVersionId(null); + link.LinkedAlternateVersions = Video.EmptyLinkedChildArray; link.UpdateToRepository(ItemUpdateType.MetadataEdit, CancellationToken.None); } video.LinkedAlternateVersions = Video.EmptyLinkedChildArray; + video.SetPrimaryVersionId(null); video.UpdateToRepository(ItemUpdateType.MetadataEdit, CancellationToken.None); } @@ -174,7 +176,7 @@ namespace MediaBrowser.Api foreach (var item in items.Where(i => i.Id != primaryVersion.Id)) { - item.PrimaryVersionId = primaryVersion.Id.ToString("N"); + item.SetPrimaryVersionId(primaryVersion.Id.ToString("N")); item.UpdateToRepository(ItemUpdateType.MetadataEdit, CancellationToken.None); |
