]> kaliko git repositories - mpd-sima.git/blobdiff - sima/utils/config.py
Add priority to plugins
[mpd-sima.git] / sima / utils / config.py
index 3cd33713951ef0dbefd81a0a4849e37763a61522..d3bcbe293a1c529f10cf7fd3af04ea910cfa6eeb 100644 (file)
@@ -1,5 +1,5 @@
 # -*- coding: utf-8 -*-
-# Copyright (c) 2009, 2010, 2011, 2013, 2014 Jack Kaliko <kaliko@azylum.org>
+# Copyright (c) 2009, 2010, 2011, 2013, 2014, 2015 Jack Kaliko <kaliko@azylum.org>
 #
 #  This file is part of sima
 #
@@ -37,7 +37,7 @@ from . import utils
 
 # DEFAULTS
 DIRNAME = 'mpd_sima'
-CONF_FILE = 'sima.cfg'
+CONF_FILE = 'mpd_sima.cfg'
 
 DEFAULT_CONF = {
         'MPD': {
@@ -50,7 +50,7 @@ DEFAULT_CONF = {
             'contrib': "",
             'user_db': "false",
             'history_duration': 8,
-            'queue_length': 1,
+            'queue_length': 2,
             'var_dir': 'empty',
             'musicbrainzid': "true",
             },
@@ -72,6 +72,7 @@ DEFAULT_CONF = {
             'track_to_add': 1,
             'album_to_add': 1,
             'depth': 1,
+            'priority': 100,
             },
         'lastfm': {
             'queue_mode': "track", #TODO control values
@@ -81,11 +82,13 @@ DEFAULT_CONF = {
             'album_to_add': 1,
             'depth': 1,
             'cache': True,
+            'priority': 100,
             },
-        'randomfallback': {
+        'random': {
             'flavour': "sensible", # in pure, sensible
             'track_to_add': 1,
-            }
+            'priority': 50,
+            },
         }
 #
 
@@ -127,13 +130,19 @@ class ConfMan(object):  # CONFIG MANAGER CLASS
         self.config['sima']['db_file'] = join(self.config['sima']['var_dir'], 'sima.db')
 
     def control_facc(self):
-        """TODO: redundant with startopt cli args controls
+        """Controls file access.
+        This is relevant only for file provided through the configuration file
+        since files provided on the command line are already checked with
+        argparse.
         """
         ok = True
         for op, ftochk in [('log', self.config['log']['logfile']),
                            ('pidfile', self.config['daemon']['pidfile']),]:
             if not ftochk:
                 continue
+            if isdir(ftochk):
+                self.log.critical('Need a file not a directory: "{}"'.format(ftochk))
+                ok = False
             if not exists(ftochk):
                 # Is parent directory writable then
                 filedir = dirname(ftochk)
@@ -142,9 +151,11 @@ class ConfMan(object):  # CONFIG MANAGER CLASS
                     ok = False
             else:
                 if not access(ftochk, W_OK):
-                    self.log.critical('no write access to "{0}" ({1}))'.format(ftochk, op))
+                    self.log.critical('no write access to "{0}" ({1})'.format(ftochk, op))
                     ok = False
         if not ok:
+            if exists(self.conf_file):
+                self.log.warning('Try to check the configuration file: {}'.format(self.conf_file))
             sys.exit(2)
 
     def control_mod(self):