Skip to content
axlbonnet edited this page Jul 28, 2023 · 5 revisions

GRIDA documentation

Clients

Using GridaClient

This does synchronous stuff the command described bellow

This does not use pools and it does not do disk size verification.

Using GridaPoolClient

All operations (download/upload/replicate/delete) are asynchronous and are handled into dedicated pools. They are all identified by an operationId to monitor them.

## Technical implementations

All the commands are handled in the Executor class.

Caching

TODO

GetRemoteFile commmand

  • Checks CacheBusiness.
  • If absent or outdated, checks if dest file already exists
  • If absent or ouddated, download with dget

NO POOLING

NO DISK SIZE CHECK

GetRemoteFolder command

  • recursive
  • download each file with dget (except if dest file already exists and is not outdated)
  • option to zip the folder (the folder is then deleted)

NO CACHE

NO POOLING

NO DISK SIZE CHECK

UploadFile Command

  • using dput
  • using SE configured in grida conf file (try in order in order, stop when 1 is ok)
  • delete local file
  • if SEs were given on the command, do a drepl on each one
  • otherwise, add a Replicate operation in a pool (asynchronous)

NO POOLING

Delete Command

  • do a dirac-dms-clean-directory if it is a directory
  • do a dirac-dms-remove-files if it is a file

NO POOLING

Clone this wiki locally