|
|
|
@ -28,15 +28,18 @@ def find(name):
|
|
|
|
|
try:
|
|
|
|
|
return _cache[name]
|
|
|
|
|
except KeyError:
|
|
|
|
|
klass = None
|
|
|
|
|
pass
|
|
|
|
|
|
|
|
|
|
klass = None
|
|
|
|
|
if name in modules: # prevent unwanted imports
|
|
|
|
|
try:
|
|
|
|
|
if name in modules: # prevent unwanted imports
|
|
|
|
|
module = importlib.import_module("." + name, __package__)
|
|
|
|
|
klass = module.__postprocessor__
|
|
|
|
|
except (ImportError, AttributeError, TypeError):
|
|
|
|
|
module = importlib.import_module("." + name, __package__)
|
|
|
|
|
except ImportError:
|
|
|
|
|
pass
|
|
|
|
|
_cache[name] = klass
|
|
|
|
|
return klass
|
|
|
|
|
else:
|
|
|
|
|
klass = module.__postprocessor__
|
|
|
|
|
_cache[name] = klass
|
|
|
|
|
return klass
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# --------------------------------------------------------------------
|
|
|
|
|