diff options
author | 2021-02-22 11:35:35 +0000 | |
---|---|---|
committer | 2021-06-21 10:21:46 +0100 | |
commit | 1ac9847eb66a074b5413264c788152f7c3ffc28d (patch) | |
tree | d62f7495af22f7db652303f4b34bf9b34905a8a1 /components/pm-subscription-handler/pmsh_service/mod/api | |
parent | ee67930973552a69830c30e6b3b1915091af8ebb (diff) |
[PMSH] Update filter
User can edit/update the nfFilter to include/exclude selected NFs
Changelog and version update
Issue-ID: DCAEGEN2-2531
Signed-off-by: egernug <gerard.nugent@est.tech>
Change-Id: I61388775a711687525b12087e9b533bee1c6b039
Diffstat (limited to 'components/pm-subscription-handler/pmsh_service/mod/api')
-rwxr-xr-x | components/pm-subscription-handler/pmsh_service/mod/api/db_models.py | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/components/pm-subscription-handler/pmsh_service/mod/api/db_models.py b/components/pm-subscription-handler/pmsh_service/mod/api/db_models.py index a9dd6efe..4501282e 100755 --- a/components/pm-subscription-handler/pmsh_service/mod/api/db_models.py +++ b/components/pm-subscription-handler/pmsh_service/mod/api/db_models.py @@ -1,5 +1,5 @@ # ============LICENSE_START=================================================== -# Copyright (C) 2019-2020 Nordix Foundation. +# Copyright (C) 2019-2021 Nordix Foundation. # ============================================================================ # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -16,7 +16,7 @@ # SPDX-License-Identifier: Apache-2.0 # ============LICENSE_END===================================================== -from sqlalchemy import Column, Integer, String, ForeignKey +from sqlalchemy import Column, Integer, String, ForeignKey, JSON from sqlalchemy.orm import relationship from mod import db @@ -26,6 +26,7 @@ class SubscriptionModel(db.Model): __tablename__ = 'subscriptions' id = Column(Integer, primary_key=True, autoincrement=True) subscription_name = Column(String(100), unique=True) + nfFilter = Column(JSON) status = Column(String(20)) nfs = relationship( @@ -33,12 +34,15 @@ class SubscriptionModel(db.Model): cascade='all, delete-orphan', backref='subscription') - def __init__(self, subscription_name, status): + def __init__(self, subscription_name, nfFilter, status): self.subscription_name = subscription_name + self.nfFilter = nfFilter self.status = status def __repr__(self): - return f'subscription_name: {self.subscription_name}, status: {self.status}' + return f'subscription_name: {self.subscription_name}, ' \ + f'nfFilter: {self.nfFilter}, ' \ + f'status: {self.status}' def __eq__(self, other): if isinstance(self, other.__class__): @@ -49,7 +53,9 @@ class SubscriptionModel(db.Model): sub_nfs = NfSubRelationalModel.query.filter( NfSubRelationalModel.subscription_name == self.subscription_name).all() db.session.remove() - return {'subscription_name': self.subscription_name, 'subscription_status': self.status, + return {'subscription_name': self.subscription_name, + 'nfFilter': self.nfFilter, + 'subscription_status': self.status, 'network_functions': [sub_nf.serialize_nf() for sub_nf in sub_nfs]} |