Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Relevant Issue: https://sagebionetworks.jira.com/browse/PLFM-4253

StorageLocationSettings are immutable and thus can be cached client side. The information in these will therefore not be repeated in the new implementations of UploadDestination and FileHandle.
The keyPath in ClientDelegatedS3UploadDestination is client generated: baseKey/<<UUID>>.
The key in ClientDelegatedS3FIleHandle, once uploaded will be baseKey/<<UUID>>/fileName.

The Interfaces exist for future comparability in case we need to add other client reliant storage solutions

New API

Because the upload must occur client-side, the client must be responsible for creating the FIleHandle once uploading has completed

ActionURIMethodRequest BodyResponse Body
Creates a ClientDelegatedS3FileHandle. Its storageLocationId must match that of a ClientDelegatedS3StorageLocationSetting/externalFileHandle/clientS3????POSTClientDelegatedS3FileHandleClientDelegatedS3FIleHandle