summaryrefslogtreecommitdiffstats
path: root/scripts
diff options
context:
space:
mode:
authorDan Klein <danklein10@gmail.com>2015-11-03 11:27:48 +0200
committerDan Klein <danklein10@gmail.com>2015-11-03 11:27:48 +0200
commit597f74d8ed10abc3dd9df7e81ecea5ac2f5c714e (patch)
treee44a5e9c8deba9dd1cab8148197a087f689ce490 /scripts
parentc5078068c4659f5445d9c684c67b55ee2c7e10d6 (diff)
updated sync_client
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/automation/trex_control_plane/client/trex_stateless_client.py18
1 files changed, 15 insertions, 3 deletions
diff --git a/scripts/automation/trex_control_plane/client/trex_stateless_client.py b/scripts/automation/trex_control_plane/client/trex_stateless_client.py
index 6b1b7b94..aeb25422 100755
--- a/scripts/automation/trex_control_plane/client/trex_stateless_client.py
+++ b/scripts/automation/trex_control_plane/client/trex_stateless_client.py
@@ -136,9 +136,8 @@ class CTRexStatelessClient(object):
else:
return port_ids
- def sync_user(self):
- return self.transmit("sync_user")
-
+ def sync_user(self, sync_streams=False):
+ return self.transmit("sync_user", {"user": self.user, "sync_streams": sync_streams})
def get_acquired_ports(self):
return self._conn_handler.keys()
@@ -363,8 +362,21 @@ class CTRexStatelessClient(object):
if self.server_version == "Unknown" or self.system_info == "Unknown":
self.disconnect()
return False, self.__err_log
+ # sync with previous session
+ res_ok, port_info = self.sync_user()
+ if not res_ok:
+ self.disconnect()
+ return False, port_info
+ else:
+ # handle sync data
+ for port in port_info:
+ self._conn_handler[port.get("port_id")] = port.get("handler")
+ if port.get("state") == "transmitting":
+ # port is active
+ self._active_ports.add(port.get("port_id"))
return True, ""
+
def transmit(self, method_name, params={}):
return self.comm_link.transmit(method_name, params)