From aad76695727f22ca6d325245ceb2ff3d1587950b Mon Sep 17 00:00:00 2001 From: Martin Sivak Date: Mon, 11 Feb 2008 15:42:20 +0100 Subject: Add conflict flags to plugin definition Add "activity" flags, so our "Tracker plugins logic" can work --- pyfirstaidkit/interpret.py | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) (limited to 'pyfirstaidkit/interpret.py') diff --git a/pyfirstaidkit/interpret.py b/pyfirstaidkit/interpret.py index ea1545e..08128ad 100644 --- a/pyfirstaidkit/interpret.py +++ b/pyfirstaidkit/interpret.py @@ -28,10 +28,23 @@ class RunDependencies(object): def __init__(self): self._provide = set() - def provide(self, id): + def provide(self, id, setactionflag = True): """Add flag""" Logger.info("Setting dependency flag %s", id) self._provide.add(id) + if setactionflag: self._provide.add(id+"?") #Action flags denote activity happening on some regular flag + + def unprovide(self, id, setactionflag = True): + """Remove flag""" + Logger.info("Resetting dependency flag %s", id) + try: + self._provide.remove(id) + except KeyError: #not there + pass + if setactionflag: self._provide.add(id+"?") + + donotprovide = unprovide #alias + failed = #alias def require(self, id): """Return True if flag is present, otherwise false""" -- cgit