Mercurial > code > home > repos > light9
changeset 1174:a88d5c76d2ff
submaster don't abort subs that have dangling links in them
Ignore-this: b6e1dd023112d07e0d8c89e9265f86c4
author | drewp@bigasterisk.com |
---|---|
date | Sun, 15 Jun 2014 06:19:33 +0000 |
parents | 423941a4b489 |
children | e435649569f3 |
files | light9/Submaster.py |
diffstat | 1 files changed, 9 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/light9/Submaster.py Sun Jun 15 06:18:06 2014 +0000 +++ b/light9/Submaster.py Sun Jun 15 06:19:33 2014 +0000 @@ -168,16 +168,20 @@ log.debug(" lightLevel %s %s", self.uri, lev) chan = self.graph.value(lev, L9['channel']) + val = self.graph.value(lev, L9['level']) + if val is None: + # broken lightLevel link- may be from someone deleting channels + log.warn("sub %r has lightLevel %r with channel %r " + "and level %r" % (self.uri, lev, chan, val)) + continue + log.debug(" new val %r", val) + if val == 0: + continue name = self.graph.label(chan) if not name: log.error("sub %r has channel %r with no name- " "leaving out that channel" % (self.name, chan)) continue - val = self.graph.value(lev, L9['level']) - if val is None: - raise ValueError("sub %r has lightLevel %r with channel %r " - "and level %r" % (self.uri, lev, chan, val)) - log.debug(" new val %r", val) try: self.levels[name] = float(val) except: