summaryrefslogtreecommitdiffstats
path: root/components/pm-subscription-handler/pmsh_service/mod/network_function.py
diff options
context:
space:
mode:
Diffstat (limited to 'components/pm-subscription-handler/pmsh_service/mod/network_function.py')
-rwxr-xr-xcomponents/pm-subscription-handler/pmsh_service/mod/network_function.py18
1 files changed, 12 insertions, 6 deletions
diff --git a/components/pm-subscription-handler/pmsh_service/mod/network_function.py b/components/pm-subscription-handler/pmsh_service/mod/network_function.py
index 64f614af..9f21cc66 100755
--- a/components/pm-subscription-handler/pmsh_service/mod/network_function.py
+++ b/components/pm-subscription-handler/pmsh_service/mod/network_function.py
@@ -15,16 +15,13 @@
#
# SPDX-License-Identifier: Apache-2.0
# ============LICENSE_END=====================================================
-
from mod import pmsh_logging as logger, db
from mod.db_models import NetworkFunctionModel
class NetworkFunction:
def __init__(self, **kwargs):
- """
- Object representation of the NetworkFunction.
- """
+ """ Object representation of the NetworkFunction. """
self.nf_name = kwargs.get('nf_name')
self.orchestration_status = kwargs.get('orchestration_status')
@@ -36,8 +33,7 @@ class NetworkFunction:
return f'nf-name: {self.nf_name}, orchestration-status: {self.orchestration_status}'
def create(self):
- """ Creates a NetworkFunction database entry
- """
+ """ Creates a NetworkFunction database entry """
existing_nf = NetworkFunctionModel.query.filter(
NetworkFunctionModel.nf_name == self.nf_name).one_or_none()
@@ -71,3 +67,13 @@ class NetworkFunction:
list: NetworkFunctionModel objects else empty
"""
return NetworkFunctionModel.query.all()
+
+ @staticmethod
+ def delete(**kwargs):
+ """ Deletes a network function from the database """
+ nf_name = kwargs['nf_name']
+ NetworkFunctionModel.query.filter(
+ NetworkFunctionModel.nf_name == nf_name). \
+ delete(synchronize_session='evaluate')
+
+ db.session.commit()