summaryrefslogtreecommitdiffstats
path: root/bin/repoman
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2007-12-15 21:32:25 +0000
committerZac Medico <zmedico@gentoo.org>2007-12-15 21:32:25 +0000
commitcc6144473a8ee9e926318c5221993d4c4a9f851e (patch)
tree404fee67ea0a9e453823a24e9255086e9b95229b /bin/repoman
parent9b77b3ec5f1cf90e98aef26d2ce8b55afefbbc72 (diff)
downloadportage-cc6144473a8ee9e926318c5221993d4c4a9f851e.tar.gz
portage-cc6144473a8ee9e926318c5221993d4c4a9f851e.tar.bz2
portage-cc6144473a8ee9e926318c5221993d4c4a9f851e.zip
Move the reusable ConsoleStyleFile and StyleWriter classes into
the ouput module. svn path=/main/trunk/; revision=8934
Diffstat (limited to 'bin/repoman')
-rwxr-xr-xbin/repoman53
1 files changed, 1 insertions, 52 deletions
diff --git a/bin/repoman b/bin/repoman
index 9c7fae637..1f80ed435 100755
--- a/bin/repoman
+++ b/bin/repoman
@@ -68,6 +68,7 @@ from portage.process import find_binary, spawn
from portage.util import initialize_logger
from portage.output import bold, create_color_func, darkgreen, \
green, nocolor, red, turquoise, yellow
+from portage.output import ConsoleStyleFile, StyleWriter
initialize_logger()
@@ -425,58 +426,6 @@ def get_commit_message_with_stdin():
commitmessage = "".join(commitmessage)
return commitmessage
-class ConsoleStyleFile(object):
- """
- A file-like object that behaves something like the
- portage.output.colorize() function. Style identifiers
- passed in via the new_styles() method will be used to
- apply console codes to output.
- """
- from portage.output import codes as _codes
- def __init__(self, f):
- self._file = f
- self._styles = None
- self.write_listener = None
-
- def new_styles(self, styles):
- self._styles = styles
-
- def write(self, s):
- if self._styles:
- for style in self._styles:
- self._file.write(self._codes[style])
- self._file.write(s)
- self._file.write(self._codes["reset"])
- else:
- self._file.write(s)
- if self.write_listener:
- self.write_listener.write(s)
-
- def writelines(self, lines):
- for s in lines:
- self.write(s)
-
- def flush(self):
- self._file.flush()
-
- def close(self):
- self._file.close()
-
-class StyleWriter(formatter.DumbWriter):
- """
- This is just a DumbWriter with a hook in the new_styles() method
- that passes a styles tuple as a single argument to a callable
- style_listener attribute.
- """
- def __init__(self, **kwargs):
- formatter.DumbWriter.__init__(self, **kwargs)
- self.style_listener = None
-
- def new_styles(self, styles):
- formatter.DumbWriter.new_styles(self, styles)
- if self.style_listener:
- self.style_listener(styles)
-
def format_qa_output(f, stats, fails, dofull, dofail):
full = options.mode in ("full", "lfull")
for x in qacats: