def reload_module(self, module_path=None):
if module_path is None:<EOL><INDENT>if self.current_module is not None:<EOL><INDENT>module_path = self.current_module.name<EOL><DEDENT>else:<EOL><INDENT>self.logger.warning('<STR_LIT>')<EOL>return False<EOL><DEDENT><DEDENT>if module_path not in self.module:<EOL><INDENT>self.logger.error('<STR_LIT>')<EOL>raise termineter.errors.FrameworkRuntimeError('<STR_LIT>')<EOL><DEDENT>self.logger.info('<STR_LIT>' + module_path)<EOL>module_instance = self.import_module(module_path, reload_module=True)<EOL>if not isinstance(module_instance, termineter.module.TermineterModule):<EOL><INDENT>self.logger.error('<STR_LIT>' + module_path + '<STR_LIT>')<EOL>raise termineter.errors.FrameworkRuntimeError('<STR_LIT>' + module_path + '<STR_LIT>')<EOL><DEDENT>if not hasattr(module_instance, '<STR_LIT>'):<EOL><INDENT>self.logger.error('<STR_LIT>' + module_path + '<STR_LIT>')<EOL>raise termineter.errors.FrameworkRuntimeError('<STR_LIT>' + module_path + '<STR_LIT>')<EOL><DEDENT>if not isinstance(module_instance.options, termineter.options.Options) or not isinstance(module_instance.advanced_options, termineter.options.Options):<EOL><INDENT>self.logger.error('<STR_LIT>' + module_path + '<STR_LIT>')<EOL>raise termineter.errors.FrameworkRuntimeError('<STR_LIT>')<EOL><DEDENT>module_instance.name = module_path.split('<STR_LIT:/>')[-<NUM_LIT:1>]<EOL>module_instance.path = module_path<EOL>self.modules[module_path] = module_instance<EOL>if self.current_module is not None:<EOL><INDENT>if self.current_module.path == module_instance.path:<EOL><INDENT>self.current_module = module_instance<EOL><DEDENT><DEDENT>return True<EOL>
Reloads a module into the framework.  If module_path is not
specified, then the current_module variable is used.  Returns True
on success, False on error.

@type module_path: String
@param module_path: The name of the module to reload