X-Git-Url: https://git.kaliko.me/?a=blobdiff_plain;f=sima%2Flib%2Fmeta.py;h=949b5562a791385c534babb097f0e1430d256e3a;hb=a6a2ea116e050cd0f1c3f81a392878bcd22a5960;hp=4e481e64ab4bfd5349569ae61e70fe36dc15060b;hpb=78a694ddcd2a6ecc8b2b1fd3c74ee2d938707305;p=mpd-sima.git diff --git a/sima/lib/meta.py b/sima/lib/meta.py index 4e481e6..949b556 100644 --- a/sima/lib/meta.py +++ b/sima/lib/meta.py @@ -22,7 +22,6 @@ Defines some object to handle audio file metadata """ from .simastr import SimaStr -from .track import Track class MetaException(Exception): """Generic Meta Exception""" @@ -65,6 +64,8 @@ class Meta: else: return id(self) + def __bool__(self): # empty name not possible for a valid obj + return bool(self.name) class Album(Meta): __hash__ = Meta.__hash__ @@ -90,15 +91,15 @@ class Album(Meta): class Artist(Meta): def __init__(self, **kwargs): - self._aliases = [] + self._aliases = set() super().__init__(**kwargs) def append(self, name): - self._aliases.append(name) + self._aliases.update({name,}) @property def names(self): - return self._aliases + [self.name] + return self._aliases | {self.name,} def __add__(self, other): if isinstance(other, Artist): @@ -109,14 +110,4 @@ class Artist(Meta): else: raise NotSameArtist('different mbids: {0} and {1}'.format(self, other)) - -class TrackMB(Track): - - def __init__(self, **kwargs): - super().__init__(**kwargs) - if hasattr(self, 'musicbrainz_artistid'): - self.artist = Artist(mbid=self.musicbrainz_artistid, - name=self.artist) - # vim: ai ts=4 sw=4 sts=4 expandtab -