Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-04-20 07:58:57

0001 """
0002 Base class to communicate with WMS
0003 
0004 """
0005 
0006 import abc
0007 
0008 from pandaharvester.harvestercore import core_utils
0009 
0010 # logger
0011 _logger = core_utils.setup_logger("communicator")
0012 
0013 
0014 # base class for communication with WMS
0015 class BaseCommunicator(metaclass=abc.ABCMeta):
0016     # constructor
0017     def __init__(self):
0018         pass
0019 
0020     # make logger
0021     def make_logger(self, tag=None, method_name=None):
0022         return core_utils.make_logger(_logger, token=tag, method_name=method_name)
0023 
0024     # get jobs
0025     def get_jobs(self, site_name, node_name, prod_source_label, computing_element, n_jobs, additional_criteria):
0026         return [], ""
0027 
0028     # update jobs
0029     def update_jobs(self, jobspec_list, id):
0030         return [{"StatusCode": 0, "ErrorDiag": "", "command": ""}] * len(jobspec_list)
0031 
0032     # get events
0033     def get_event_ranges(self, data_map, scattered, base_path):
0034         return True, {}
0035 
0036     # update events
0037     def update_event_ranges(self, event_ranges, tmp_log):
0038         retMap = dict()
0039         retMap["StatusCode"] = 0
0040         retMap["Returns"] = [True] * len(event_ranges)
0041         return retMap
0042 
0043     # get commands
0044     def get_commands(self, n_commands):
0045         return []
0046 
0047     # send ACKs
0048     def ack_commands(self, command_ids):
0049         return True
0050 
0051     # update workers
0052     def update_workers(self, workspec_list):
0053         return [True] * len(workspec_list), ""
0054 
0055     # send heartbeat of harvester instance
0056     def is_alive(self, key_values):
0057         return True, ""
0058 
0059     # update worker stats
0060     def update_worker_stats(self, site_name, stats):
0061         return True, ""
0062 
0063     # check jobs
0064     def check_jobs(self, jobspec_list):
0065         return [{"StatusCode": 0, "ErrorDiag": "", "command": ""}] * len(jobspec_list)
0066 
0067     # send dialog messages
0068     def send_dialog_messages(self, dialog_list):
0069         return True, ""
0070 
0071     # update service metrics
0072     def update_service_metrics(self, service_metrics_list):
0073         return True, ""
0074 
0075     # force credential renewal
0076     def force_credential_renewal(self):
0077         return True