X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=osm_lcm%2Fdata_utils%2Fnsd.py;fp=osm_lcm%2Fdata_utils%2Fnsd.py;h=9b6fb81fe27dc8872cbbfcfe660f664318d1130b;hb=b4ebcd0dd81e08d7294156c2aca10d84ca9bb824;hp=2917c04be8d911faa218a04340776a6b19a5887b;hpb=5506c1831e40b5a8086ec5037f2b791802526952;p=osm%2FLCM.git diff --git a/osm_lcm/data_utils/nsd.py b/osm_lcm/data_utils/nsd.py index 2917c04..9b6fb81 100644 --- a/osm_lcm/data_utils/nsd.py +++ b/osm_lcm/data_utils/nsd.py @@ -23,11 +23,20 @@ ## import ast +from osm_lcm.data_utils.list_utils import find_in_list + def get_vnf_profiles(nsd): return nsd.get("df")[0].get("vnf-profile", ()) +def get_vnf_profile(nsd, vnf_profile_id): + return find_in_list( + get_vnf_profiles(nsd), + lambda vnf_profile: vnf_profile["id"] == vnf_profile_id, + ) + + def get_virtual_link_profiles(nsd): return nsd.get("df")[0].get("virtual-link-profile", ()) @@ -36,3 +45,11 @@ def replace_vnf_id(nsd, old_vnf_id, new_vnf_id): dict_str = str(nsd) dict_str.replace(old_vnf_id, new_vnf_id) return ast.literal_eval(dict_str) + + +def get_ns_configuration(nsd): + return nsd.get("ns-configuration", {}) + + +def get_ns_configuration_relation_list(nsd): + return get_ns_configuration(nsd).get("relation", [])