X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=catalog%2Fpackages%2Fbiz%2Fnsdm_subscription.py;h=a551c2cb9adc8b13c9e5611354b1120f87a786cd;hb=246df561b466d1202a40ece1c133a4bf70ab958f;hp=72eded6a815efaf614b4bacec1271fdbcd08aec9;hpb=c0fcb2e4cde1cd5338412e5ce83115626d068f7b;p=modeling%2Fetsicatalog.git diff --git a/catalog/packages/biz/nsdm_subscription.py b/catalog/packages/biz/nsdm_subscription.py index 72eded6..a551c2c 100644 --- a/catalog/packages/biz/nsdm_subscription.py +++ b/catalog/packages/biz/nsdm_subscription.py @@ -26,6 +26,7 @@ from catalog.pub.database.models import NsdmSubscriptionModel from catalog.pub.exceptions import CatalogException, \ NsdmBadRequestException, NsdmDuplicateSubscriptionException, SubscriptionDoesNotExistsException from catalog.pub.utils.values import ignore_case_get +from catalog.pub.config.config import MSB_BASE_URL logger = logging.getLogger(__name__) @@ -89,7 +90,7 @@ class NsdmSubscription: logger.debug("Create Subscription --> Test Callback URI --" "Sending GET request to %s" % self.callback_uri) try: - response = requests.get(self.callback_uri, timeout=2) + response = requests.get(self.callback_uri, timeout=2, verify=False) if response.status_code != status.HTTP_204_NO_CONTENT: raise CatalogException("callbackUri %s returns %s status " "code." % (self.callback_uri, @@ -185,13 +186,15 @@ class NsdmSubscription: subscriptions = \ NsdmSubscriptionModel.objects.filter( callback_uri=self.callback_uri) - if not subscriptions.exists(): - return + for subscription in subscriptions: if self.check_filter_exists(subscription): - raise NsdmDuplicateSubscriptionException( + links = json.loads(subscription.links) + logger.error( "Subscription has already existed with the " - "same callbackUri and filter") + "same callbackUri and filter:%s" % links) + raise NsdmDuplicateSubscriptionException( + "%s/%s" % (MSB_BASE_URL, links["self"]["href"])) def save_db(self): logger.debug("Create Subscription --> Saving the subscription " @@ -205,7 +208,7 @@ class NsdmSubscription: subscription_save_db = { "subscriptionid": self.subscription_id, "callback_uri": self.callback_uri, - "auth_info": self.authentication, + "auth_info": json.dumps(self.authentication), "links": json.dumps(links) } for filter_type in const.NSDM_NOTIFICATION_FILTERS: