Update of /cvsroot/pybot/pybot/pybot
In directory usw-pr-cvs1:/tmp/cvs-serv24657/pybot
Modified Files:
module.py
Log Message:
- Added help in messages module.
- Added handling of load levels, allowing one to control module
loading order at startup.
- Reduced load level of help module.
Index: module.py
===================================================================
RCS file: /cvsroot/pybot/pybot/pybot/module.py,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -C2 -d -r1.1.1.1 -r1.2
*** module.py 2001/11/02 17:20:19 1.1.1.1
--- module.py 2001/11/14 15:28:41 1.2
***************
*** 27,30 ****
--- 27,66 ----
return self.__modules.has_key(name)
+ def loadlist(self, names):
+ """Load list of given modules considering level attribute."""
+ modulelist = []
+ for name in names:
+ try:
+ module = __import__("pybot.modules."+name)
+ module = getattr(module, "modules")
+ module = getattr(module, name)
+ reload(module)
+ func = getattr(module, "__loadmodule__")
+ try:
+ level = getattr(module, "__loadlevel__")
+ except AttributeError:
+ level = 100
+ l = len(modulelist)
+ i = 0
+ while i < l:
+ if modulelist[i][-1] > level:
+ modulelist.insert(i, (name, module, func, level))
+ break
+ i = i + 1
+ else:
+ modulelist.append((name, module, func, level))
+ except (AttributeError, ImportError):
+ traceback.print_exc()
+ ret = []
+ for name, module, func, level in modulelist:
+ try:
+ func(self)
+ except:
+ traceback.print_exc()
+ else:
+ self.__modules[name] = module
+ ret.append(name)
+ return ret
+
def load(self, name):
try:
|