
com.pulumi.azure.cosmosdb.kotlin.inputs.AccountRestoreArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azure.cosmosdb.kotlin.inputs
import com.pulumi.azure.cosmosdb.inputs.AccountRestoreArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiNullFieldException
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
*
* @property databases A `database` block as defined below. Changing this forces a new resource to be created.
* @property gremlinDatabases One or more `gremlin_database` blocks as defined below. Changing this forces a new resource to be created.
* @property restoreTimestampInUtc The creation time of the database or the collection (Datetime Format `RFC 3339`). Changing this forces a new resource to be created.
* @property sourceCosmosdbAccountId The resource ID of the restorable database account from which the restore has to be initiated. The example is `/subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/{location}/restorableDatabaseAccounts/{restorableDatabaseAccountName}`. Changing this forces a new resource to be created.
* > **Note:** Any database account with `Continuous` type (live account or accounts deleted in last 30 days) is a restorable database account and there cannot be Create/Update/Delete operations on the restorable database accounts. They can only be read and retrieved by `azure.cosmosdb.getRestorableDatabaseAccounts`.
* @property tablesToRestores A list of specific tables available for restore. Changing this forces a new resource to be created.
*/
public data class AccountRestoreArgs(
public val databases: Output>? = null,
public val gremlinDatabases: Output>? = null,
public val restoreTimestampInUtc: Output,
public val sourceCosmosdbAccountId: Output,
public val tablesToRestores: Output>? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.azure.cosmosdb.inputs.AccountRestoreArgs =
com.pulumi.azure.cosmosdb.inputs.AccountRestoreArgs.builder()
.databases(
databases?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
)
.gremlinDatabases(
gremlinDatabases?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
)
.restoreTimestampInUtc(restoreTimestampInUtc.applyValue({ args0 -> args0 }))
.sourceCosmosdbAccountId(sourceCosmosdbAccountId.applyValue({ args0 -> args0 }))
.tablesToRestores(tablesToRestores?.applyValue({ args0 -> args0.map({ args0 -> args0 }) })).build()
}
/**
* Builder for [AccountRestoreArgs].
*/
@PulumiTagMarker
public class AccountRestoreArgsBuilder internal constructor() {
private var databases: Output>? = null
private var gremlinDatabases: Output>? = null
private var restoreTimestampInUtc: Output? = null
private var sourceCosmosdbAccountId: Output? = null
private var tablesToRestores: Output>? = null
/**
* @param value A `database` block as defined below. Changing this forces a new resource to be created.
*/
@JvmName("pssjhopuvgvuskfo")
public suspend fun databases(`value`: Output>) {
this.databases = value
}
@JvmName("fjkyvuuifccompbh")
public suspend fun databases(vararg values: Output) {
this.databases = Output.all(values.asList())
}
/**
* @param values A `database` block as defined below. Changing this forces a new resource to be created.
*/
@JvmName("ivlqpdpbgfojmscl")
public suspend fun databases(values: List
© 2015 - 2025 Weber Informatics LLC | Privacy Policy