
commonMain.aws.sdk.kotlin.services.s3.model.UploadPartResponse.kt Maven / Gradle / Ivy
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
package aws.sdk.kotlin.services.s3.model
public class UploadPartResponse private constructor(builder: Builder) {
/**
* Indicates whether the multipart upload uses an S3 Bucket Key for server-side encryption with Key Management Service (KMS) keys (SSE-KMS).
*
* This functionality is not supported for directory buckets.
*/
public val bucketKeyEnabled: kotlin.Boolean? = builder.bucketKeyEnabled
/**
* The base64-encoded, 32-bit CRC32 checksum of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see [ Checking object integrity](https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) in the *Amazon S3 User Guide*.
*/
public val checksumCrc32: kotlin.String? = builder.checksumCrc32
/**
* The base64-encoded, 32-bit CRC32C checksum of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see [ Checking object integrity](https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) in the *Amazon S3 User Guide*.
*/
public val checksumCrc32C: kotlin.String? = builder.checksumCrc32C
/**
* The base64-encoded, 160-bit SHA-1 digest of the object. This will only be present if it was uploaded with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see [ Checking object integrity](https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) in the *Amazon S3 User Guide*.
*/
public val checksumSha1: kotlin.String? = builder.checksumSha1
/**
* The base64-encoded, 256-bit SHA-256 digest of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see [ Checking object integrity](https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) in the *Amazon S3 User Guide*.
*/
public val checksumSha256: kotlin.String? = builder.checksumSha256
/**
* Entity tag for the uploaded object.
*/
public val eTag: kotlin.String? = builder.eTag
/**
* If present, indicates that the requester was successfully charged for the request.
*
* This functionality is not supported for directory buckets.
*/
public val requestCharged: aws.sdk.kotlin.services.s3.model.RequestCharged? = builder.requestCharged
/**
* The server-side encryption algorithm used when you store this object in Amazon S3 (for example, `AES256`, `aws:kms`).
*
* For directory buckets, only server-side encryption with Amazon S3 managed keys (SSE-S3) (`AES256`) is supported.
*/
public val serverSideEncryption: aws.sdk.kotlin.services.s3.model.ServerSideEncryption? = builder.serverSideEncryption
/**
* If server-side encryption with a customer-provided encryption key was requested, the response will include this header to confirm the encryption algorithm that's used.
*
* This functionality is not supported for directory buckets.
*/
public val sseCustomerAlgorithm: kotlin.String? = builder.sseCustomerAlgorithm
/**
* If server-side encryption with a customer-provided encryption key was requested, the response will include this header to provide the round-trip message integrity verification of the customer-provided encryption key.
*
* This functionality is not supported for directory buckets.
*/
public val sseCustomerKeyMd5: kotlin.String? = builder.sseCustomerKeyMd5
/**
* If present, indicates the ID of the Key Management Service (KMS) symmetric encryption customer managed key that was used for the object.
*
* This functionality is not supported for directory buckets.
*/
public val ssekmsKeyId: kotlin.String? = builder.ssekmsKeyId
public companion object {
public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.s3.model.UploadPartResponse = Builder().apply(block).build()
}
override fun toString(): kotlin.String = buildString {
append("UploadPartResponse(")
append("bucketKeyEnabled=$bucketKeyEnabled,")
append("checksumCrc32=$checksumCrc32,")
append("checksumCrc32C=$checksumCrc32C,")
append("checksumSha1=$checksumSha1,")
append("checksumSha256=$checksumSha256,")
append("eTag=$eTag,")
append("requestCharged=$requestCharged,")
append("serverSideEncryption=$serverSideEncryption,")
append("sseCustomerAlgorithm=$sseCustomerAlgorithm,")
append("sseCustomerKeyMd5=$sseCustomerKeyMd5,")
append("ssekmsKeyId=*** Sensitive Data Redacted ***")
append(")")
}
override fun hashCode(): kotlin.Int {
var result = bucketKeyEnabled?.hashCode() ?: 0
result = 31 * result + (checksumCrc32?.hashCode() ?: 0)
result = 31 * result + (checksumCrc32C?.hashCode() ?: 0)
result = 31 * result + (checksumSha1?.hashCode() ?: 0)
result = 31 * result + (checksumSha256?.hashCode() ?: 0)
result = 31 * result + (eTag?.hashCode() ?: 0)
result = 31 * result + (requestCharged?.hashCode() ?: 0)
result = 31 * result + (serverSideEncryption?.hashCode() ?: 0)
result = 31 * result + (sseCustomerAlgorithm?.hashCode() ?: 0)
result = 31 * result + (sseCustomerKeyMd5?.hashCode() ?: 0)
result = 31 * result + (ssekmsKeyId?.hashCode() ?: 0)
return result
}
override fun equals(other: kotlin.Any?): kotlin.Boolean {
if (this === other) return true
if (other == null || this::class != other::class) return false
other as UploadPartResponse
if (bucketKeyEnabled != other.bucketKeyEnabled) return false
if (checksumCrc32 != other.checksumCrc32) return false
if (checksumCrc32C != other.checksumCrc32C) return false
if (checksumSha1 != other.checksumSha1) return false
if (checksumSha256 != other.checksumSha256) return false
if (eTag != other.eTag) return false
if (requestCharged != other.requestCharged) return false
if (serverSideEncryption != other.serverSideEncryption) return false
if (sseCustomerAlgorithm != other.sseCustomerAlgorithm) return false
if (sseCustomerKeyMd5 != other.sseCustomerKeyMd5) return false
if (ssekmsKeyId != other.ssekmsKeyId) return false
return true
}
public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.s3.model.UploadPartResponse = Builder(this).apply(block).build()
public class Builder {
/**
* Indicates whether the multipart upload uses an S3 Bucket Key for server-side encryption with Key Management Service (KMS) keys (SSE-KMS).
*
* This functionality is not supported for directory buckets.
*/
public var bucketKeyEnabled: kotlin.Boolean? = null
/**
* The base64-encoded, 32-bit CRC32 checksum of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see [ Checking object integrity](https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) in the *Amazon S3 User Guide*.
*/
public var checksumCrc32: kotlin.String? = null
/**
* The base64-encoded, 32-bit CRC32C checksum of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see [ Checking object integrity](https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) in the *Amazon S3 User Guide*.
*/
public var checksumCrc32C: kotlin.String? = null
/**
* The base64-encoded, 160-bit SHA-1 digest of the object. This will only be present if it was uploaded with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see [ Checking object integrity](https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) in the *Amazon S3 User Guide*.
*/
public var checksumSha1: kotlin.String? = null
/**
* The base64-encoded, 256-bit SHA-256 digest of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see [ Checking object integrity](https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums) in the *Amazon S3 User Guide*.
*/
public var checksumSha256: kotlin.String? = null
/**
* Entity tag for the uploaded object.
*/
public var eTag: kotlin.String? = null
/**
* If present, indicates that the requester was successfully charged for the request.
*
* This functionality is not supported for directory buckets.
*/
public var requestCharged: aws.sdk.kotlin.services.s3.model.RequestCharged? = null
/**
* The server-side encryption algorithm used when you store this object in Amazon S3 (for example, `AES256`, `aws:kms`).
*
* For directory buckets, only server-side encryption with Amazon S3 managed keys (SSE-S3) (`AES256`) is supported.
*/
public var serverSideEncryption: aws.sdk.kotlin.services.s3.model.ServerSideEncryption? = null
/**
* If server-side encryption with a customer-provided encryption key was requested, the response will include this header to confirm the encryption algorithm that's used.
*
* This functionality is not supported for directory buckets.
*/
public var sseCustomerAlgorithm: kotlin.String? = null
/**
* If server-side encryption with a customer-provided encryption key was requested, the response will include this header to provide the round-trip message integrity verification of the customer-provided encryption key.
*
* This functionality is not supported for directory buckets.
*/
public var sseCustomerKeyMd5: kotlin.String? = null
/**
* If present, indicates the ID of the Key Management Service (KMS) symmetric encryption customer managed key that was used for the object.
*
* This functionality is not supported for directory buckets.
*/
public var ssekmsKeyId: kotlin.String? = null
@PublishedApi
internal constructor()
@PublishedApi
internal constructor(x: aws.sdk.kotlin.services.s3.model.UploadPartResponse) : this() {
this.bucketKeyEnabled = x.bucketKeyEnabled
this.checksumCrc32 = x.checksumCrc32
this.checksumCrc32C = x.checksumCrc32C
this.checksumSha1 = x.checksumSha1
this.checksumSha256 = x.checksumSha256
this.eTag = x.eTag
this.requestCharged = x.requestCharged
this.serverSideEncryption = x.serverSideEncryption
this.sseCustomerAlgorithm = x.sseCustomerAlgorithm
this.sseCustomerKeyMd5 = x.sseCustomerKeyMd5
this.ssekmsKeyId = x.ssekmsKeyId
}
@PublishedApi
internal fun build(): aws.sdk.kotlin.services.s3.model.UploadPartResponse = UploadPartResponse(this)
internal fun correctErrors(): Builder {
return this
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy