Support update link on controller

Ref https://github.com/GNS3/gns3-gui/issues/1300
This commit is contained in:
Julien Duponchelle committed 2016-07-01 17:38:32 +02:00
1 parent 71d4c0a13a
commit fea1e3ba61
5 files changed
+179 -12

No files matched your search

@@ -66,11 +66,38 @@ class LinkHandler:
for node in request.json["nodes"]:
yield from link.add_node(project.get_node(node["node_id"]),
node.get("adapter_number", 0),
node.get("port_number", 0))
node.get("port_number", 0),
label=node.get("label"))
yield from link.create()
response.set_status(201)
response.json(link)
@Route.put(
r"/projects/{project_id}/links/{link_id}",
parameters={
"project_id": "Project UUID",
"link_id": "Link UUID"
},
status_codes={
201: "Link updated",
400: "Invalid request"
},
description="Update a link instance",
input=LINK_OBJECT_SCHEMA,
output=LINK_OBJECT_SCHEMA)
def update(request, response):
controller = Controller.instance()
project = controller.get_project(request.match_info["project_id"])
link = project.get_link(request.match_info["link_id"])
for node in request.json["nodes"]:
yield from link.update_node(project.get_node(node["node_id"]),
node.get("adapter_number", 0),
node.get("port_number", 0),
label=node.get("label"))
response.set_status(201)
response.json(link)
@Route.post(
r"/projects/{project_id}/links/{link_id}/start_capture",
parameters={