Mercurial > hg > pyloader
comparison pyloader/factory.py @ 15:0bea5297c156
introduce a more betterer test
author | Jeff Hammel <jhammel@mozilla.com> |
---|---|
date | Fri, 27 May 2011 18:56:00 -0700 |
parents | 30979d82c95d |
children | edecb6fbd5a7 |
comparison
equal
deleted
inserted
replaced
14:30979d82c95d | 15:0bea5297c156 |
---|---|
1 """ | 1 """ |
2 abstract factories | 2 abstract factories |
3 """ | 3 """ |
4 | 4 |
5 import loader | 5 import loader |
6 import os | |
7 | |
8 __all__ = ['CircularReferenceError', 'PyFactory', 'IniFactory'] | |
6 | 9 |
7 class CircularReferenceError(Exception): | 10 class CircularReferenceError(Exception): |
8 """factory has detected a circular reference""" | 11 """factory has detected a circular reference""" |
9 | 12 |
10 class PyFactory(object): | 13 class PyFactory(object): |
76 value = value[len(self.delimeters[0]):-len(self.delimeters[1])] | 79 value = value[len(self.delimeters[0]):-len(self.delimeters[1])] |
77 if value in self.config: | 80 if value in self.config: |
78 return self.load(value) | 81 return self.load(value) |
79 return value | 82 return value |
80 | 83 |
84 class IniFactory(PyFactory): | |
85 | |
86 def __init__(self, inifile, main=''): | |
87 assert os.path.exists(inifile), "File not found: %s" % inifile | |
88 | |
89 def read(self): | |
90 """reads configuration from an .ini file""" |