X-Git-Url: https://osm.etsi.org/gitweb/?p=osm%2FRO.git;a=blobdiff_plain;f=RO-VIM-openvim%2Fosm_rovim_openvim%2Fvimconn_openvim.py;fp=RO-VIM-openvim%2Fosm_rovim_openvim%2Fvimconn_openvim.py;h=86ee02fad5b37953c237d42606d3586d689acb1d;hp=c89a3037abdf599bb6c789e5a22336bb6d65805e;hb=72e918cb69191ac04720444bbf4906680059d60c;hpb=1b8560079e444a0c98ad2083fa66615c4b6a20fd diff --git a/RO-VIM-openvim/osm_rovim_openvim/vimconn_openvim.py b/RO-VIM-openvim/osm_rovim_openvim/vimconn_openvim.py index c89a3037..86ee02fa 100644 --- a/RO-VIM-openvim/osm_rovim_openvim/vimconn_openvim.py +++ b/RO-VIM-openvim/osm_rovim_openvim/vimconn_openvim.py @@ -323,6 +323,7 @@ get_processor_rankings_response_schema = { } } + class vimconnector(vimconn.vimconnector): def __init__(self, uuid, name, tenant_id, tenant_name, url, url_admin=None, user=None, passwd=None, log_level="DEBUG", config={}, persistent_info={}): @@ -391,13 +392,16 @@ class vimconnector(vimconn.vimconnector): a= self._remove_extra_items(d, schema['items']) if a is not None: deleted.append(a) elif type(data) is dict: + to_delete = [] for k in data.keys(): if 'properties' not in schema or k not in schema['properties'].keys(): - del data[k] + to_delete.append(k) deleted.append(k) else: a = self._remove_extra_items(data[k], schema['properties'][k]) if a is not None: deleted.append({k:a}) + for k in to_delete: + del data[k] if len(deleted) == 0: return None elif len(deleted) == 1: return deleted[0] else: return deleted