mirror of
https://github.com/GNS3/gns3-server.git
synced 2026-11-03 05:51:15 +02:00
Expose the capture status in controller link API
This commit is contained in:
6 files changed
+20
-5
No files matched your search
@@ -27,6 +27,7 @@ class Link:
|
||||
self._vms = []
|
||||
self._project = project
|
||||
self._data_link_type = data_link_type
|
||||
self._capturing = False
|
||||
|
||||
@asyncio.coroutine
|
||||
def addVM(self, vm, adapter_number, port_number):
|
||||
@@ -86,6 +87,10 @@ class Link:
|
||||
def id(self):
|
||||
return self._id
|
||||
|
||||
@property
|
||||
def capturing(self):
|
||||
return self._capturing
|
||||
|
||||
def __json__(self):
|
||||
res = []
|
||||
for side in self._vms:
|
||||
@@ -94,4 +99,4 @@ class Link:
|
||||
"adapter_number": side["adapter_number"],
|
||||
"port_number": side["port_number"]
|
||||
})
|
||||
return {"vms": res, "link_id": self._id}
|
||||
return {"vms": res, "link_id": self._id, "capturing": self._capturing}
|
||||
@@ -90,6 +90,7 @@ class UDPLink(Link):
|
||||
"data_link_type": data_link_type
|
||||
}
|
||||
yield from self._capture_vm["vm"].post("/adapters/{adapter_number}/ports/{port_number}/start_capture".format(adapter_number=self._capture_vm["adapter_number"], port_number=self._capture_vm["port_number"]), data=data)
|
||||
self._capturing = True
|
||||
|
||||
@asyncio.coroutine
|
||||
def stop_capture(self):
|
||||
@@ -99,6 +100,7 @@ class UDPLink(Link):
|
||||
if self._capture_vm:
|
||||
yield from self._capture_vm["vm"].post("/adapters/{adapter_number}/ports/{port_number}/stop_capture".format(adapter_number=self._capture_vm["adapter_number"], port_number=self._capture_vm["port_number"]))
|
||||
self._capture_vm = None
|
||||
self._capturing = False
|
||||
|
||||
def _choose_capture_side(self):
|
||||
"""
|
||||
|
||||
Reference in new issue
Block a user