com.pulumi.gcp.bigquery.kotlin.outputs.JobCopy.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.gcp.bigquery.kotlin.outputs
import kotlin.String
import kotlin.Suppress
import kotlin.collections.List
/**
*
* @property createDisposition Specifies whether the job is allowed to create new tables. The following values are supported:
* CREATE_IF_NEEDED: If the table does not exist, BigQuery creates the table.
* CREATE_NEVER: The table must already exist. If it does not, a 'notFound' error is returned in the job result.
* Creation, truncation and append actions occur as one atomic update upon job completion
* Default value is `CREATE_IF_NEEDED`.
* Possible values are: `CREATE_IF_NEEDED`, `CREATE_NEVER`.
* @property destinationEncryptionConfiguration Custom encryption configuration (e.g., Cloud KMS keys)
* Structure is documented below.
* @property destinationTable The destination table.
* Structure is documented below.
* @property sourceTables Source tables to copy.
* Structure is documented below.
* @property writeDisposition Specifies the action that occurs if the destination table already exists. The following values are supported:
* WRITE_TRUNCATE: If the table already exists, BigQuery overwrites the table data and uses the schema from the query result.
* WRITE_APPEND: If the table already exists, BigQuery appends the data to the table.
* WRITE_EMPTY: If the table already exists and contains data, a 'duplicate' error is returned in the job result.
* Each action is atomic and only occurs if BigQuery is able to complete the job successfully.
* Creation, truncation and append actions occur as one atomic update upon job completion.
* Default value is `WRITE_EMPTY`.
* Possible values are: `WRITE_TRUNCATE`, `WRITE_APPEND`, `WRITE_EMPTY`.
*/
public data class JobCopy(
public val createDisposition: String? = null,
public val destinationEncryptionConfiguration: JobCopyDestinationEncryptionConfiguration? = null,
public val destinationTable: JobCopyDestinationTable? = null,
public val sourceTables: List,
public val writeDisposition: String? = null,
) {
public companion object {
public fun toKotlin(javaType: com.pulumi.gcp.bigquery.outputs.JobCopy): JobCopy = JobCopy(
createDisposition = javaType.createDisposition().map({ args0 -> args0 }).orElse(null),
destinationEncryptionConfiguration = javaType.destinationEncryptionConfiguration().map({ args0 ->
args0.let({ args0 ->
com.pulumi.gcp.bigquery.kotlin.outputs.JobCopyDestinationEncryptionConfiguration.Companion.toKotlin(args0)
})
}).orElse(null),
destinationTable = javaType.destinationTable().map({ args0 ->
args0.let({ args0 ->
com.pulumi.gcp.bigquery.kotlin.outputs.JobCopyDestinationTable.Companion.toKotlin(args0)
})
}).orElse(null),
sourceTables = javaType.sourceTables().map({ args0 ->
args0.let({ args0 ->
com.pulumi.gcp.bigquery.kotlin.outputs.JobCopySourceTable.Companion.toKotlin(args0)
})
}),
writeDisposition = javaType.writeDisposition().map({ args0 -> args0 }).orElse(null),
)
}
}