X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=PLC%2FMethods%2FUpdateSite.py;h=ea461a0d2f4e2dc8a466e0ed18d033573a33e6d9;hb=bd0cbf4f7f2e4cf7ceda500bfa6f98c0a700018b;hp=9cbeabdd5c01c22a76542f8bc0f329ce8277f3f0;hpb=286cdfc25f6ef8fd3e0ed59a175bcf801b14038a;p=plcapi.git diff --git a/PLC/Methods/UpdateSite.py b/PLC/Methods/UpdateSite.py index 9cbeabdd..ea461a0d 100644 --- a/PLC/Methods/UpdateSite.py +++ b/PLC/Methods/UpdateSite.py @@ -1,4 +1,3 @@ -# $Id# from PLC.Faults import * from PLC.Method import Method from PLC.Parameter import Parameter, Mixed @@ -10,14 +9,14 @@ can_update = lambda (field, value): field in \ ['name', 'abbreviated_name', 'login_base', 'is_public', 'latitude', 'longitude', 'url', 'max_slices', 'max_slivers', 'enabled', 'ext_consortium_id'] + \ - related_fields + related_fields class UpdateSite(Method): """ Updates a site. Only the fields specified in update_fields are updated, all other fields are left untouched. - PIs can only update sites they are a member of. Only admins can + PIs can only update sites they are a member of. Only admins can update max_slices, max_slivers, and login_base. Returns 1 if successful, faults otherwise. @@ -62,19 +61,19 @@ class UpdateSite(Method): if key in site_fields: del site_fields[key] - # Make requested associations - for field in related_fields: - if field in site_fields: - site.associate(auth, field, site_fields[field]) - site_fields.pop(field) - + # Make requested associations + for field in related_fields: + if field in site_fields: + site.associate(auth, field, site_fields[field]) + site_fields.pop(field) + site.update(site_fields) - site.update_last_updated(False) - site.sync() - - # Logging variables - self.event_objects = {'Site': [site['site_id']]} - self.message = 'Site %d updated: %s' % \ - (site['site_id'], ", ".join(site_fields.keys())) - - return 1 + site.update_last_updated(False) + site.sync() + + # Logging variables + self.event_objects = {'Site': [site['site_id']]} + self.message = 'Site %d updated: %s' % \ + (site['site_id'], ", ".join(site_fields.keys())) + + return 1