X-Git-Url: https://git.kaliko.me/?a=blobdiff_plain;f=sima%2Futils%2Futils.py;h=ff0641057afdb57ce11c57131202f9d6378cbac0;hb=d906b7f06726d9dd34ac9a6873bdf8fe683059d4;hp=d0edcd4ab6f8ca671143df6fbfe8e0e97ac44cc0;hpb=00f3a52f35f709dd4c471cb6ad87dbd09cfd4aaf;p=mpd-sima.git diff --git a/sima/utils/utils.py b/sima/utils/utils.py index d0edcd4..ff06410 100644 --- a/sima/utils/utils.py +++ b/sima/utils/utils.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright (c) 2010, 2011, 2013 Jack Kaliko +# Copyright (c) 2010, 2011, 2013, 2014 Jack Kaliko # # This file is part of sima # @@ -20,6 +20,7 @@ # """generic tools and utilities for sima """ +# pylint: disable=C0111 import traceback import sys @@ -27,7 +28,7 @@ import sys from argparse import ArgumentError, Action from base64 import b64decode as push from codecs import getencoder -from datetime import datetime, timedelta +from datetime import datetime from os import environ, access, getcwd, W_OK, R_OK from os.path import dirname, isabs, join, normpath, exists, isdir, isfile from time import sleep @@ -78,20 +79,9 @@ def exception_log(): log.info('Quiting now!') sys.exit(1) -def purge_cache(obj, age=4): - now = datetime.utcnow() - if now.hour == obj.timestamp.hour: - return - obj.timestamp = datetime.utcnow() - cache = obj.cache - delta = timedelta(hours=age) - for url in list(cache.keys()): - timestamp = cache.get(url).created() - if now - timestamp > delta: - cache.pop(url) - class SigHup(Exception): + """SIGHUP raises this Exception""" pass # ArgParse Callbacks @@ -158,7 +148,8 @@ class Wdir(FileAction): if not access(self._file, W_OK): self.parser.error('no write access to "{0}"'.format(self._file)) -class Throttle(): +class Throttle: + """throttle decorator""" def __init__(self, wait): self.wait = wait self.last_called = datetime.now() @@ -172,20 +163,6 @@ class Throttle(): return result return wrapper -class Cache(): - def __init__(self, elem, last=None): - self.elem = elem - self.requestdate = last - if not last: - self.requestdate = datetime.utcnow() - - def created(self): - return self.requestdate - - def get(self): - return self.elem - - # http client exceptions (for webservices) class WSError(Exception):