public AlbumViewModelExtended GetRoot() { var metadataProvider = _factory.GetMetadataProvider(); var rootAlbum = metadataProvider.GetRoot(); var rootAlbumVM = new AlbumViewModelExtended(_albumItemsPathProvider).FillBy2(rootAlbum); return DefaultSortAlbum(rootAlbumVM); }
public AlbumViewModelExtended GetAlbum(string albumPath) { //System.Threading.Thread.Sleep(3000); var metadataProvider = _factory.GetMetadataProvider(); var album = _albumItemsPathProvider.FindByAlbumPath(metadataProvider.GetRoot(), albumPath); if (album == null) { this.ThrowHttpErrorResponseException(HttpStatusCode.NotFound, $"album with id '{albumPath}' was not found"); } var extendedAlbumVM = new AlbumViewModelExtended(_albumItemsPathProvider).FillBy2(album); return DefaultSortAlbum(extendedAlbumVM); }
/// <summary> /// Sorts album/content items with default order. /// Returns the same album reference - for convenience of chaining. /// </summary> private AlbumViewModelExtended DefaultSortAlbum(AlbumViewModelExtended album) { album.AlbumItems = album.AlbumItems.OrderBy(x => x.Name).ToList(); album.ContentItems = album.ContentItems.OrderBy(x => x.Name).ToList(); return album; }