Source code for bioblend.config

import os

from six.moves import configparser

BioBlendConfigPath = '/etc/bioblend.cfg'
BioBlendConfigLocations = [BioBlendConfigPath]
UserConfigPath = os.path.join(os.path.expanduser('~'), '.bioblend')
BioBlendConfigLocations.append(UserConfigPath)


[docs]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)
[docs] def get_value(self, section, name, default=None): return self.get(section, name, default)
[docs] def get(self, section, name, default=None): try: val = configparser.SafeConfigParser.get(self, section, name) except Exception: val = default return val
[docs] def getint(self, section, name, default=0): try: val = configparser.SafeConfigParser.getint(self, section, name) except Exception: val = int(default) return val
[docs] def getfloat(self, section, name, default=0.0): try: val = configparser.SafeConfigParser.getfloat(self, section, name) except Exception: val = float(default) return val
[docs] 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