ExStorageServiceSdk.S3.UploadChecksum (ex_storage_service_sdk v0.7.1)

Copy Markdown View Source

Serializable upload checksum contracts, locally retained part digests, and typed multipart completion.

Summary

Functions

Rejects a provider's conflicting algorithm or checksum type without losing local selection.

Returns modeled completion fields and separately the expected provider checksum response.

Retains a selected server-copy digest without downloading or claiming to hash the source bytes.

Builds initiation fields without incorrectly placing an object checksum on CreateMultipartUpload.

Verifies single-PUT bytes, any explicit caller checksum, and provider-returned checksums.

Hashes bounded Source chunks once for selected and returned algorithms, retaining local checksums even when absent remotely.

Selects a JSON-safe checksum contract; multipart CRC64NVME defaults to FULL_OBJECT.

Validates every expected digest that is returned; absence never claims verification.

Functions

acknowledge(contract, response)

Rejects a provider's conflicting algorithm or checksum type without losing local selection.

completion(contract, parts)

Returns modeled completion fields and separately the expected provider checksum response.

copied_part(contract, response)

Retains a selected server-copy digest without downloading or claiming to hash the source bytes.

initiation(contract, input)

Builds initiation fields without incorrectly placing an object checksum on CreateMultipartUpload.

object(contract, source, response)

Verifies single-PUT bytes, any explicit caller checksum, and provider-returned checksums.

part(contract, source, response \\ %{})

Hashes bounded Source chunks once for selected and returned algorithms, retaining local checksums even when absent remotely.

select(context, input, mode \\ :multipart)

Selects a JSON-safe checksum contract; multipart CRC64NVME defaults to FULL_OBJECT.

verify(expected, response)

Validates every expected digest that is returned; absence never claims verification.