Revert "Remove unused methods"
[osm/LCM.git] / osm_lcm / data_utils / nsr.py
1 # -*- coding: utf-8 -*-
2
3 # Copyright 2020 Whitestack, LLC
4 # *************************************************************
5 #
6 # This file is part of OSM Monitoring module
7 # All Rights Reserved to Whitestack, LLC
8 #
9 # Licensed under the Apache License, Version 2.0 (the "License"); you may
10 # not use this file except in compliance with the License. You may obtain
11 # a copy of the License at
12 #
13 # http://www.apache.org/licenses/LICENSE-2.0
14 #
15 # Unless required by applicable law or agreed to in writing, software
16 # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
17 # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
18 # License for the specific language governing permissions and limitations
19 # under the License.
20 #
21 # For those usages not covered by the Apache License, Version 2.0 please
22 # contact: fbravo@whitestack.com
23 ##
24
25 from osm_lcm.data_utils import list_utils
26 from osm_lcm.lcm_utils import get_iterable
27
28
29 def get_vlds(nsr):
30 return nsr.get("vld", ())
31
32
33 def get_deployed_kdu(nsr_deployed, kdu_name, member_vnf_index):
34 deployed_kdu = None
35 index = None
36 for index, deployed_kdu in enumerate(get_iterable(nsr_deployed, "K8s")):
37 if (
38 kdu_name == deployed_kdu["kdu-name"]
39 and deployed_kdu["member-vnf-index"] == member_vnf_index
40 ):
41 break
42 return deployed_kdu, index
43
44
45 def get_nsd(nsr):
46 return nsr.get("nsd", {})
47
48
49 def get_deployed_vca_list(nsr):
50 return nsr.get("_admin", ()).get("deployed", ()).get("VCA", [])
51
52
53 def get_deployed_vca(nsr, filter):
54 return list_utils.find_in_list(
55 get_deployed_vca_list(nsr),
56 lambda vca: all(vca[key] == value for key, value in filter.items()),
57 )