From 1619446ec9839cfa1c666a3790a0c2abc449c4a8 Mon Sep 17 00:00:00 2001 From: appel_c Date: Thu, 1 May 2025 19:48:34 +0200 Subject: [PATCH] refactor(bec-status-box): add get_server_state user_access method to BECStatusBox --- bec_widgets/cli/client.py | 4 ++-- .../widgets/services/bec_status_box/bec_status_box.py | 5 +++++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/bec_widgets/cli/client.py b/bec_widgets/cli/client.py index 64a4e73b..647437a9 100644 --- a/bec_widgets/cli/client.py +++ b/bec_widgets/cli/client.py @@ -491,9 +491,9 @@ class BECStatusBox(RPCBase): """An autonomous widget to display the status of BEC services.""" @rpc_call - def remove(self): + def get_server_state(self) -> "str": """ - Cleanup the BECConnector + Get the state ("RUNNING", "BUSY", "IDLE", "ERROR") of the BEC server """ diff --git a/bec_widgets/widgets/services/bec_status_box/bec_status_box.py b/bec_widgets/widgets/services/bec_status_box/bec_status_box.py index ff21b85f..8b45b1c6 100644 --- a/bec_widgets/widgets/services/bec_status_box/bec_status_box.py +++ b/bec_widgets/widgets/services/bec_status_box/bec_status_box.py @@ -76,6 +76,7 @@ class BECStatusBox(BECWidget, CompactPopupWidget): PLUGIN = True CORE_SERVICES = ["DeviceServer", "ScanServer", "SciHub", "ScanBundler", "FileWriterManager"] + USER_ACCESS = ["get_server_state"] service_update = Signal(BECServiceInfoContainer) bec_core_state = Signal(str) @@ -134,6 +135,10 @@ class BECStatusBox(BECWidget, CompactPopupWidget): "QTreeWidget::item:selected {}" ) + def get_server_state(self) -> str: + """Get the state ("RUNNING", "BUSY", "IDLE", "ERROR") of the BEC server""" + return self.status_container[self.box_name]["info"].status + def _create_status_widget( self, service_name: str, status=BECStatus, info: dict = None, metrics: dict = None ) -> StatusItem: