/** * Reload playlist content. <code>refresh</code> has better performance and is more server * friendly, use it whenever possible. * * @see #refresh(int) * @throws MPDServerException if an error occur while contacting server. * @return current playlist version. */ private int refresh() throws MPDServerException { if (firstRefreash) { // TODO should be atomic MPDStatus status = this.mpd.getStatus(); List<String> response = this.mpd.getMpdConnection().sendCommand(MPD_CMD_PLAYLIST_LIST); List<Music> playlist = Music.getMusicFromList(response, false); list.clear(); list.addAll(playlist); lastPlaylistVersion = status.getPlaylistVersion(); firstRefreash = false; } else { this.lastPlaylistVersion = this.refresh(lastPlaylistVersion); } return this.lastPlaylistVersion; }