diff env/lib/python3.7/site-packages/bioblend/config.py @ 0:26e78fe6e8c4 draft

"planemo upload commit c699937486c35866861690329de38ec1a5d9f783"
author shellac
date Sat, 02 May 2020 07:14:21 -0400
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/env/lib/python3.7/site-packages/bioblend/config.py	Sat May 02 07:14:21 2020 -0400
@@ -0,0 +1,64 @@
+import os
+
+from six.moves import configparser
+
+BioBlendConfigPath = '/etc/bioblend.cfg'
+BioBlendConfigLocations = [BioBlendConfigPath]
+UserConfigPath = os.path.join(os.path.expanduser('~'), '.bioblend')
+BioBlendConfigLocations.append(UserConfigPath)
+
+
+class Config(configparser.SafeConfigParser):
+    """
+    BioBlend allows library-wide configuration to be set in external files.
+    These configuration files can be used to specify access keys, for example.
+    By default we use two locations for the BioBlend configurations:
+
+    * System wide: ``/etc/bioblend.cfg``
+    * Individual user: ``~/.bioblend`` (which works on both Windows and Unix)
+    """
+    def __init__(self, path=None, fp=None, do_load=True):
+        configparser.SafeConfigParser.__init__(self, {'working_dir': '/mnt/pyami',
+                                                      'debug': '0'})
+        if do_load:
+            if path:
+                self.load_from_path(path)
+            elif fp:
+                self.readfp(fp)
+            else:
+                self.read(BioBlendConfigLocations)
+
+    def get_value(self, section, name, default=None):
+        return self.get(section, name, default)
+
+    def get(self, section, name, default=None):
+        try:
+            val = configparser.SafeConfigParser.get(self, section, name)
+        except Exception:
+            val = default
+        return val
+
+    def getint(self, section, name, default=0):
+        try:
+            val = configparser.SafeConfigParser.getint(self, section, name)
+        except Exception:
+            val = int(default)
+        return val
+
+    def getfloat(self, section, name, default=0.0):
+        try:
+            val = configparser.SafeConfigParser.getfloat(self, section, name)
+        except Exception:
+            val = float(default)
+        return val
+
+    def getbool(self, section, name, default=False):
+        if self.has_option(section, name):
+            val = self.get(section, name)
+            if val.lower() == 'true':
+                val = True
+            else:
+                val = False
+        else:
+            val = default
+        return val