]> git.decadent.org.uk Git - dak.git/blobdiff - dak/dak.py
Merged from ftpmaster
[dak.git] / dak / dak.py
index 0eeb9d7b80255ef47281933719f5c5919de9456f..0f2280101858fd672b9c6649952a82201a1cf6ef 100755 (executable)
@@ -53,6 +53,26 @@ class UserExtension:
 
 ################################################################################
 
+class UserExtension:
+    def __init__(self, user_extension = None):
+        if user_extension:
+           m = imp.load_source("dak_userext", user_extension)
+           d = m.__dict__
+        else:
+            m, d = None, {}
+       self.__dict__["_module"] = m
+       self.__dict__["_d"] = d
+
+    def __getattr__(self, a):
+        if a in self.__dict__: return self.__dict__[a]
+        if a[0] == "_": raise AttributeError, a
+        return self._d.get(a, None)
+
+    def __setattr__(self, a, v):
+       self._d[a] = v
+
+################################################################################
+
 def init():
     """Setup the list of modules and brief explanation of what they
     do."""