- try:
- lccn_subscription_request_serializer = LccnSubscriptionRequestSerializer(
- data=request.data)
- if not lccn_subscription_request_serializer.is_valid():
- raise BadRequestException(
- lccn_subscription_request_serializer.errors)
- subscription = CreateSubscription(
- lccn_subscription_request_serializer.data).do_biz()
- lccn_notifications_filter = {
- "notificationTypes": ast.literal_eval(subscription.notification_types),
- "operationTypes": ast.literal_eval(subscription.operation_types),
- "operationStates": ast.literal_eval(subscription.operation_states),
- "nsInstanceSubscriptionFilter": json.loads(subscription.ns_instance_filter),
- "nsComponentTypes": ast.literal_eval(subscription.ns_component_types),
- "lcmOpNameImpactingNsComponent": ast.literal_eval(subscription.
- lcm_opname_impacting_nscomponent),
- "lcmOpOccStatusImpactingNsComponent": ast.literal_eval(subscription.
- lcm_opoccstatus_impacting_nscomponent)
- }
- subscription_data = {
- "id": subscription.subscription_id,
- "callbackUri": subscription.callback_uri,
- "_links": json.loads(subscription.links),
- "filter": lccn_notifications_filter
- }
- sub_resp_serializer = LccnSubscriptionSerializer(
- data=subscription_data)
- if not sub_resp_serializer.is_valid():
- raise NSLCMException(sub_resp_serializer.errors)
- return Response(data=sub_resp_serializer.data, status=status.HTTP_201_CREATED)
- except BadRequestException as e:
- logger.error("Exception in InstantiateNsView: %s", e.message)
- data = {'status': status.HTTP_400_BAD_REQUEST, 'detail': e.message}
- return Response(data=data, status=status.HTTP_400_BAD_REQUEST)
- except NSLCMException as e:
- logger.error(e.message)
- if "exists" in e.message:
- data = {'status': status.HTTP_303_SEE_OTHER, 'detail': e.message}
- return Response(data=data, status=status.HTTP_303_SEE_OTHER)
- data = {'status': status.HTTP_500_INTERNAL_SERVER_ERROR, 'detail': e.message}
- return Response(data=data, status=status.HTTP_500_INTERNAL_SERVER_ERROR)
- except Exception as e:
- logger.error(e.message)
- logger.error(traceback.format_exc())
- data = {'status': status.HTTP_500_INTERNAL_SERVER_ERROR, 'detail': e.message}
- return Response(data=data, status=status.HTTP_500_INTERNAL_SERVER_ERROR)
+
+ lccn_subscription_request_serializer = LccnSubscriptionRequestSerializer(
+ data=request.data)
+ if not lccn_subscription_request_serializer.is_valid():
+ raise BadRequestException(
+ lccn_subscription_request_serializer.errors)
+ subscription = CreateSubscription(
+ lccn_subscription_request_serializer.data).do_biz()
+ lccn_notifications_filter = {
+ "notificationTypes": ast.literal_eval(subscription.notification_types),
+ "operationTypes": ast.literal_eval(subscription.operation_types),
+ "operationStates": ast.literal_eval(subscription.operation_states),
+ "nsInstanceSubscriptionFilter": json.loads(subscription.ns_instance_filter),
+ "nsComponentTypes": ast.literal_eval(subscription.ns_component_types),
+ "lcmOpNameImpactingNsComponent": ast.literal_eval(subscription.
+ lcm_opname_impacting_nscomponent),
+ "lcmOpOccStatusImpactingNsComponent": ast.literal_eval(subscription.
+ lcm_opoccstatus_impacting_nscomponent)
+ }
+ subscription_data = {
+ "id": subscription.subscription_id,
+ "callbackUri": subscription.callback_uri,
+ "_links": json.loads(subscription.links),
+ "filter": lccn_notifications_filter
+ }
+ sub_resp_serializer = LccnSubscriptionSerializer(
+ data=subscription_data)
+ if not sub_resp_serializer.is_valid():
+ raise NSLCMException(sub_resp_serializer.errors)
+ return Response(data=sub_resp_serializer.data, status=status.HTTP_201_CREATED)