fix bug in connectRegistries:
authorTony Mack <tmack@cs.princeton.edu>
Thu, 26 Mar 2009 23:49:24 +0000 (23:49 +0000)
committerTony Mack <tmack@cs.princeton.edu>
Thu, 26 Mar 2009 23:49:24 +0000 (23:49 +0000)
geni/registry.py

index eb7e599..bcd1e8d 100644 (file)
@@ -194,15 +194,18 @@ class Registry(GeniServer):
         create an GeniClient connection to each. 
         """
         self.registries= {}
+        required_fields = ['hrn', 'addr', 'port']
         registries = self.registry_info['registries']['registry']
         if isinstance(registries, dict):
             registries = [registries]
         if isinstance(registries, list):
             for registry in registries:
                 # create xmlrpc connection using GeniClient
+                if not set(required_fields).issubset(registry.keys()):
+                    continue  
+                hrn, address, port = registry['hrn'], registry['addr'], registry['port']
                 if not hrn or not address or not port:
                     continue
-                hrn, address, port = registry['hrn'], registry['addr'], registry['port']
                 url = 'http://%(address)s:%(port)s' % locals()
                 self.registries[hrn] = GeniClient(url, self.key_file, self.cert_file)