# 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:
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",
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})