""" Class that contains client access to the job monitoring handler. """ from __future__ import absolute_import from __future__ import division from __future__ import print_function __RCSID__ = "45ddde113 (2021-10-01 11:19:55 +0200) Chris Burr " from DIRAC.Core.Base.Client import Client, createClient from DIRAC.Core.Utilities.DEncode import ignoreEncodeWarning from DIRAC.Core.Utilities.JEncode import strToIntDict from DIRAC.Core.Utilities.Decorators import deprecated @createClient("WorkloadManagement/JobMonitoring") class JobMonitoringClient(Client): def __init__(self, **kwargs): super(JobMonitoringClient, self).__init__(**kwargs) self.setServer("WorkloadManagement/JobMonitoring") @ignoreEncodeWarning def getJobsStatus(self, jobIDs): res = self._getRPC().getJobsStatus(jobIDs) # Cast the str keys to int if res["OK"]: res["Value"] = strToIntDict(res["Value"]) return res @ignoreEncodeWarning def getJobParameters(self, jobIDs, parName=None): res = self._getRPC().getJobParameters(jobIDs, parName) # Cast the str keys to int if res["OK"]: res["Value"] = strToIntDict(res["Value"]) return res @ignoreEncodeWarning def getJobsParameters(self, jobIDs, parameters): res = self._getRPC().getJobsParameters(jobIDs, parameters) # Cast the str keys to int if res["OK"]: res["Value"] = strToIntDict(res["Value"]) return res @ignoreEncodeWarning def getJobsMinorStatus(self, jobIDs): res = self._getRPC().getJobsMinorStatus(jobIDs) # Cast the str keys to int if res["OK"]: res["Value"] = strToIntDict(res["Value"]) return res @ignoreEncodeWarning def getJobsApplicationStatus(self, jobIDs): res = self._getRPC().getJobsApplicationStatus(jobIDs) # Cast the str keys to int if res["OK"]: res["Value"] = strToIntDict(res["Value"]) return res @ignoreEncodeWarning def getJobsSites(self, jobIDs): res = self._getRPC().getJobsSites(jobIDs) # Cast the str keys to int if res["OK"]: res["Value"] = strToIntDict(res["Value"]) return res @ignoreEncodeWarning @deprecated("Use getJobsSummary") def getJobsPrimarySummary(self, jobIDs): res = self._getRPC().getJobsPrimarySummary(jobIDs) # Cast the str keys to int if res["OK"]: res["Value"] = strToIntDict(res["Value"]) return res def getJobsStates(self, jobIDs): res = self._getRPC().getJobsStates(jobIDs) if res["OK"]: res["Value"] = strToIntDict(res["Value"]) return res