diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-07-01 13:17:33 -0400 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-07-01 13:17:33 -0400 |
| commit | 57449f62c16a23448770375b04c4786431170c84 (patch) | |
| tree | bece35c637c3d77b43850950c5cc4ec9dbe0dd8e /MediaBrowser.Api/ItemRefreshService.cs | |
| parent | 1d7c83bfc672d7c51c1be825c3126eb0a40e5e7d (diff) | |
added GameGenre
Diffstat (limited to 'MediaBrowser.Api/ItemRefreshService.cs')
| -rw-r--r-- | MediaBrowser.Api/ItemRefreshService.cs | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/MediaBrowser.Api/ItemRefreshService.cs b/MediaBrowser.Api/ItemRefreshService.cs index 71f07fb35..f6e5a2cba 100644 --- a/MediaBrowser.Api/ItemRefreshService.cs +++ b/MediaBrowser.Api/ItemRefreshService.cs @@ -56,6 +56,17 @@ namespace MediaBrowser.Api public string Name { get; set; } } + [Route("/GameGenres/{Name}/Refresh", "POST")] + [Api(Description = "Refreshes metadata for a game genre")] + public class RefreshGameGenre : IReturnVoid + { + [ApiMember(Name = "Forced", Description = "Indicates if a normal or forced refresh should occur.", IsRequired = false, DataType = "bool", ParameterType = "query", Verb = "POST")] + public bool Forced { get; set; } + + [ApiMember(Name = "Name", Description = "Name", IsRequired = true, DataType = "string", ParameterType = "path", Verb = "POST")] + public string Name { get; set; } + } + [Route("/Persons/{Name}/Refresh", "POST")] [Api(Description = "Refreshes metadata for a person")] public class RefreshPerson : IReturnVoid @@ -152,6 +163,27 @@ namespace MediaBrowser.Api } } + public void Post(RefreshGameGenre request) + { + var task = RefreshGameGenre(request); + + Task.WaitAll(task); + } + + private async Task RefreshGameGenre(RefreshGameGenre request) + { + var item = await GetGameGenre(request.Name, _libraryManager).ConfigureAwait(false); + + try + { + await item.RefreshMetadata(CancellationToken.None, forceRefresh: request.Forced).ConfigureAwait(false); + } + catch (Exception ex) + { + Logger.ErrorException("Error refreshing library", ex); + } + } + public void Post(RefreshPerson request) { var task = RefreshPerson(request); |
