zero: remove redundant list of dict's keys

This commit is contained in:
Adrian Sampson 2013-01-31 12:15:18 -08:00
parent 58d9a775cc
commit e6ea6dc875

View file

@ -42,7 +42,6 @@ class ZeroPlugin(BeetsPlugin):
'fields': [], 'fields': [],
}) })
self.fields = []
self.patterns = {} self.patterns = {}
self.warned = False self.warned = False
@ -50,7 +49,6 @@ class ZeroPlugin(BeetsPlugin):
if f not in ITEM_KEYS: if f not in ITEM_KEYS:
self._log.error(u'[zero] invalid field: {0}'.format(f)) self._log.error(u'[zero] invalid field: {0}'.format(f))
else: else:
self.fields.append(f)
try: try:
self.patterns[f] = self.config[f].as_str_seq() self.patterns[f] = self.config[f].as_str_seq()
except confit.NotFoundError: except confit.NotFoundError:
@ -75,22 +73,22 @@ class ZeroPlugin(BeetsPlugin):
def write_event(self, item): def write_event(self, item):
"""Listen for write event.""" """Listen for write event."""
if not self.fields: if not self.patterns:
self._log.warn(u'[zero] no fields, nothing to do') self._log.warn(u'[zero] no fields, nothing to do')
return return
for fn in self.fields: for fn, patterns in self.patterns.items():
try: try:
fval = getattr(item, fn) fval = getattr(item, fn)
except AttributeError: except AttributeError:
self._log.error(u'[zero] no such field: {0}'.format(fn)) self._log.error(u'[zero] no such field: {0}'.format(fn))
else: else:
if not self.match_patterns(fval, self.patterns[fn]): if not self.match_patterns(fval, patterns):
self._log.debug(u'[zero] \"{0}\" ({1}) not match: {2}' self._log.debug(u'[zero] \"{0}\" ({1}) not match: {2}'
.format(fval, fn, .format(fval, fn,
' '.join(self.patterns[fn]))) ' '.join(patterns)))
continue continue
self._log.debug(u'[zero] \"{0}\" ({1}) match: {2}' self._log.debug(u'[zero] \"{0}\" ({1}) match: {2}'
.format(fval, fn, ' '.join(self.patterns[fn]))) .format(fval, fn, ' '.join(patterns)))
setattr(item, fn, type(fval)()) setattr(item, fn, type(fval)())
self._log.debug(u'[zero] {0}={1}' self._log.debug(u'[zero] {0}={1}'
.format(fn, getattr(item, fn))) .format(fn, getattr(item, fn)))