pass the context object to report_start_event / report_finish_event
This commit is contained in:
parent
c20264bcd7
commit
246570314a
|
@ -250,17 +250,19 @@ class Subiquity(Application):
|
|||
traceback.print_exc()
|
||||
signal.pause()
|
||||
|
||||
def report_start_event(self, name, description, level="INFO"):
|
||||
def report_start_event(self, context, description):
|
||||
# report_start_event gets called when the Reporting controller
|
||||
# is being loaded...
|
||||
Reporting = getattr(self.controllers, "Reporting", None)
|
||||
if Reporting is not None:
|
||||
Reporting.report_start_event(name, description, level)
|
||||
Reporting.report_start_event(
|
||||
context.full_name(), description, context.level)
|
||||
|
||||
def report_finish_event(self, name, description, status, level="INFO"):
|
||||
def report_finish_event(self, context, description, status):
|
||||
Reporting = getattr(self.controllers, "Reporting", None)
|
||||
if Reporting is not None:
|
||||
Reporting.report_finish_event(name, description, status, level)
|
||||
Reporting.report_finish_event(
|
||||
context.full_name(), description, status, context.level)
|
||||
|
||||
def confirm_install(self):
|
||||
self.install_confirmed = True
|
||||
|
|
|
@ -56,15 +56,15 @@ class Context:
|
|||
self.childlevel = childlevel
|
||||
|
||||
@classmethod
|
||||
def new(self, app):
|
||||
return Context(app, app.project, "", None, "INFO")
|
||||
def new(cls, app):
|
||||
return cls(app, app.project, "", None, "INFO")
|
||||
|
||||
def child(self, name, description="", level=None, childlevel=None):
|
||||
if level is None:
|
||||
level = self.childlevel
|
||||
return Context(self.app, name, description, self, level, childlevel)
|
||||
return type(self)(self.app, name, description, self, level, childlevel)
|
||||
|
||||
def _name(self):
|
||||
def full_name(self):
|
||||
c = self
|
||||
names = []
|
||||
while c is not None:
|
||||
|
@ -75,13 +75,12 @@ class Context:
|
|||
def enter(self, description=None):
|
||||
if description is None:
|
||||
description = self.description
|
||||
self.app.report_start_event(self._name(), description, self.level)
|
||||
self.app.report_start_event(self, description)
|
||||
|
||||
def exit(self, description=None, result=Status.SUCCESS):
|
||||
if description is None:
|
||||
description = self.description
|
||||
self.app.report_finish_event(
|
||||
self._name(), description, result, self.level)
|
||||
self.app.report_finish_event(self, description, result)
|
||||
|
||||
def __enter__(self):
|
||||
self.enter()
|
||||
|
|
|
@ -472,15 +472,14 @@ class Application:
|
|||
self.controllers.index = controller_index - 1
|
||||
self.next_screen()
|
||||
|
||||
def report_start_event(self, name, description, level):
|
||||
# See context.py for what calls these.
|
||||
log = logging.getLogger(name)
|
||||
level = getattr(logging, level)
|
||||
def report_start_event(self, context, description):
|
||||
log = logging.getLogger(context.full_name())
|
||||
level = getattr(logging, context.level)
|
||||
log.log(level, "start: %s", description)
|
||||
|
||||
def report_finish_event(self, name, description, status, level):
|
||||
log = logging.getLogger(name)
|
||||
level = getattr(logging, level)
|
||||
def report_finish_event(self, context, description, status):
|
||||
log = logging.getLogger(context.full_name())
|
||||
level = getattr(logging, context.level)
|
||||
log.log(level, "finish: %s %s", description, status.name)
|
||||
|
||||
# EventLoop -------------------------------------------------------------------
|
||||
|
|
Loading…
Reference in New Issue