blob: d4d405347d9eaa2c5db72729a69ffdab6aaff44f [file] [log] [blame]
# 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"])