diff options
author | Zac Medico <zmedico@gentoo.org> | 2008-07-16 01:09:46 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2008-07-16 01:09:46 +0000 |
commit | bc70c60c1d234de6b88dd0be061a8a152fa47cb7 (patch) | |
tree | 4ed8b3123bd3474ed6c6233ee2b63bf27c85c20f /pym/_emerge/__init__.py | |
parent | 00da064f0810372a440095e1af07d805cb8db4e3 (diff) | |
download | portage-bc70c60c1d234de6b88dd0be061a8a152fa47cb7.tar.gz portage-bc70c60c1d234de6b88dd0be061a8a152fa47cb7.tar.bz2 portage-bc70c60c1d234de6b88dd0be061a8a152fa47cb7.zip |
Adapt the dblink merge display callback to use log levels from the logging
module so that it can be used as an interface for both writemsg() and
writemsg_stdout().
svn path=/main/trunk/; revision=11066
Diffstat (limited to 'pym/_emerge/__init__.py')
-rw-r--r-- | pym/_emerge/__init__.py | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/pym/_emerge/__init__.py b/pym/_emerge/__init__.py index 9046dd265..1aafd64d9 100644 --- a/pym/_emerge/__init__.py +++ b/pym/_emerge/__init__.py @@ -24,6 +24,7 @@ import array from collections import deque import fcntl import fpformat +import logging import select import shlex import shutil @@ -8320,7 +8321,7 @@ class Scheduler(PollScheduler): _fetch_log = "/var/log/emerge-fetch.log" class _iface_class(SlotObject): - __slots__ = ("dblinkEbuildPhase", "dblinkDisplayUnmerge", "fetch", + __slots__ = ("dblinkEbuildPhase", "dblinkDisplayMerge", "fetch", "register", "schedule", "unregister") class _fetch_iface_class(SlotObject): @@ -8385,7 +8386,7 @@ class Scheduler(PollScheduler): schedule=self._schedule_fetch) self._sched_iface = self._iface_class( dblinkEbuildPhase=self._dblink_ebuild_phase, - dblinkDisplayUnmerge=self._dblink_display_unmerge, + dblinkDisplayMerge=self._dblink_display_merge, fetch=fetch_iface, register=self._register, schedule=self._schedule_wait, unregister=self._unregister) @@ -8575,14 +8576,22 @@ class Scheduler(PollScheduler): finally: f.close() - def _dblink_display_unmerge(self, settings, msg, noiselevel=0): + def _dblink_display_merge(self, settings, msg, level=0): log_path = settings.get("PORTAGE_LOG_FILE") background = self._max_jobs > 1 + + if level >= logging.WARNING: + noiselevel = -1 + msg_func = writemsg + else: + noiselevel = 0 + msg_func = portage.writemsg_stdout + if log_path is None: - portage.writemsg_stdout(msg, noiselevel=noiselevel) + msg_func(msg, noiselevel=noiselevel) else: if not background: - portage.writemsg_stdout(msg, noiselevel=noiselevel) + msg_func(msg, noiselevel=noiselevel) self._append_to_log_path(log_path, msg) def _dblink_ebuild_phase(self, |