X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=osm_mon%2Fcore%2Fcommon_db.py;h=8f2f552c6efef80eb429c1f69682e961f0b49f83;hb=628df021896fa8775f9743af62a4267b617cc35c;hp=5fa27eb0573b2186e028a657ef61b9c3c55b89f2;hpb=8c43ba0ce4a3910a350e3e74fe24770f04918f1e;p=osm%2FMON.git diff --git a/osm_mon/core/common_db.py b/osm_mon/core/common_db.py index 5fa27eb..8f2f552 100644 --- a/osm_mon/core/common_db.py +++ b/osm_mon/core/common_db.py @@ -21,12 +21,9 @@ # For those usages not covered by the Apache License, Version 2.0 please # contact: bdiaz@whitestack.com or glavado@whitestack.com ## -from typing import List - from osm_common import dbmongo, dbmemory from osm_mon.core.config import Config -from osm_mon.core.models import Alarm class CommonDbClient: @@ -58,9 +55,20 @@ class CommonDbClient: return vnfrs def get_vnfd(self, vnfd_id: str): - vnfr = self.common_db.get_one("vnfds", + vnfd = self.common_db.get_one("vnfds", {"_id": vnfd_id}) - return vnfr + return vnfd + + def get_vnfd_by_name(self, vnfd_name: str): + # TODO: optimize way of getting single VNFD in shared enviroments (RBAC) + if self.common_db.get_list("vnfds", {"name": vnfd_name}): + vnfd = self.common_db.get_list("vnfds", {"name": vnfd_name})[0] + return vnfd + else: + return None + + def get_nsrs(self): + return self.common_db.get_list('nsrs') def get_nsr(self, nsr_id: str): nsr = self.common_db.get_one("nsrs", @@ -119,15 +127,8 @@ class CommonDbClient: def get_sdnc(self, sdnc_id: str): return self.common_db.get_one('sdns', {'_id': sdnc_id}) - def create_alarm(self, alarm: Alarm): - return self.common_db.create('alarms', alarm.to_dict()) - - def delete_alarm(self, alarm_uuid: str): - return self.common_db.del_one('alarms', {'uuid': alarm_uuid}) + def get_projects(self): + return self.common_db.get_list('projects') - def get_alarms(self) -> List[Alarm]: - alarms = [] - alarm_dicts = self.common_db.get_list('alarms') - for alarm_dict in alarm_dicts: - alarms.append(Alarm.from_dict(alarm_dict)) - return alarms + def get_project(self, project_id: str): + return self.common_db.get_one('projects', {'_id': project_id})