Did some work on the reload manager, as well as removed

the rollback importer from server.py
This commit is contained in:
Michael King 2007-09-06 14:58:18 +00:00
parent 5ecbff32f6
commit 02ffa832f6
5 changed files with 93 additions and 31 deletions

View file

@ -21,29 +21,6 @@ import initial_setup
class EvenniaService(service.Service):
class RollbackImporter(object):
def __init__(self):
"Creates an instance and installs as the global importer"
self.previousModules = sys.modules.copy()
self.realImport = __builtin__.__import__
__builtin__.__import__ = self._import
self.newModules = {}
def _import(self, name, globals=None, locals=None, fromlist=[]):
result = apply(self.realImport, (name, globals, locals, fromlist))
self.NewModules[name] = 1
return result
def uninstall(self):
for modname in self.newModules.keys():
if not self.previousModules.has_key(modname):
# Force reload when modname next imported
del(sys.modules[modname])
__builtin__.__import__ = self.realImport
def reloadAll(self):
pass
def __init__(self, filename="blah"):
log.startLogging(open(settings.LOGFILE, 'w'))
self.cmd_alias_list = {}