From 70e2b1ce43c17a85f6e78891fc7ba0bd0682615e Mon Sep 17 00:00:00 2001 From: Auke Klazema <klazema@astron.nl> Date: Thu, 6 Jun 2019 15:00:31 +0000 Subject: [PATCH] SW-705: Add missing contextmanager code on some of the RPC classes --- LTA/LTAIngest/LTAIngestClient/lib/rpc.py | 13 +++++++++++++ .../TaskManagement/Client/lib/taskmanagement_rpc.py | 13 +++++++++++++ MAC/Services/src/observation_control_rpc.py | 13 +++++++++++++ .../ResourceAssignmentService/rpc.py | 13 +++++++++++++ 4 files changed, 52 insertions(+) diff --git a/LTA/LTAIngest/LTAIngestClient/lib/rpc.py b/LTA/LTAIngest/LTAIngestClient/lib/rpc.py index 30ed8a2a8e3..d9fd669a7a0 100644 --- a/LTA/LTAIngest/LTAIngestClient/lib/rpc.py +++ b/LTA/LTAIngest/LTAIngestClient/lib/rpc.py @@ -11,6 +11,19 @@ class IngestRPC(): def __init__(self, service_name=DEFAULT_INGEST_SERVICENAME, exchange=DEFAULT_BUSNAME, broker=DEFAULT_BROKER): self.rpc = RPC(service_name=service_name, exchange=exchange, broker=broker, timeout=5*60) + def open(self): + self.rpc.open() + + def close(self): + self.rpc.close() + + def __enter__(self): + self.open() + return self + + def __exit__(self, exc_type, exc_val, exc_tb): + self.close() + def removeExportJob(self, export_group_id): return self.rpc.execute('RemoveExportJob', export_group_id=export_group_id) diff --git a/MAC/Services/TaskManagement/Client/lib/taskmanagement_rpc.py b/MAC/Services/TaskManagement/Client/lib/taskmanagement_rpc.py index 0f537210351..cf64a573d7b 100644 --- a/MAC/Services/TaskManagement/Client/lib/taskmanagement_rpc.py +++ b/MAC/Services/TaskManagement/Client/lib/taskmanagement_rpc.py @@ -10,6 +10,19 @@ class TaskManagementRPC(): self.rpc = RPC(exchange=exchange, service_name=DEFAULT_SERVICENAME, broker=broker, timeout=timeout) + def open(self): + self.rpc.open() + + def close(self): + self.rpc.close() + + def __enter__(self): + self.open() + return self + + def __exit__(self, exc_type, exc_val, exc_tb): + self.close() + def abort_task(self, otdb_id): result = self.rpc.execute('AbortTask', otdb_id=otdb_id) return result diff --git a/MAC/Services/src/observation_control_rpc.py b/MAC/Services/src/observation_control_rpc.py index b5551004888..8935cc3ac00 100644 --- a/MAC/Services/src/observation_control_rpc.py +++ b/MAC/Services/src/observation_control_rpc.py @@ -38,5 +38,18 @@ class ObservationControlRPCClient(): timeout=120): self.rpc = RPC(service_name=servicename, exchange=exchange, broker=broker, timeout=timeout) + def open(self): + self.rpc.open() + + def close(self): + self.rpc.close() + + def __enter__(self): + self.open() + return self + + def __exit__(self, exc_type, exc_val, exc_tb): + self.close() + def abort_observation(self, sas_id): return self.rpc.execute('AbortObservation', sas_id=sas_id) diff --git a/SAS/ResourceAssignment/ResourceAssignmentService/rpc.py b/SAS/ResourceAssignment/ResourceAssignmentService/rpc.py index 138f548fbee..8c2759af65b 100644 --- a/SAS/ResourceAssignment/ResourceAssignmentService/rpc.py +++ b/SAS/ResourceAssignment/ResourceAssignmentService/rpc.py @@ -44,6 +44,19 @@ class RARPC(): self.rpc = RPC(service_name=DEFAULT_SERVICENAME, exchange=exchange, broker=broker, timeout=timeout) + def open(self): + self.rpc.open() + + def close(self): + self.rpc.close() + + def __enter__(self): + self.open() + return self + + def __exit__(self, exc_type, exc_val, exc_tb): + self.close() + def getResourceClaimStatuses(self): return self.rpc.execute('GetResourceClaimStatuses') -- GitLab