MCPcopy
hub / github.com/minio/minio-go / applyAutoChecksum

Function applyAutoChecksum

checksum.go:515–537  ·  view source on GitHub ↗
(opts *PutObjectOptions, allParts []ObjectPart)

Source from the content-addressed store, hash-verified

513}
514
515func applyAutoChecksum(opts *PutObjectOptions, allParts []ObjectPart) {
516 if !opts.AutoChecksum.IsSet() {
517 return
518 }
519 if opts.AutoChecksum.CanComposite() && !opts.AutoChecksum.Is(ChecksumFullObject) {
520 // Add composite hash of hashes.
521 crc, err := opts.AutoChecksum.CompositeChecksum(allParts)
522 if err == nil {
523 opts.UserMetadata = map[string]string{
524 opts.AutoChecksum.Key(): crc.Encoded(),
525 amzChecksumMode: ChecksumCompositeMode.String(),
526 }
527 }
528 } else if opts.AutoChecksum.CanMergeCRC() {
529 crc, err := opts.AutoChecksum.FullObjectChecksum(allParts)
530 if err == nil {
531 opts.UserMetadata = map[string]string{
532 opts.AutoChecksum.Key(): crc.Encoded(),
533 amzChecksumMode: ChecksumFullObjectMode.String(),
534 }
535 }
536 }
537}

Calls 9

CanCompositeMethod · 0.80
CompositeChecksumMethod · 0.80
EncodedMethod · 0.80
CanMergeCRCMethod · 0.80
FullObjectChecksumMethod · 0.80
IsSetMethod · 0.45
IsMethod · 0.45
KeyMethod · 0.45
StringMethod · 0.45

Tested by

no test coverage detected