Reformat LCM to standardized format
[osm/LCM.git] / osm_lcm / data_utils / vnfr.py
index 042788e..7e4d164 100644 (file)
@@ -23,6 +23,7 @@
 ##
 
 from osm_lcm.data_utils import list_utils
+from osm_lcm.lcm_utils import get_iterable
 
 
 def find_VNFR_by_VDU_ID(vnfr, vdu_id):
@@ -31,7 +32,8 @@ def find_VNFR_by_VDU_ID(vnfr, vdu_id):
 
 def get_osm_params(db_vnfr, vdu_id=None, vdu_count_index=0):
     osm_params = {
-        x.replace("-", "_"): db_vnfr[x] for x in ("ip-address", "vim-account-id", "vnfd-id", "vnfd-ref")
+        x.replace("-", "_"): db_vnfr[x]
+        for x in ("ip-address", "vim-account-id", "vnfd-id", "vnfd-ref")
         if db_vnfr.get(x) is not None
     }
     osm_params["ns_id"] = db_vnfr["nsr-id-ref"]
@@ -43,17 +45,27 @@ def get_osm_params(db_vnfr, vdu_id=None, vdu_count_index=0):
             vdu = {
                 "count_index": vdur["count-index"],
                 "vdu_id": vdur["vdu-id-ref"],
-                "interfaces": {}
+                "interfaces": {},
             }
             if vdur.get("ip-address"):
                 vdu["ip_address"] = vdur["ip-address"]
             for iface in vdur["interfaces"]:
-                vdu["interfaces"][iface["name"]] = \
-                    {x.replace("-", "_"): iface[x] for x in ("mac-address", "ip-address", "name")
-                        if iface.get(x) is not None}
+                vdu["interfaces"][iface["name"]] = {
+                    x.replace("-", "_"): iface[x]
+                    for x in ("mac-address", "ip-address", "name")
+                    if iface.get(x) is not None
+                }
             vdu_id_index = "{}-{}".format(vdur["vdu-id-ref"], vdur["count-index"])
             osm_params["vdu"][vdu_id_index] = vdu
         if vdu_id:
             osm_params["vdu_id"] = vdu_id
             osm_params["count_index"] = vdu_count_index
     return osm_params
+
+
+def get_vdur_index(db_vnfr, vdu_delta):
+    vdur_list = get_iterable(db_vnfr, "vdur")
+    if vdur_list:
+        return len([x for x in vdur_list if x.get("vdu-id-ref") == vdu_delta["id"]])
+    else:
+        return 0