FTS3Client

class DIRAC.DataManagementSystem.Client.FTS3Client.FTS3Client(url=None, **kwargs)

Bases: DIRAC.Core.Base.Client.Client

Client code to the FTS3 service

__init__(url=None, **kwargs)

Constructor function.

executeRPC(*parms, **kws)

This method extracts some parameters from kwargs that are used as parameter of the constructor or RPCClient. Unfortunately, only a few of all the available parameters of BaseClient are exposed.

Parameters:
  • rpc – if an RPC client is passed, use that one
  • timeout – we can change the timeout on a per call bases. Default 120 s
  • url – We can specify which url to use
getActiveJobs(limit=20, lastMonitor=None, jobAssignmentTag='Assigned', **kwargs)

Get all the FTSJobs that are not in a final state :param limit: max number of jobs to retrieve :return: list of FTS3Jobs

getNonFinishedOperations(limit=20, operationAssignmentTag='Assigned', **kwargs)

Get all the FTS3Operations that have files in New or Failed state (reminder: Failed is NOT terminal for files. Failed is when fts failed, but we

can retry) :param limit: max number of jobs to retrieve
Returns:json list of FTS3Operation
getOperation(operationID, **kwargs)

Get the FTS3Operation from the database :param operationID: id of the operation :return: FTS3Operation object

getOperationsFromRMSOpID(rmsOpID, **kwargs)

Get the FTS3Operations matching a given RMS Operation

Parameters:rmsOpID – id of the operation in the RMS
Returns:list of FTS3Operation objects
getServer()

Getter for the server url. Useful ?

persistOperation(opObj, **kwargs)

Persist (insert/update) an FTS3Operation object into the db

Parameters:opObj – instance of FTS3Operation
setServer(url)

Set the server URL used by default

Parameters:url – url of the service
setTimeout(timeout)

Specify the timeout of the call. Forwarded to RPCClient

Parameters:timeout – guess…
updateFileStatus(fileStatusDict, **kwargs)

Update the file ftsStatus and error :param fileStatusDict : { fileID : { status , error } }

updateJobStatus(jobStatusDict, **kwargs)

Update the job Status and error :param jobStatusDict : { jobID : { status , error } }