public override async Task <QueryResult <BaseItem> > GetUserItems(UserItemsQuery query) { var result = await UserViewManager.GetUserViews(new UserViewQuery { UserId = query.User.Id.ToString("N") }, CancellationToken.None).ConfigureAwait(false); return(SortAndFilter(result, query)); }
protected override QueryResult <BaseItem> GetItemsInternal(InternalItemsQuery query) { if (query.Recursive) { return(QueryRecursive(query)); } var result = UserViewManager.GetUserViews(new UserViewQuery { UserId = query.User.Id, PresetViews = query.PresetViews }); return(UserViewBuilder.SortAndPage(result, null, query, LibraryManager, true)); }
public override async Task <QueryResult <BaseItem> > GetItems(InternalItemsQuery query) { if (query.Recursive) { var items = query.User.RootFolder.GetRecursiveChildren(query.User); return(SortAndFilter(items, query)); } var result = await UserViewManager.GetUserViews(new UserViewQuery { UserId = query.User.Id.ToString("N") }, CancellationToken.None).ConfigureAwait(false); return(SortAndFilter(result, query)); }
public override async Task <QueryResult <BaseItem> > GetItems(InternalItemsQuery query) { var user = query.User; Func <BaseItem, bool> filter = i => UserViewBuilder.Filter(i, user, query, UserDataManager, LibraryManager); if (query.Recursive) { var items = query.User.RootFolder.GetRecursiveChildren(query.User, filter); return(PostFilterAndSort(items, query)); } var result = await UserViewManager.GetUserViews(new UserViewQuery { UserId = query.User.Id.ToString("N") }, CancellationToken.None).ConfigureAwait(false); return(PostFilterAndSort(result.Where(filter), query)); }
protected override async Task <QueryResult <BaseItem> > GetItemsInternal(InternalItemsQuery query) { if (query.Recursive) { return(QueryRecursive(query)); } var result = await UserViewManager.GetUserViews(new UserViewQuery { UserId = query.User.Id.ToString("N"), PresetViews = query.PresetViews }, CancellationToken.None).ConfigureAwait(false); var user = query.User; Func <BaseItem, bool> filter = i => UserViewBuilder.Filter(i, user, query, UserDataManager, LibraryManager); return(PostFilterAndSort(result.Where(filter), query)); }
protected override QueryResult <BaseItem> GetItemsInternal(InternalItemsQuery query) { if (query.Recursive) { return(QueryRecursive(query)); } var result = UserViewManager.GetUserViews(new UserViewQuery { UserId = query.User.Id, PresetViews = query.PresetViews }); var itemsArray = result; var totalCount = itemsArray.Length; return(new QueryResult <BaseItem> { TotalRecordCount = totalCount, Items = itemsArray }); }
protected override QueryResult <BaseItem> GetItemsInternal(InternalItemsQuery query) { if (query.Recursive) { return(QueryRecursive(query)); } var result = UserViewManager.GetUserViews(new UserViewQuery { UserId = query.User.Id, PresetViews = query.PresetViews }); var itemsArray = result; var totalCount = itemsArray.Length; return(new QueryResult <BaseItem> { TotalRecordCount = totalCount, Items = itemsArray //TODO Fix The co-variant conversion between Folder[] and BaseItem[], this can generate runtime issues. }); }