
commonMain.aws.sdk.kotlin.services.honeycode.model.TableDataImportJobMetadata.kt Maven / Gradle / Ivy
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
package aws.sdk.kotlin.services.honeycode.model
import aws.smithy.kotlin.runtime.time.Instant
/**
* The metadata associated with the table data import job that was submitted.
*/
public class TableDataImportJobMetadata private constructor(builder: Builder) {
/**
* The source of the data that was submitted for import.
*/
public val dataSource: aws.sdk.kotlin.services.honeycode.model.ImportDataSource? = builder.dataSource
/**
* The options that was specified at the time of submitting the import request.
*/
public val importOptions: aws.sdk.kotlin.services.honeycode.model.ImportOptions? = builder.importOptions
/**
* The timestamp when the job was submitted for import.
*/
public val submitTime: aws.smithy.kotlin.runtime.time.Instant = requireNotNull(builder.submitTime) { "A non-null value must be provided for submitTime" }
/**
* Details about the submitter of the import request.
*/
public val submitter: aws.sdk.kotlin.services.honeycode.model.ImportJobSubmitter? = builder.submitter
public companion object {
public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.honeycode.model.TableDataImportJobMetadata = Builder().apply(block).build()
}
override fun toString(): kotlin.String = buildString {
append("TableDataImportJobMetadata(")
append("dataSource=$dataSource,")
append("importOptions=$importOptions,")
append("submitTime=$submitTime,")
append("submitter=$submitter")
append(")")
}
override fun hashCode(): kotlin.Int {
var result = dataSource?.hashCode() ?: 0
result = 31 * result + (importOptions?.hashCode() ?: 0)
result = 31 * result + (submitTime.hashCode())
result = 31 * result + (submitter?.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 TableDataImportJobMetadata
if (dataSource != other.dataSource) return false
if (importOptions != other.importOptions) return false
if (submitTime != other.submitTime) return false
if (submitter != other.submitter) return false
return true
}
public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.honeycode.model.TableDataImportJobMetadata = Builder(this).apply(block).build()
public class Builder {
/**
* The source of the data that was submitted for import.
*/
public var dataSource: aws.sdk.kotlin.services.honeycode.model.ImportDataSource? = null
/**
* The options that was specified at the time of submitting the import request.
*/
public var importOptions: aws.sdk.kotlin.services.honeycode.model.ImportOptions? = null
/**
* The timestamp when the job was submitted for import.
*/
public var submitTime: aws.smithy.kotlin.runtime.time.Instant? = null
/**
* Details about the submitter of the import request.
*/
public var submitter: aws.sdk.kotlin.services.honeycode.model.ImportJobSubmitter? = null
@PublishedApi
internal constructor()
@PublishedApi
internal constructor(x: aws.sdk.kotlin.services.honeycode.model.TableDataImportJobMetadata) : this() {
this.dataSource = x.dataSource
this.importOptions = x.importOptions
this.submitTime = x.submitTime
this.submitter = x.submitter
}
@PublishedApi
internal fun build(): aws.sdk.kotlin.services.honeycode.model.TableDataImportJobMetadata = TableDataImportJobMetadata(this)
/**
* construct an [aws.sdk.kotlin.services.honeycode.model.ImportDataSource] inside the given [block]
*/
public fun dataSource(block: aws.sdk.kotlin.services.honeycode.model.ImportDataSource.Builder.() -> kotlin.Unit) {
this.dataSource = aws.sdk.kotlin.services.honeycode.model.ImportDataSource.invoke(block)
}
/**
* construct an [aws.sdk.kotlin.services.honeycode.model.ImportOptions] inside the given [block]
*/
public fun importOptions(block: aws.sdk.kotlin.services.honeycode.model.ImportOptions.Builder.() -> kotlin.Unit) {
this.importOptions = aws.sdk.kotlin.services.honeycode.model.ImportOptions.invoke(block)
}
/**
* construct an [aws.sdk.kotlin.services.honeycode.model.ImportJobSubmitter] inside the given [block]
*/
public fun submitter(block: aws.sdk.kotlin.services.honeycode.model.ImportJobSubmitter.Builder.() -> kotlin.Unit) {
this.submitter = aws.sdk.kotlin.services.honeycode.model.ImportJobSubmitter.invoke(block)
}
internal fun correctErrors(): Builder {
if (submitTime == null) submitTime = Instant.fromEpochSeconds(0)
return this
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy