ome / omero-blitz

Gradle project containing Ice remoting code for OMERO
https://www.openmicroscopy.org/omero
GNU General Public License v2.0
0 stars 15 forks source link

filesystem configurability for DuplicateI #106

Open mtbc opened 3 years ago

mtbc commented 3 years ago

The description of #100 suggests that subsequent PRs could include configurability for:

Expanding on that, the focus here is on duplicateUnderlyingFiles. It calls getPath which can tell if a file is in Files/, Pixels/, Thumbnails/, ManagedRepository/, lib/scripts/ (throws) or elsewhere (throws). It also calls duplicateFile which currently decides between hard-linking and copying and could conceivably soft-link. One can imagine extending omero::cmd::Duplicate with extra options that:

For example, one could define enums for FILES, PIXELS, THUMBS, MANAGED and for HARD_LINK, SOFT_LINK, COPY then allow the client to pass a dictionary with the former as keys whose values are lists of the latter, the current default being:

Also allow passing a disk usage limit such that one gets an exception if COPY adds up to more. That too could usefully be a dictionary keyed on file location.

Server configuration could specify constraints in similar terms for admins and normal users.

mtbc commented 3 years ago

To #100 now pushed itemized disk usage reporting to ease any subsequent enforcement of usage limits.

joshmoore commented 3 years ago

When/if we update the Request for configurability, I assume we could also update the Response for returning size information.

mtbc commented 3 years ago

Could be the response could somehow mirror the form in which the desired configuration is supplied.