# elog/messages.py - elog core functions # Copyright 2006-2007 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Id$ from portage.const import EBUILD_PHASES def filter_loglevels(logentries, loglevels): # remove unwanted entries from all logentries rValue = {} loglevels = [x.upper() for x in loglevels] for phase in logentries: for msgtype, msgcontent in logentries[phase]: if msgtype.upper() in loglevels or "*" in loglevels: if phase not in rValue: rValue[phase] = [] rValue[phase].append((msgtype, msgcontent)) return rValue def filter_phases(logentries, phases): rValue1 = {} rValue2 = {} phases = [x.lower() for x in phases] for phase in logentries: if phase in phases: rValue1[phase] = logentries[phase] else: rValue2[phase] = logentries[phase] return (rValue1, rValue2) def filter_mergephases(logentries): myphases = EBUILD_PHASES[:] myphases.remove("prerm") myphases.remove("postrm") return filter_phases(logentries, myphases) def filter_unmergephases(logentries): return filter_phases(logentries, ["prerm", "postrm", "other"])