Source

vpackager / src / vpackager / preferences.py

#!/usr/bin/env python

#    This file is part of vpackager.
#
#    vpackager is free software: you can redistribute it and/or modify
#    it under the terms of the GNU General Public License v3 as published by
#    the Free Software Foundation.
#
#    vpackager is distributed in the hope that it will be useful,
#    but WITHOUT ANY WARRANTY; without even the implied warranty of
#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#    GNU General Public License for more details.
#
#    You should have received a copy of the GNU General Public License
#    along with vpackager.  If not, see <http://www.gnu.org/licenses/>.

# Settings reading / writing module for vpackager

import ConfigParser

__author__ = 'M0E-lnx'
__author_email__ = 'moc.liamg@xnl.E0M'[::-1]
__version__ = '0.1'

dotcfg = '/etc/vpackager.cfg'


class VPConf(ConfigParser.SafeConfigParser):
    """ vpackager configuration class """
    def __init__(self):
        ConfigParser.SafeConfigParser.__init__(self)

    def SaveConfig(self):
        with open(dotcfg, 'wb') as configfile:
            self.write(configfile)
        return

    def WriteDefaultConfig(self):
        self.add_section('vpackager')
        self.set('vpackager', 'packager_name', 'vpackager')
        self.set('vpackager', 'sources_home', '/tmp/vpackager')
        self.set('vpackager', 'database_home', '/tmp')
        return self.SaveConfig()

    def GetSetting(self, key):
        self.read(dotcfg)
        return self.get('vpackager', key)

    def SetSetting(self, key, value):
        self.read(dotcfg)
        self.set('vpackager', key, value)
        return self.SaveConfig()
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.