Update python2 to python3
[modeling/etsicatalog.git] / genericparser / packages / biz / nsdm_subscription.py
index ba74c70..dfcd2ec 100644 (file)
@@ -73,7 +73,7 @@ class NsdmSubscription:
         query_data = {}
         logger.debug("Start QueryMultiSubscriptions get --> "
                      "Check for filters in query params" % self.params)
-        for query, value in self.params.iteritems():
+        for query, value in list(self.params.items()):
             if query in const.NSDM_NOTIFICATION_FILTERS and value:
                 query_data[query + '__icontains'] = json.dumps(list(set(value)))
         # Query the database with filters if the request
@@ -94,17 +94,18 @@ class NsdmSubscription:
             response = requests.get(self.callback_uri, timeout=2)
             if response.status_code != status.HTTP_204_NO_CONTENT:
                 raise GenericparserException("callbackUri %s returns %s status "
-                                       "code." % (self.callback_uri,
-                                                  response.status_code))
+                                             "code." % (self.callback_uri,
+                                                        response.status_code))
         except Exception:
             raise GenericparserException("callbackUri %s didn't return 204 status"
-                                   "code." % self.callback_uri)
+                                         "code." % self.callback_uri)
 
     def fill_resp_data(self, subscription):
         subscription_filter = dict()
         for filter_type in const.NSDM_NOTIFICATION_FILTERS:
-            subscription_filter[filter_type] = \
-                ast.literal_eval(subscription.__dict__[filter_type])
+            if subscription.__dict__[filter_type]:
+                subscription_filter[filter_type] = \
+                    ast.literal_eval(subscription.__dict__[filter_type])
         resp_data = {
             'id': subscription.subscriptionid,
             'callbackUri': subscription.callback_uri,
@@ -156,20 +157,17 @@ class NsdmSubscription:
             raise NsdmBadRequestException('Auth type should '
                                           'be ' + const.OAUTH2_CLIENT_CREDENTIALS)
         if const.BASIC in self.authentication.get("authType", '') and \
-                "paramsBasic" in self.authentication.keys() and \
-                not is_filter_type_equal(PARAMSBASICKEYS,
-                                         self.authentication.
-                                         get("paramsBasic").keys()):
+                "paramsBasic" in list(self.authentication.keys()) and \
+                not is_filter_type_equal(PARAMSBASICKEYS, list(
+                    self.authentication.get("paramsBasic").keys())):
             raise NsdmBadRequestException('userName and password needed '
                                           'for ' + const.BASIC)
         if const.OAUTH2_CLIENT_CREDENTIALS in \
                 self.authentication.get("authType", '') and \
                 "paramsOauth2ClientCredentials" in \
-                self.authentication.keys() and \
-                not is_filter_type_equal(PARAMSOAUTH2CLIENTCREDENTIALSKEYS,
-                                         self.authentication.
-                                         get("paramsOauth2ClientCredentials")
-                                         .keys()):
+                list(self.authentication.keys()) and \
+                not is_filter_type_equal(PARAMSOAUTH2CLIENTCREDENTIALSKEYS, list(
+                    self.authentication.get("paramsOauth2ClientCredentials").keys())):
             raise NsdmBadRequestException('clientId, clientPassword and '
                                           'tokenEndpoint required '
                                           'for ' + const.OAUTH2_CLIENT_CREDENTIALS)
@@ -203,7 +201,7 @@ class NsdmSubscription:
         links = {
             "self": {
                 "href":
-                const.NSDM_SUBSCRIPTION_ROOT_URI + self.subscription_id
+                    const.NSDM_SUBSCRIPTION_ROOT_URI + self.subscription_id
             }
         }
         subscription_save_db = {
@@ -213,7 +211,8 @@ class NsdmSubscription:
             "links": json.dumps(links)
         }
         for filter_type in const.NSDM_NOTIFICATION_FILTERS:
-            subscription_save_db[filter_type] = json.dumps(
-                list(set(self.filter.get(filter_type, []))))
+            if self.filter:
+                subscription_save_db[filter_type] = json.dumps(
+                    list(set(self.filter.get(filter_type, []))))
         NsdmSubscriptionModel.objects.create(**subscription_save_db)
         logger.debug('Create Subscription[%s] success', self.subscription_id)