Operation

mod:Operation

Operation implementation

class DIRAC.RequestManagementSystem.Client.Operation.Operation(fromDict=None)

Bases: object

Parameters:
  • OperationID (long) – OperationID as read from DB backend
  • RequestID (long) – parent RequestID
  • Status (str) – execution status
  • Type (str) – operation to perform
  • Arguments (str) – additional arguments
  • SourceSE (str) – source SE name
  • TargetSE (str) – target SE names as comma separated list
  • Catalog (str) – catalog to use as comma separated list
  • Error (str) – error string if any
  • parent (Request.Request) – parent Request instance

It is managed by SQLAlchemy, so the RequestID, OperationID should never be set by hand (except when constructed from JSON of course…) In principle, the _parent attribute could be totally managed by SQLAlchemy. However, it is set only when inserted into the DB, this is why I manually set it in the Request _notify

ALL_STATES = ('Queued', 'Waiting', 'Scheduled', 'Assigned', 'Failed', 'Done', 'Canceled')
ATTRIBUTE_NAMES = ['OperationID', 'RequestID', 'Type', 'Status', 'Arguments', 'Order', 'SourceSE', 'TargetSE', 'Catalog', 'Error', 'CreationTime', 'SubmitTime', 'LastUpdate']
Catalog

catalog prop

CreationTime

operation creation time prop

FINAL_STATES = ('Failed', 'Done', 'Canceled')
LastUpdate

last update prop

MAX_FILES = 10000
Order

order prop

Status

Status prop

SubmitTime

subrequest’s submit time prop

__init__(fromDict=None)

c’tor

Parameters:
  • self – self reference
  • fromDict (dict) – attributes dictionary
addFile(opFile)

add :opFile: to operation

catalogList

helper property returning catalogs as list

fileStatusList()

get list of files statuses

sourceSEList

helper property returning source SEs as a list

targetSEList

helper property returning target SEs as a list

toJSON()

Returns the JSON description string of the Operation