mirror of
https://github.com/jellyfin/jellyfin.git
synced 2026-06-01 13:28:27 +01:00
A few serialization fixes
This commit is contained in:
parent
cb7f04e4d3
commit
caa369c1a3
@@ -9,9 +9,9 @@ using MediaBrowser.Model.Entities;
|
||||
|
||||
namespace MediaBrowser.Api.HttpHandlers
|
||||
{
|
||||
public class GenresHandler : BaseJsonHandler<IEnumerable<IBNItem>>
|
||||
public class GenresHandler : BaseJsonHandler<IBNItem[]>
|
||||
{
|
||||
protected override Task<IEnumerable<IBNItem>> GetObjectToSerialize()
|
||||
protected override Task<IBNItem[]> GetObjectToSerialize()
|
||||
{
|
||||
Folder parent = ApiService.GetItemById(QueryString["id"]) as Folder;
|
||||
Guid userId = Guid.Parse(QueryString["userid"]);
|
||||
@@ -24,7 +24,7 @@ namespace MediaBrowser.Api.HttpHandlers
|
||||
/// Gets all genres from all recursive children of a folder
|
||||
/// The CategoryInfo class is used to keep track of the number of times each genres appears
|
||||
/// </summary>
|
||||
private async Task<IEnumerable<IBNItem>> GetAllGenres(Folder parent, User user)
|
||||
private async Task<IBNItem[]> GetAllGenres(Folder parent, User user)
|
||||
{
|
||||
Dictionary<string, int> data = new Dictionary<string, int>();
|
||||
|
||||
@@ -53,9 +53,20 @@ namespace MediaBrowser.Api.HttpHandlers
|
||||
}
|
||||
}
|
||||
|
||||
IEnumerable<Genre> entities = await Task.WhenAll<Genre>(data.Keys.Select(key => { return Kernel.Instance.ItemController.GetGenre(key); })).ConfigureAwait(false);
|
||||
// Get the Genre objects
|
||||
Genre[] entities = await Task.WhenAll<Genre>(data.Keys.Select(key => { return Kernel.Instance.ItemController.GetGenre(key); })).ConfigureAwait(false);
|
||||
|
||||
return entities.Select(e => ApiService.GetIBNItem(e, data[e.Name]));
|
||||
// Convert to an array of IBNItem
|
||||
IBNItem[] items = new IBNItem[entities.Length];
|
||||
|
||||
for (int i = 0; i < entities.Length; i++)
|
||||
{
|
||||
Genre e = entities[i];
|
||||
|
||||
items[i] = ApiService.GetIBNItem(e, data[e.Name]);
|
||||
}
|
||||
|
||||
return items;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -9,9 +9,9 @@ using MediaBrowser.Model.Entities;
|
||||
|
||||
namespace MediaBrowser.Api.HttpHandlers
|
||||
{
|
||||
public class StudiosHandler : BaseJsonHandler<IEnumerable<IBNItem>>
|
||||
public class StudiosHandler : BaseJsonHandler<IBNItem[]>
|
||||
{
|
||||
protected override Task<IEnumerable<IBNItem>> GetObjectToSerialize()
|
||||
protected override Task<IBNItem[]> GetObjectToSerialize()
|
||||
{
|
||||
Folder parent = ApiService.GetItemById(QueryString["id"]) as Folder;
|
||||
Guid userId = Guid.Parse(QueryString["userid"]);
|
||||
@@ -24,7 +24,7 @@ namespace MediaBrowser.Api.HttpHandlers
|
||||
/// Gets all studios from all recursive children of a folder
|
||||
/// The CategoryInfo class is used to keep track of the number of times each studio appears
|
||||
/// </summary>
|
||||
private async Task<IEnumerable<IBNItem>> GetAllStudios(Folder parent, User user)
|
||||
private async Task<IBNItem[]> GetAllStudios(Folder parent, User user)
|
||||
{
|
||||
Dictionary<string, int> data = new Dictionary<string, int>();
|
||||
|
||||
@@ -53,9 +53,20 @@ namespace MediaBrowser.Api.HttpHandlers
|
||||
}
|
||||
}
|
||||
|
||||
IEnumerable<Studio> entities = await Task.WhenAll<Studio>(data.Keys.Select(key => { return Kernel.Instance.ItemController.GetStudio(key); })).ConfigureAwait(false);
|
||||
// Get the Studio objects
|
||||
Studio[] entities = await Task.WhenAll<Studio>(data.Keys.Select(key => { return Kernel.Instance.ItemController.GetStudio(key); })).ConfigureAwait(false);
|
||||
|
||||
return entities.Select(e => ApiService.GetIBNItem(e, data[e.Name]));
|
||||
// Convert to an array of IBNItem
|
||||
IBNItem[] items = new IBNItem[entities.Length];
|
||||
|
||||
for (int i = 0; i < entities.Length; i++)
|
||||
{
|
||||
Studio e = entities[i];
|
||||
|
||||
items[i] = ApiService.GetIBNItem(e, data[e.Name]);
|
||||
}
|
||||
|
||||
return items;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -9,9 +9,9 @@ using MediaBrowser.Model.Entities;
|
||||
|
||||
namespace MediaBrowser.Api.HttpHandlers
|
||||
{
|
||||
public class YearsHandler : BaseJsonHandler<IEnumerable<IBNItem>>
|
||||
public class YearsHandler : BaseJsonHandler<IBNItem[]>
|
||||
{
|
||||
protected override Task<IEnumerable<IBNItem>> GetObjectToSerialize()
|
||||
protected override Task<IBNItem[]> GetObjectToSerialize()
|
||||
{
|
||||
Folder parent = ApiService.GetItemById(QueryString["id"]) as Folder;
|
||||
Guid userId = Guid.Parse(QueryString["userid"]);
|
||||
@@ -24,7 +24,7 @@ namespace MediaBrowser.Api.HttpHandlers
|
||||
/// Gets all years from all recursive children of a folder
|
||||
/// The CategoryInfo class is used to keep track of the number of times each year appears
|
||||
/// </summary>
|
||||
private async Task<IEnumerable<IBNItem>> GetAllYears(Folder parent, User user)
|
||||
private async Task<IBNItem[]> GetAllYears(Folder parent, User user)
|
||||
{
|
||||
Dictionary<int, int> data = new Dictionary<int, int>();
|
||||
|
||||
@@ -50,9 +50,20 @@ namespace MediaBrowser.Api.HttpHandlers
|
||||
}
|
||||
}
|
||||
|
||||
IEnumerable<Year> entities = await Task.WhenAll<Year>(data.Keys.Select(key => { return Kernel.Instance.ItemController.GetYear(key); })).ConfigureAwait(false);
|
||||
// Get the Year objects
|
||||
Year[] entities = await Task.WhenAll<Year>(data.Keys.Select(key => { return Kernel.Instance.ItemController.GetYear(key); })).ConfigureAwait(false);
|
||||
|
||||
return entities.Select(e => ApiService.GetIBNItem(e, data[int.Parse(e.Name)]));
|
||||
// Convert to an array of IBNItem
|
||||
IBNItem[] items = new IBNItem[entities.Length];
|
||||
|
||||
for (int i = 0; i < entities.Length; i++)
|
||||
{
|
||||
Year e = entities[i];
|
||||
|
||||
items[i] = ApiService.GetIBNItem(e, data[int.Parse(e.Name)]);
|
||||
}
|
||||
|
||||
return items;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user