X-Git-Url: https://git.kaliko.me/?a=blobdiff_plain;f=sima%2Futils%2Futils.py;h=8e07e7ae965e5f7342b5425a3094a46f61730bc3;hb=4ea8f2fe3f29fe09e7a3ab60ac781d54841db5bb;hp=19603ba0da35caa3dbf1b48552d6899855e00a19;hpb=2719d060682e85c9571402a05319acdde3d776e3;p=mpd-sima.git diff --git a/sima/utils/utils.py b/sima/utils/utils.py index 19603ba..8e07e7a 100644 --- a/sima/utils/utils.py +++ b/sima/utils/utils.py @@ -43,7 +43,8 @@ def getws(dic): """ aka = push(bytes(dic.get('apikey') + '=', 'utf-8')) aka = getencoder('rot-13')(str((aka), 'utf-8'))[0] - dic.update({'apikey':aka}) + dic.update({'apikey': aka}) + def get_mpd_environ(): """ @@ -61,6 +62,7 @@ def get_mpd_environ(): passwd = mpd_host_env[1] return (host, environ.get('MPD_PORT', None), passwd) + def normalize_path(path): """Get absolute path """ @@ -68,6 +70,7 @@ def normalize_path(path): return normpath(join(getcwd(), path)) return path + def exception_log(): """Log unknown exceptions""" log = logging.getLogger(__name__) @@ -82,7 +85,7 @@ def exception_log(): class SigHup(Exception): """SIGHUP raises this Exception""" - pass + # ArgParse Callbacks class Obsolete(Action): @@ -92,6 +95,7 @@ class Obsolete(Action): def __call__(self, parser, namespace, values, option_string=None): raise ArgumentError(self, 'obsolete argument') + class FileAction(Action): """Generic class to inherit from for ArgParse action on file/dir """ @@ -106,7 +110,7 @@ class FileAction(Action): def checks(self): """control method """ - pass + class Wfile(FileAction): # pylint: disable=R0903 @@ -126,6 +130,7 @@ class Wfile(FileAction): if not access(self._file, W_OK): self.parser.error('no write access to "{0}"'.format(self._file)) + class Rfile(FileAction): # pylint: disable=R0903 """Is file readable @@ -138,6 +143,7 @@ class Rfile(FileAction): if not access(self._file, R_OK): self.parser.error('no read access to "{0}"'.format(self._file)) + class Wdir(FileAction): # pylint: disable=R0903 """Is directory writable @@ -150,6 +156,7 @@ class Wdir(FileAction): if not access(self._file, W_OK): self.parser.error('no write access to "{0}"'.format(self._file)) + class Throttle: """throttle decorator""" def __init__(self, wait): @@ -165,28 +172,30 @@ class Throttle: return result return wrapper -# http client exceptions (for webservices) -class WSError(Exception): +class MPDSimaException(Exception): + """Generic MPD_sima Exception""" + + +# http client exceptions (for webservices) +class WSError(MPDSimaException): pass + class WSNotFound(WSError): pass + class WSTimeout(WSError): pass + class WSHTTPError(WSError): pass -class MPDSimaException(Exception): - pass class PluginException(MPDSimaException): pass -class PluginConfException(MPDSimaException): - pass - # VIM MODLINE # vim: ai ts=4 sw=4 sts=4 expandtab