commonMain.aws.sdk.kotlin.services.glue.model.CrawlerTargets.kt Maven / Gradle / Ivy
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
package aws.sdk.kotlin.services.glue.model
import aws.smithy.kotlin.runtime.SdkDsl
/**
* Specifies data stores to crawl.
*/
public class CrawlerTargets private constructor(builder: Builder) {
/**
* Specifies Glue Data Catalog targets.
*/
public val catalogTargets: List? = builder.catalogTargets
/**
* Specifies Delta data store targets.
*/
public val deltaTargets: List? = builder.deltaTargets
/**
* Specifies Amazon DynamoDB targets.
*/
public val dynamoDbTargets: List? = builder.dynamoDbTargets
/**
* Specifies Apache Hudi data store targets.
*/
public val hudiTargets: List? = builder.hudiTargets
/**
* Specifies Apache Iceberg data store targets.
*/
public val icebergTargets: List? = builder.icebergTargets
/**
* Specifies JDBC targets.
*/
public val jdbcTargets: List? = builder.jdbcTargets
/**
* Specifies Amazon DocumentDB or MongoDB targets.
*/
public val mongoDbTargets: List? = builder.mongoDbTargets
/**
* Specifies Amazon Simple Storage Service (Amazon S3) targets.
*/
public val s3Targets: List? = builder.s3Targets
public companion object {
public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.glue.model.CrawlerTargets = Builder().apply(block).build()
}
override fun toString(): kotlin.String = buildString {
append("CrawlerTargets(")
append("catalogTargets=$catalogTargets,")
append("deltaTargets=$deltaTargets,")
append("dynamoDbTargets=$dynamoDbTargets,")
append("hudiTargets=$hudiTargets,")
append("icebergTargets=$icebergTargets,")
append("jdbcTargets=$jdbcTargets,")
append("mongoDbTargets=$mongoDbTargets,")
append("s3Targets=$s3Targets")
append(")")
}
override fun hashCode(): kotlin.Int {
var result = catalogTargets?.hashCode() ?: 0
result = 31 * result + (deltaTargets?.hashCode() ?: 0)
result = 31 * result + (dynamoDbTargets?.hashCode() ?: 0)
result = 31 * result + (hudiTargets?.hashCode() ?: 0)
result = 31 * result + (icebergTargets?.hashCode() ?: 0)
result = 31 * result + (jdbcTargets?.hashCode() ?: 0)
result = 31 * result + (mongoDbTargets?.hashCode() ?: 0)
result = 31 * result + (s3Targets?.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 CrawlerTargets
if (catalogTargets != other.catalogTargets) return false
if (deltaTargets != other.deltaTargets) return false
if (dynamoDbTargets != other.dynamoDbTargets) return false
if (hudiTargets != other.hudiTargets) return false
if (icebergTargets != other.icebergTargets) return false
if (jdbcTargets != other.jdbcTargets) return false
if (mongoDbTargets != other.mongoDbTargets) return false
if (s3Targets != other.s3Targets) return false
return true
}
public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.glue.model.CrawlerTargets = Builder(this).apply(block).build()
@SdkDsl
public class Builder {
/**
* Specifies Glue Data Catalog targets.
*/
public var catalogTargets: List? = null
/**
* Specifies Delta data store targets.
*/
public var deltaTargets: List? = null
/**
* Specifies Amazon DynamoDB targets.
*/
public var dynamoDbTargets: List? = null
/**
* Specifies Apache Hudi data store targets.
*/
public var hudiTargets: List? = null
/**
* Specifies Apache Iceberg data store targets.
*/
public var icebergTargets: List? = null
/**
* Specifies JDBC targets.
*/
public var jdbcTargets: List? = null
/**
* Specifies Amazon DocumentDB or MongoDB targets.
*/
public var mongoDbTargets: List? = null
/**
* Specifies Amazon Simple Storage Service (Amazon S3) targets.
*/
public var s3Targets: List? = null
@PublishedApi
internal constructor()
@PublishedApi
internal constructor(x: aws.sdk.kotlin.services.glue.model.CrawlerTargets) : this() {
this.catalogTargets = x.catalogTargets
this.deltaTargets = x.deltaTargets
this.dynamoDbTargets = x.dynamoDbTargets
this.hudiTargets = x.hudiTargets
this.icebergTargets = x.icebergTargets
this.jdbcTargets = x.jdbcTargets
this.mongoDbTargets = x.mongoDbTargets
this.s3Targets = x.s3Targets
}
@PublishedApi
internal fun build(): aws.sdk.kotlin.services.glue.model.CrawlerTargets = CrawlerTargets(this)
internal fun correctErrors(): Builder {
return this
}
}
}