# HG changeset patch # User Jeff Hammel # Date 1335559153 25200 # Node ID 34c13cde0255c3eaef41054090b9b9a13c963b09 # Parent 19834bc83d13a671dac9bfacdbda11ba85924a57 move towards dict or items system diff -r 19834bc83d13 -r 34c13cde0255 configuration/configuration.py --- a/configuration/configuration.py Tue Apr 17 12:50:29 2012 -0700 +++ b/configuration/configuration.py Fri Apr 27 13:39:13 2012 -0700 @@ -231,6 +231,15 @@ def __init__(self, configuration_providers=configuration_providers, types=types, load=None, dump='--dump', **parser_args): + # sanity check + if isinstance(self.options, dict): + self.option_dict = self.options + elif isinstance(self.options, list): + # XXX could also be tuple, etc + self.option_dict = dict(self.options) + else: + raise NotImplementedError + # setup configuration self.config = {} self.configuration_providers = configuration_providers @@ -270,7 +279,9 @@ def items(self): # TODO: allow options to be a list of 2-tuples - return self.options.items() + if isinstance(self.options, dict): + return self.options.items() + return self.options ### methods for validating configuration