root / pykota / trunk / pykota / logger.py @ 698

Revision 698, 1.4 kB (checked in by jalet, 21 years ago)

Typos

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1# PyKota
2#
3# PyKota : Print Quotas for CUPS
4#
5# (c) 2003 Jerome Alet <alet@librelogiciel.com>
6# You're welcome to redistribute this software under the
7# terms of the GNU General Public Licence version 2.0
8# or, at your option, any higher version.
9#
10# You can read the complete GNU GPL in the file COPYING
11# which should come along with this software, or visit
12# the Free Software Foundation's WEB site http://www.fsf.org
13#
14# $Id$
15#
16# $Log$
17# Revision 1.3  2003/02/05 22:10:29  jalet
18# Typos
19#
20# Revision 1.2  2003/02/05 22:02:22  jalet
21# __import__ statement didn't work as expected
22#
23# Revision 1.1  2003/02/05 21:28:17  jalet
24# Initial import into CVS
25#
26#
27#
28
29import sys
30
31class PyKotaLoggingError(Exception):
32    """An exception for logging related stuff."""
33    def __init__(self, message = ""):
34        self.message = message
35        Exception.__init__(self, message)
36    def __repr__(self):
37        return self.message
38    __str__ = __repr__
39
40def openLogger(config) :
41    """Returns the appropriate logger subsystem object."""
42    backend = config.getLoggingBackend()
43    try :
44        if not backend.isalpha() :
45            # don't trust user input
46            raise ImportError
47        exec "from pykota.loggers import %s as loggingbackend" % backend.lower()   
48    except ImportError :
49        raise PyKotaLoggingError, "Unsupported logging subsystem %s" % backend
50    else :   
51        return getattr(loggingbackend, "Logger")()
Note: See TracBrowser for help on using the browser.