]> kaliko git repositories - mpd-sima.git/blobdiff - sima/mpdclient.py
Revert "Fixed MPD client album search"
[mpd-sima.git] / sima / mpdclient.py
index d13c8cb417e44662e37bed1aef7a3a56db3fb9a1..50b30105c87875202ddb70363411f9cd8d2274de 100644 (file)
@@ -249,8 +249,10 @@ class MPD(MPDClient):
         if isinstance(payload, Track):
             super().__getattr__('add')(payload.file)
         elif isinstance(payload, list):
+            self.command_list_ok_begin()
             for tr in payload:  # TODO: use send command here
                 self.add(tr)
+            results = client.command_list_end()
         else:
             self.log.error('Cannot add %s', payload)
 
@@ -289,14 +291,6 @@ class MPD(MPDClient):
     # ######### / Properties ###################
 
 # #### find_tracks ####
-    def find_album(self, artist, album_name):
-        self.log.warning('update call to find_album→find_tracks(<Album object>)')
-        return self.find_tracks(Album(name=album_name, artist=artist))
-
-    def find_track(self, *args, **kwargs):
-        self.log.warning('update call to find_track→find_tracks')
-        return self.find_tracks(*args, **kwargs)
-
     def find_tracks(self, what):
         """Find tracks for a specific artist or album
             >>> player.find_tracks(Artist('Nirvana'))
@@ -350,12 +344,11 @@ class MPD(MPDClient):
             >>> ['The Beatles', 'Beatles', 'the beatles']
 
         Returns an Artist object
-        TODO: Re-use find method here!!!
         """
         found = False
-        if artist.mbid:
+        if self.use_mbid and artist.mbid:
             # look for exact search w/ musicbrainz_artistid
-            exact_m = self.list('artist', 'musicbrainz_artistid', artist.mbid)
+            exact_m = self.list('artist', f"(MUSICBRAINZ_ARTISTID == '{artist.mbid}')")
             if exact_m:
                 _ = [artist.add_alias(name) for name in exact_m]
                 found = True
@@ -445,7 +438,7 @@ class MPD(MPDClient):
                 if album and album not in albums:
                     albums.append(Album(name=album, **kwalbart))
             for album in self.list('album', 'artist', name):
-                album_trks = [trk for trk in self.find('album', album)]
+                album_trks = self.find_tracks(Album(name=album, artist=Artist(name=name)))
                 if 'Various Artists' in [tr.albumartist for tr in album_trks]:
                     self.log.debug('Discarding %s ("Various Artists" set)', album)
                     continue