-def graph_positions(request, project_id=None):
- if request.method == 'POST':
- projects = Project.objects.filter(id=project_id).select_subclasses()
- result = projects[0].edit_graph_positions(json.loads(request.POST.get('positions')))
- status_code = 200 if result else 500
- response = HttpResponse(json.dumps({}), content_type="application/json", status=status_code)
- response["Access-Control-Allow-Origin"] = "*"
- return response
-
-
-@login_required
-def add_element(request, project_id=None):
- if request.method == 'POST':
- projects = Project.objects.filter(id=project_id).select_subclasses()
- result = projects[0].get_add_element(request)
-
- status_code = 200 if result else 500
- response = HttpResponse(json.dumps({}), content_type="application/json", status=status_code)
- response["Access-Control-Allow-Origin"] = "*"
- return response
-
-
-@login_required
-def remove_element(request, project_id=None):
- if request.method == 'POST':
- projects = Project.objects.filter(id=project_id).select_subclasses()
- result = projects[0].get_remove_element(request)
-
- status_code = 200 if result else 500
- response = HttpResponse(json.dumps({}), content_type="application/json", status=status_code)
- response["Access-Control-Allow-Origin"] = "*"
- return response
-
-
-@login_required
-def add_link(request, project_id=None):
- if request.method == 'POST':
- projects = Project.objects.filter(id=project_id).select_subclasses()
- result = projects[0].get_add_link(request)
-
- status_code = 200 if result else 500
- response = HttpResponse(json.dumps({}), content_type="application/json", status=status_code)
- response["Access-Control-Allow-Origin"] = "*"
- return response
-
-
-@login_required
-def remove_link(request, project_id=None):
- if request.method == 'POST':
- projects = Project.objects.filter(id=project_id).select_subclasses()
- result = projects[0].get_remove_link(request)
-
- status_code = 200 if result else 500
- response = HttpResponse(json.dumps({}), content_type="application/json", status=status_code)
- response["Access-Control-Allow-Origin"] = "*"
- return response
-
-@login_required
-def get_available_nodes(request, project_id=None):
- if request.method == 'GET':
- csrf_token_value = get_token(request)
- projects = Project.objects.filter(id=project_id).select_subclasses()
- print "get_available_nodes", request.GET.dict()
- result = projects[0].get_available_nodes(request.GET.dict())
- status_code = 500 if result == None else 200
- print json.dumps(result)
- response = HttpResponse(json.dumps(result), content_type="application/json", status=status_code)
- response["Access-Control-Allow-Origin"] = "*"
- return response
-
-@login_required
-def overviewelement(request, project_id=None):
- if request.method == 'GET':
- result = {}
- error_msg = None
- try:
- projects = Project.objects.filter(id=project_id).select_subclasses()
- project = projects[0]
- parameters = request.GET.dict()
- print "parameters", parameters
- result = project.get_node_overview(**parameters)
- except Exception as e:
- error_msg = str(e)
-
- if error_msg is not None:
- return JsonResponse({'error': {'error_msg': str(error_msg)}})
-
- return JsonResponse({'node_overview': result})
-
-# ETSI specific method #
-@login_required
-def add_node_to_vnffg(request, project_id=None):
- print "add_node_to_vnffg" # TODO log
- if request.method == 'POST':
- projects = Project.objects.filter(id=project_id).select_subclasses()
- result = projects[0].add_node_to_vnffg(request)
-
- status_code = 200 if result else 500
- response = HttpResponse(json.dumps({}), content_type="application/json", status=status_code)
- response["Access-Control-Allow-Origin"] = "*"
- return response
-
-
-@login_required
-def unused_vnf(request, project_id=None, nsd_id=None):
- if request.method == 'GET':
- print 'in method unused_vnf : ', project_id, nsd_id # TODO log
- projects = Project.objects.filter(id=project_id).select_subclasses()
- result = projects[0].get_unused_vnf(nsd_id)
- status_code = 500 if result == None else 200
- response = HttpResponse(json.dumps(result), content_type="application/json", status=status_code)
- response["Access-Control-Allow-Origin"] = "*"
- return response
-
-# end ETSI specific method #
-
-
-# OSM specific method #
-def get_package_files_list(request, project_id, project, descriptor_id, descriptor_type):
- files_list = []