X-Git-Url: http://git.kaliko.me/?a=blobdiff_plain;f=sima%2Fclient.py;h=1d3a0103c54353c4e74a4613fa68cda17489b9be;hb=2eb13c85fe72ade75193b589748920615fbb22d2;hp=8481f5cfa71d3e7fe35b9fecece2238ae24c7c0d;hpb=4f1b17d6b72946b60f79b8c3f5fa5557710b9aac;p=mpd-sima.git diff --git a/sima/client.py b/sima/client.py index 8481f5c..1d3a010 100644 --- a/sima/client.py +++ b/sima/client.py @@ -58,6 +58,8 @@ def blacklist(artist=False, album=False, track=False): field = (artist, album, track) def decorated(func): def wrapper(*args, **kwargs): + if not args[0].database: + return func(*args, **kwargs) cls = args[0] boolgen = (bl for bl in field) bl_fun = (cls.database.get_bl_artist, @@ -96,7 +98,7 @@ class PlayerClient(Player): TODO: handle exception in command not going through _client_wrapper() (ie. remove…) """ - database = None # sima database (history, blaclist) + database = None # sima database (history, blacklist) def __init__(self, host="localhost", port="6600", password=None): super().__init__() @@ -217,7 +219,7 @@ class PlayerClient(Player): # Check against the actual string in artist list if artist.orig in self.artists: self.log.debug('found exact match for "%s"' % artist) - return [artist] + return [artist.orig] # Then proceed with fuzzy matching if got nothing match = get_close_matches(artist.orig, self.artists, 50, 0.73) if not match: @@ -308,7 +310,7 @@ class PlayerClient(Player): self.log.warning('pending commands: {}'.format(self._client._pending)) def remove(self, position=0): - self._client.delete(position) + self.delete(position) def add(self, track): """Overriding MPD's add method to accept add signature with a Track @@ -321,7 +323,7 @@ class PlayerClient(Player): @property def state(self): - return str(self._client.status().get('state')) + return str(self.status().get('state')) @property def current(self):