diff --git a/airsonic-main/src/main/java/org/airsonic/player/service/upnp/AlbumUpnpProcessor.java b/airsonic-main/src/main/java/org/airsonic/player/service/upnp/AlbumUpnpProcessor.java index 9b28a437..b9c4e98b 100644 --- a/airsonic-main/src/main/java/org/airsonic/player/service/upnp/AlbumUpnpProcessor.java +++ b/airsonic-main/src/main/java/org/airsonic/player/service/upnp/AlbumUpnpProcessor.java @@ -26,10 +26,8 @@ import org.airsonic.player.domain.CoverArtScheme; import org.airsonic.player.domain.MediaFile; import org.airsonic.player.domain.MusicFolder; import org.airsonic.player.service.SearchService; -import org.fourthline.cling.support.model.BrowseResult; import org.fourthline.cling.support.model.DIDLContent; import org.fourthline.cling.support.model.PersonWithRole; -import org.fourthline.cling.support.model.SortCriterion; import org.fourthline.cling.support.model.container.Container; import org.fourthline.cling.support.model.container.MusicAlbum; import org.springframework.beans.factory.annotation.Autowired; @@ -61,20 +59,6 @@ public class AlbumUpnpProcessor extends UpnpContentProcessor setRootTitle("Albums"); } - /** - * Browses the top-level content of a type. - */ - public BrowseResult browseRoot(String filter, long firstResult, long maxResults, SortCriterion[] orderBy) throws Exception { - DIDLContent didl = new DIDLContent(); - - List allFolders = getDispatchingContentDirectory().getSettingsService().getAllMusicFolders(); - List selectedItems = getAlbumDao().getAlphabeticalAlbums((int) firstResult, (int) maxResults, false, true, allFolders); - for (Album item : selectedItems) { - addItem(didl, item); - } - - return createBrowseResult(didl, (int) didl.getCount(), getAllItemsSize()); - } public Container createContainer(Album album) throws Exception { MusicAlbum container = new MusicAlbum(); diff --git a/airsonic-main/src/main/java/org/airsonic/player/service/upnp/RecentAlbumUpnpProcessor.java b/airsonic-main/src/main/java/org/airsonic/player/service/upnp/RecentAlbumUpnpProcessor.java index 32023cc6..22707229 100644 --- a/airsonic-main/src/main/java/org/airsonic/player/service/upnp/RecentAlbumUpnpProcessor.java +++ b/airsonic-main/src/main/java/org/airsonic/player/service/upnp/RecentAlbumUpnpProcessor.java @@ -37,6 +37,7 @@ public class RecentAlbumUpnpProcessor extends AlbumUpnpProcessor { setRootTitle("RecentAlbums"); } + @Override public List getAllItems() { List allFolders = getDispatchingContentDirectory().getSettingsService().getAllMusicFolders(); List recentAlbums = getAlbumDao().getNewestAlbums(0, RECENT_COUNT, allFolders); @@ -51,4 +52,11 @@ public class RecentAlbumUpnpProcessor extends AlbumUpnpProcessor { } return recentAlbums; } + + @Override + public int getAllItemsSize() throws Exception { + List allFolders = getDispatchingContentDirectory().getSettingsService().getAllMusicFolders(); + int allAlbumCount = getAlbumDao().getAlbumCount(allFolders); + return Math.min(allAlbumCount, RECENT_COUNT); + } }