LiveUploadExternalUploader
trait LiveUploadExternalUploader[Result]Prepares direct browser uploads to an external service.
Scalive does not receive or inspect the uploaded bytes. Browser metadata and completion progress are untrusted, so consume callbacks should verify the external object, including authorization, expected size, media type, and integrity as appropriate, before returning Consume.
Type parameters
Resultthe server-side handle retained for a prepared external upload
Exported from scalive.upload.LiveUploadExternalUploader. View source (scalive/api/src/scalive/upload/LiveUpload.scala:642-659)
Methods2
discard
def discard(result: Result): zio.package.Task[Unit]Releases a prepared result abandoned before application code consumes it.
Override this when preflight reserves a temporary object, multipart upload, or other external resource. It is not called after Consume. The default performs no cleanup.
Exported from scalive.upload.LiveUploadExternalUploader.discard. View source (scalive/api/src/scalive/upload/LiveUpload.scala:657-659)
preflight
def preflight(client: UploadClientMetadata): zio.package.Task[LiveExternalUploadResult[Result]]Authorizes and prepares one entry.
A failed effect is reported as ExternalClientFailure. The supplied
metadata is client-controlled. If preparation reserves a resource but does not return
Ready, it must release that resource itself because Scalive has
no Result to pass to discard.
Exported from scalive.upload.LiveUploadExternalUploader.preflight. View source (scalive/api/src/scalive/upload/LiveUpload.scala:650-650)