From 01cf7dbe58da11adfdbbe8e0b76ea89f9ed0ce1a Mon Sep 17 00:00:00 2001 From: Guido Trotter <ultrotter@google.com> Date: Fri, 17 Jul 2009 14:52:31 +0200 Subject: [PATCH] SimpleConfigReader: Handle errors when loading Handling both IOErrors and ValueErrors (thrown by the simplejson loader) Signed-off-by: Guido Trotter <ultrotter@google.com> Reviewed-by: Iustin Pop <iustin@google.com> --- lib/ssconf.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/lib/ssconf.py b/lib/ssconf.py index 8ee84c112..74874f6c5 100644 --- a/lib/ssconf.py +++ b/lib/ssconf.py @@ -52,8 +52,14 @@ class SimpleConfigReader(object): """ self._file_name = file_name - self._config_data = serializer.Load(utils.ReadFile(file_name)) - # TODO: Error handling + try: + self._config_data = serializer.Load(utils.ReadFile(file_name)) + except IOError, err: + raise errors.ConfigurationError("Cannot read config file %s: %s" % + (file_name, err)) + except ValueError, err: + raise errors.ConfigurationError("Cannot load config file %s: %s" % + (file_name, err)) def GetClusterName(self): return self._config_data["cluster"]["cluster_name"] -- GitLab