X-Git-Url: https://git.kaliko.me/?a=blobdiff_plain;f=sima%2Fplugins%2Finternal%2Fechonest.py;h=1c0b1f791a974ff1427d2938bbcd084d89696b2d;hb=df9f0f9dae0f8712f672b4eb7f4211e62f6c2e21;hp=7d4c0e041384a55d1c5097f3bde671adeb323008;hpb=24993cd99b847733894f57fd004ed52b5390244a;p=mpd-sima.git diff --git a/sima/plugins/internal/echonest.py b/sima/plugins/internal/echonest.py index 7d4c0e0..1c0b1f7 100644 --- a/sima/plugins/internal/echonest.py +++ b/sima/plugins/internal/echonest.py @@ -22,12 +22,14 @@ Fetching similar artists from echonest web services """ # standard library import +from os.path import join # third parties components # local import from ...lib.simaecho import SimaEch from ...lib.webserv import WebService +from ...lib.cache import FileCache class EchoNest(WebService): @@ -36,7 +38,17 @@ class EchoNest(WebService): def __init__(self, daemon): WebService.__init__(self, daemon) + # Set persitent cache + vardir = daemon.config['sima']['var_dir'] + SimaEch.cache = FileCache(join(vardir, 'http')) self.ws = SimaEch + def callback_playlist(self): + if self.player.state != 'play': + return + msg = 'ETag:{etag:>3d}, Cache-Control:{ccontrol:>3d},' + msg += 'total:{total:>3d}, min(rate-limit):{minrl:>3d}' + self.log.debug(msg.format(**SimaEch.stats)) + # VIM MODLINE # vim: ai ts=4 sw=4 sts=4 expandtab