# HG changeset patch # User Ralph Meijer # Date 1213086537 0 # Node ID 00a6dbfbee42f75276947f05cfa64bd76887e0b4 # Parent e289636ccc4f9e3690879aaf7b9bb5f2674c3fc8 Return deferreds on failure, instead of raising exceptions. diff -r e289636ccc4f -r 00a6dbfbee42 idavoll/backend.py --- a/idavoll/backend.py Thu Jun 18 11:54:52 2009 +0000 +++ b/idavoll/backend.py Tue Jun 10 08:28:57 2008 +0000 @@ -248,7 +248,7 @@ def get_node_configuration(self, node_id): if not node_id: - raise error.NoRootNode() + return defer.fail(error.NoRootNode()) d = self.storage.get_node(node_id) d.addCallback(lambda node: node.get_configuration()) @@ -269,16 +269,16 @@ def set_node_configuration(self, node_id, options, requestor): if not node_id: - raise error.NoRootNode() + return defer.fail(error.NoRootNode()) for key, value in options.iteritems(): if not self.options.has_key(key): - raise error.InvalidConfigurationOption() + return defer.fail(error.InvalidConfigurationOption()) if self.options[key]["type"] == 'boolean': try: options[key] = bool(int(value)) except ValueError: - raise error.InvalidConfigurationValue() + return defer.fail(error.InvalidConfigurationValue()) d = self.storage.get_node(node_id) d.addCallback(_get_affiliation, requestor)