com.hashicorp.cdktf.providers.snowflake.table_constraint.TableConstraint Maven / Gradle / Ivy
Show all versions of cdktf-provider-snowflake Show documentation
package com.hashicorp.cdktf.providers.snowflake.table_constraint;
/**
* Represents a {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/table_constraint snowflake_table_constraint}.
*/
@javax.annotation.Generated(value = "jsii-pacmak/1.101.0 (build b95fe5d)", date = "2024-08-03T03:24:50.654Z")
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@software.amazon.jsii.Jsii(module = com.hashicorp.cdktf.providers.snowflake.$Module.class, fqn = "@cdktf/provider-snowflake.tableConstraint.TableConstraint")
public class TableConstraint extends com.hashicorp.cdktf.TerraformResource {
protected TableConstraint(final software.amazon.jsii.JsiiObjectRef objRef) {
super(objRef);
}
protected TableConstraint(final software.amazon.jsii.JsiiObject.InitializationMode initializationMode) {
super(initializationMode);
}
static {
TF_RESOURCE_TYPE = software.amazon.jsii.JsiiObject.jsiiStaticGet(com.hashicorp.cdktf.providers.snowflake.table_constraint.TableConstraint.class, "tfResourceType", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
* Create a new {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/table_constraint snowflake_table_constraint} Resource.
*
* @param scope The scope in which to define this construct. This parameter is required.
* @param id The scoped construct ID. This parameter is required.
* @param config This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public TableConstraint(final @org.jetbrains.annotations.NotNull software.constructs.Construct scope, final @org.jetbrains.annotations.NotNull java.lang.String id, final @org.jetbrains.annotations.NotNull com.hashicorp.cdktf.providers.snowflake.table_constraint.TableConstraintConfig config) {
super(software.amazon.jsii.JsiiObject.InitializationMode.JSII);
software.amazon.jsii.JsiiEngine.getInstance().createNewObject(this, new Object[] { java.util.Objects.requireNonNull(scope, "scope is required"), java.util.Objects.requireNonNull(id, "id is required"), java.util.Objects.requireNonNull(config, "config is required") });
}
/**
* Generates CDKTF code for importing a TableConstraint resource upon running "cdktf plan ".
*
* @param scope The scope in which to define this construct. This parameter is required.
* @param importToId The construct id used in the generated config for the TableConstraint to import. This parameter is required.
* @param importFromId The id of the existing TableConstraint that should be imported. This parameter is required.
* @param provider ? Optional instance of the provider where the TableConstraint to import is found.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static @org.jetbrains.annotations.NotNull com.hashicorp.cdktf.ImportableResource generateConfigForImport(final @org.jetbrains.annotations.NotNull software.constructs.Construct scope, final @org.jetbrains.annotations.NotNull java.lang.String importToId, final @org.jetbrains.annotations.NotNull java.lang.String importFromId, final @org.jetbrains.annotations.Nullable com.hashicorp.cdktf.TerraformProvider provider) {
return software.amazon.jsii.JsiiObject.jsiiStaticCall(com.hashicorp.cdktf.providers.snowflake.table_constraint.TableConstraint.class, "generateConfigForImport", software.amazon.jsii.NativeType.forClass(com.hashicorp.cdktf.ImportableResource.class), new Object[] { java.util.Objects.requireNonNull(scope, "scope is required"), java.util.Objects.requireNonNull(importToId, "importToId is required"), java.util.Objects.requireNonNull(importFromId, "importFromId is required"), provider });
}
/**
* Generates CDKTF code for importing a TableConstraint resource upon running "cdktf plan ".
*
* @param scope The scope in which to define this construct. This parameter is required.
* @param importToId The construct id used in the generated config for the TableConstraint to import. This parameter is required.
* @param importFromId The id of the existing TableConstraint that should be imported. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static @org.jetbrains.annotations.NotNull com.hashicorp.cdktf.ImportableResource generateConfigForImport(final @org.jetbrains.annotations.NotNull software.constructs.Construct scope, final @org.jetbrains.annotations.NotNull java.lang.String importToId, final @org.jetbrains.annotations.NotNull java.lang.String importFromId) {
return software.amazon.jsii.JsiiObject.jsiiStaticCall(com.hashicorp.cdktf.providers.snowflake.table_constraint.TableConstraint.class, "generateConfigForImport", software.amazon.jsii.NativeType.forClass(com.hashicorp.cdktf.ImportableResource.class), new Object[] { java.util.Objects.requireNonNull(scope, "scope is required"), java.util.Objects.requireNonNull(importToId, "importToId is required"), java.util.Objects.requireNonNull(importFromId, "importFromId is required") });
}
/**
* @param value This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void putForeignKeyProperties(final @org.jetbrains.annotations.NotNull com.hashicorp.cdktf.providers.snowflake.table_constraint.TableConstraintForeignKeyProperties value) {
software.amazon.jsii.Kernel.call(this, "putForeignKeyProperties", software.amazon.jsii.NativeType.VOID, new Object[] { java.util.Objects.requireNonNull(value, "value is required") });
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void resetComment() {
software.amazon.jsii.Kernel.call(this, "resetComment", software.amazon.jsii.NativeType.VOID);
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void resetDeferrable() {
software.amazon.jsii.Kernel.call(this, "resetDeferrable", software.amazon.jsii.NativeType.VOID);
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void resetEnable() {
software.amazon.jsii.Kernel.call(this, "resetEnable", software.amazon.jsii.NativeType.VOID);
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void resetEnforced() {
software.amazon.jsii.Kernel.call(this, "resetEnforced", software.amazon.jsii.NativeType.VOID);
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void resetForeignKeyProperties() {
software.amazon.jsii.Kernel.call(this, "resetForeignKeyProperties", software.amazon.jsii.NativeType.VOID);
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void resetId() {
software.amazon.jsii.Kernel.call(this, "resetId", software.amazon.jsii.NativeType.VOID);
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void resetInitially() {
software.amazon.jsii.Kernel.call(this, "resetInitially", software.amazon.jsii.NativeType.VOID);
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void resetRely() {
software.amazon.jsii.Kernel.call(this, "resetRely", software.amazon.jsii.NativeType.VOID);
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void resetValidate() {
software.amazon.jsii.Kernel.call(this, "resetValidate", software.amazon.jsii.NativeType.VOID);
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@Override
protected @org.jetbrains.annotations.NotNull java.util.Map synthesizeAttributes() {
return java.util.Collections.unmodifiableMap(software.amazon.jsii.Kernel.call(this, "synthesizeAttributes", software.amazon.jsii.NativeType.mapOf(software.amazon.jsii.NativeType.forClass(java.lang.Object.class))));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@Override
protected @org.jetbrains.annotations.NotNull java.util.Map synthesizeHclAttributes() {
return java.util.Collections.unmodifiableMap(software.amazon.jsii.Kernel.call(this, "synthesizeHclAttributes", software.amazon.jsii.NativeType.mapOf(software.amazon.jsii.NativeType.forClass(java.lang.Object.class))));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public final static java.lang.String TF_RESOURCE_TYPE;
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.NotNull com.hashicorp.cdktf.providers.snowflake.table_constraint.TableConstraintForeignKeyPropertiesOutputReference getForeignKeyProperties() {
return software.amazon.jsii.Kernel.get(this, "foreignKeyProperties", software.amazon.jsii.NativeType.forClass(com.hashicorp.cdktf.providers.snowflake.table_constraint.TableConstraintForeignKeyPropertiesOutputReference.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.Nullable java.util.List getColumnsInput() {
return java.util.Optional.ofNullable((java.util.List)(software.amazon.jsii.Kernel.get(this, "columnsInput", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(java.lang.String.class))))).map(java.util.Collections::unmodifiableList).orElse(null);
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.Nullable java.lang.String getCommentInput() {
return software.amazon.jsii.Kernel.get(this, "commentInput", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.Nullable java.lang.Object getDeferrableInput() {
return software.amazon.jsii.Kernel.get(this, "deferrableInput", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.Nullable java.lang.Object getEnableInput() {
return software.amazon.jsii.Kernel.get(this, "enableInput", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.Nullable java.lang.Object getEnforcedInput() {
return software.amazon.jsii.Kernel.get(this, "enforcedInput", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.Nullable com.hashicorp.cdktf.providers.snowflake.table_constraint.TableConstraintForeignKeyProperties getForeignKeyPropertiesInput() {
return software.amazon.jsii.Kernel.get(this, "foreignKeyPropertiesInput", software.amazon.jsii.NativeType.forClass(com.hashicorp.cdktf.providers.snowflake.table_constraint.TableConstraintForeignKeyProperties.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.Nullable java.lang.String getIdInput() {
return software.amazon.jsii.Kernel.get(this, "idInput", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.Nullable java.lang.String getInitiallyInput() {
return software.amazon.jsii.Kernel.get(this, "initiallyInput", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.Nullable java.lang.String getNameInput() {
return software.amazon.jsii.Kernel.get(this, "nameInput", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.Nullable java.lang.Object getRelyInput() {
return software.amazon.jsii.Kernel.get(this, "relyInput", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.Nullable java.lang.String getTableIdInput() {
return software.amazon.jsii.Kernel.get(this, "tableIdInput", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.Nullable java.lang.String getTypeInput() {
return software.amazon.jsii.Kernel.get(this, "typeInput", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.Nullable java.lang.Object getValidateInput() {
return software.amazon.jsii.Kernel.get(this, "validateInput", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.NotNull java.util.List getColumns() {
return java.util.Collections.unmodifiableList(software.amazon.jsii.Kernel.get(this, "columns", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(java.lang.String.class))));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void setColumns(final @org.jetbrains.annotations.NotNull java.util.List value) {
software.amazon.jsii.Kernel.set(this, "columns", java.util.Objects.requireNonNull(value, "columns is required"));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.NotNull java.lang.String getComment() {
return software.amazon.jsii.Kernel.get(this, "comment", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void setComment(final @org.jetbrains.annotations.NotNull java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "comment", java.util.Objects.requireNonNull(value, "comment is required"));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.NotNull java.lang.Object getDeferrable() {
return software.amazon.jsii.Kernel.get(this, "deferrable", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void setDeferrable(final @org.jetbrains.annotations.NotNull java.lang.Boolean value) {
software.amazon.jsii.Kernel.set(this, "deferrable", java.util.Objects.requireNonNull(value, "deferrable is required"));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void setDeferrable(final @org.jetbrains.annotations.NotNull com.hashicorp.cdktf.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "deferrable", java.util.Objects.requireNonNull(value, "deferrable is required"));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.NotNull java.lang.Object getEnable() {
return software.amazon.jsii.Kernel.get(this, "enable", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void setEnable(final @org.jetbrains.annotations.NotNull java.lang.Boolean value) {
software.amazon.jsii.Kernel.set(this, "enable", java.util.Objects.requireNonNull(value, "enable is required"));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void setEnable(final @org.jetbrains.annotations.NotNull com.hashicorp.cdktf.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "enable", java.util.Objects.requireNonNull(value, "enable is required"));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.NotNull java.lang.Object getEnforced() {
return software.amazon.jsii.Kernel.get(this, "enforced", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void setEnforced(final @org.jetbrains.annotations.NotNull java.lang.Boolean value) {
software.amazon.jsii.Kernel.set(this, "enforced", java.util.Objects.requireNonNull(value, "enforced is required"));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void setEnforced(final @org.jetbrains.annotations.NotNull com.hashicorp.cdktf.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "enforced", java.util.Objects.requireNonNull(value, "enforced is required"));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.NotNull java.lang.String getId() {
return software.amazon.jsii.Kernel.get(this, "id", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void setId(final @org.jetbrains.annotations.NotNull java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "id", java.util.Objects.requireNonNull(value, "id is required"));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.NotNull java.lang.String getInitially() {
return software.amazon.jsii.Kernel.get(this, "initially", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void setInitially(final @org.jetbrains.annotations.NotNull java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "initially", java.util.Objects.requireNonNull(value, "initially is required"));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.NotNull java.lang.String getName() {
return software.amazon.jsii.Kernel.get(this, "name", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void setName(final @org.jetbrains.annotations.NotNull java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "name", java.util.Objects.requireNonNull(value, "name is required"));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.NotNull java.lang.Object getRely() {
return software.amazon.jsii.Kernel.get(this, "rely", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void setRely(final @org.jetbrains.annotations.NotNull java.lang.Boolean value) {
software.amazon.jsii.Kernel.set(this, "rely", java.util.Objects.requireNonNull(value, "rely is required"));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void setRely(final @org.jetbrains.annotations.NotNull com.hashicorp.cdktf.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "rely", java.util.Objects.requireNonNull(value, "rely is required"));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.NotNull java.lang.String getTableId() {
return software.amazon.jsii.Kernel.get(this, "tableId", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void setTableId(final @org.jetbrains.annotations.NotNull java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "tableId", java.util.Objects.requireNonNull(value, "tableId is required"));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.NotNull java.lang.String getType() {
return software.amazon.jsii.Kernel.get(this, "type", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void setType(final @org.jetbrains.annotations.NotNull java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "type", java.util.Objects.requireNonNull(value, "type is required"));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.NotNull java.lang.Object getValidate() {
return software.amazon.jsii.Kernel.get(this, "validate", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void setValidate(final @org.jetbrains.annotations.NotNull java.lang.Boolean value) {
software.amazon.jsii.Kernel.set(this, "validate", java.util.Objects.requireNonNull(value, "validate is required"));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void setValidate(final @org.jetbrains.annotations.NotNull com.hashicorp.cdktf.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "validate", java.util.Objects.requireNonNull(value, "validate is required"));
}
/**
* A fluent builder for {@link com.hashicorp.cdktf.providers.snowflake.table_constraint.TableConstraint}.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static final class Builder implements software.amazon.jsii.Builder {
/**
* @return a new instance of {@link Builder}.
* @param scope The scope in which to define this construct. This parameter is required.
* @param id The scoped construct ID. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static Builder create(final software.constructs.Construct scope, final java.lang.String id) {
return new Builder(scope, id);
}
private final software.constructs.Construct scope;
private final java.lang.String id;
private final com.hashicorp.cdktf.providers.snowflake.table_constraint.TableConstraintConfig.Builder config;
private Builder(final software.constructs.Construct scope, final java.lang.String id) {
this.scope = scope;
this.id = id;
this.config = new com.hashicorp.cdktf.providers.snowflake.table_constraint.TableConstraintConfig.Builder();
}
/**
* @return {@code this}
* @param connection This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder connection(final com.hashicorp.cdktf.SSHProvisionerConnection connection) {
this.config.connection(connection);
return this;
}
/**
* @return {@code this}
* @param connection This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder connection(final com.hashicorp.cdktf.WinrmProvisionerConnection connection) {
this.config.connection(connection);
return this;
}
/**
* @return {@code this}
* @param count This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder count(final java.lang.Number count) {
this.config.count(count);
return this;
}
/**
* @return {@code this}
* @param count This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder count(final com.hashicorp.cdktf.TerraformCount count) {
this.config.count(count);
return this;
}
/**
* @return {@code this}
* @param dependsOn This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder dependsOn(final java.util.List dependsOn) {
this.config.dependsOn(dependsOn);
return this;
}
/**
* @return {@code this}
* @param forEach This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder forEach(final com.hashicorp.cdktf.ITerraformIterator forEach) {
this.config.forEach(forEach);
return this;
}
/**
* @return {@code this}
* @param lifecycle This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder lifecycle(final com.hashicorp.cdktf.TerraformResourceLifecycle lifecycle) {
this.config.lifecycle(lifecycle);
return this;
}
/**
* @return {@code this}
* @param provider This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder provider(final com.hashicorp.cdktf.TerraformProvider provider) {
this.config.provider(provider);
return this;
}
/**
* @return {@code this}
* @param provisioners This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder provisioners(final java.util.List provisioners) {
this.config.provisioners(provisioners);
return this;
}
/**
* Columns to use in constraint key.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/table_constraint#columns TableConstraint#columns}
*
* @return {@code this}
* @param columns Columns to use in constraint key. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder columns(final java.util.List columns) {
this.config.columns(columns);
return this;
}
/**
* Name of constraint.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/table_constraint#name TableConstraint#name}
*
* @return {@code this}
* @param name Name of constraint. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder name(final java.lang.String name) {
this.config.name(name);
return this;
}
/**
* Identifier for table to create constraint on. Format must follow: ""<db_name>"."<schema_name>"."<table_name>"" or "<db_name>.<schema_name>.<table_name>" (snowflake_table.my_table.id).
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/table_constraint#table_id TableConstraint#table_id}
*
* @return {@code this}
* @param tableId Identifier for table to create constraint on. Format must follow: ""<db_name>"."<schema_name>"."<table_name>"" or "<db_name>.<schema_name>.<table_name>" (snowflake_table.my_table.id). This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder tableId(final java.lang.String tableId) {
this.config.tableId(tableId);
return this;
}
/**
* Type of constraint, one of 'UNIQUE', 'PRIMARY KEY', or 'FOREIGN KEY'.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/table_constraint#type TableConstraint#type}
*
* @return {@code this}
* @param type Type of constraint, one of 'UNIQUE', 'PRIMARY KEY', or 'FOREIGN KEY'. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder type(final java.lang.String type) {
this.config.type(type);
return this;
}
/**
* Comment for the table constraint.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/table_constraint#comment TableConstraint#comment}
*
* @return {@code this}
* @param comment Comment for the table constraint. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder comment(final java.lang.String comment) {
this.config.comment(comment);
return this;
}
/**
* Whether the constraint is deferrable.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/table_constraint#deferrable TableConstraint#deferrable}
*
* @return {@code this}
* @param deferrable Whether the constraint is deferrable. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder deferrable(final java.lang.Boolean deferrable) {
this.config.deferrable(deferrable);
return this;
}
/**
* Whether the constraint is deferrable.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/table_constraint#deferrable TableConstraint#deferrable}
*
* @return {@code this}
* @param deferrable Whether the constraint is deferrable. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder deferrable(final com.hashicorp.cdktf.IResolvable deferrable) {
this.config.deferrable(deferrable);
return this;
}
/**
* Specifies whether the constraint is enabled or disabled. These properties are provided for compatibility with Oracle.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/table_constraint#enable TableConstraint#enable}
*
* @return {@code this}
* @param enable Specifies whether the constraint is enabled or disabled. These properties are provided for compatibility with Oracle. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder enable(final java.lang.Boolean enable) {
this.config.enable(enable);
return this;
}
/**
* Specifies whether the constraint is enabled or disabled. These properties are provided for compatibility with Oracle.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/table_constraint#enable TableConstraint#enable}
*
* @return {@code this}
* @param enable Specifies whether the constraint is enabled or disabled. These properties are provided for compatibility with Oracle. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder enable(final com.hashicorp.cdktf.IResolvable enable) {
this.config.enable(enable);
return this;
}
/**
* Whether the constraint is enforced.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/table_constraint#enforced TableConstraint#enforced}
*
* @return {@code this}
* @param enforced Whether the constraint is enforced. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder enforced(final java.lang.Boolean enforced) {
this.config.enforced(enforced);
return this;
}
/**
* Whether the constraint is enforced.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/table_constraint#enforced TableConstraint#enforced}
*
* @return {@code this}
* @param enforced Whether the constraint is enforced. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder enforced(final com.hashicorp.cdktf.IResolvable enforced) {
this.config.enforced(enforced);
return this;
}
/**
* foreign_key_properties block.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/table_constraint#foreign_key_properties TableConstraint#foreign_key_properties}
*
* @return {@code this}
* @param foreignKeyProperties foreign_key_properties block. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder foreignKeyProperties(final com.hashicorp.cdktf.providers.snowflake.table_constraint.TableConstraintForeignKeyProperties foreignKeyProperties) {
this.config.foreignKeyProperties(foreignKeyProperties);
return this;
}
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/table_constraint#id TableConstraint#id}.
*
* Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2.
* If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.
*
* @return {@code this}
* @param id Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/table_constraint#id TableConstraint#id}. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder id(final java.lang.String id) {
this.config.id(id);
return this;
}
/**
* Whether the constraint is initially deferred or immediate.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/table_constraint#initially TableConstraint#initially}
*
* @return {@code this}
* @param initially Whether the constraint is initially deferred or immediate. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder initially(final java.lang.String initially) {
this.config.initially(initially);
return this;
}
/**
* Specifies whether a constraint in NOVALIDATE mode is taken into account during query rewrite.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/table_constraint#rely TableConstraint#rely}
*
* @return {@code this}
* @param rely Specifies whether a constraint in NOVALIDATE mode is taken into account during query rewrite. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder rely(final java.lang.Boolean rely) {
this.config.rely(rely);
return this;
}
/**
* Specifies whether a constraint in NOVALIDATE mode is taken into account during query rewrite.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/table_constraint#rely TableConstraint#rely}
*
* @return {@code this}
* @param rely Specifies whether a constraint in NOVALIDATE mode is taken into account during query rewrite. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder rely(final com.hashicorp.cdktf.IResolvable rely) {
this.config.rely(rely);
return this;
}
/**
* Specifies whether to validate existing data on the table when a constraint is created.
*
* Only used in conjunction with the ENABLE property.
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/table_constraint#validate TableConstraint#validate}
*
* @return {@code this}
* @param validate Specifies whether to validate existing data on the table when a constraint is created. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder validate(final java.lang.Boolean validate) {
this.config.validate(validate);
return this;
}
/**
* Specifies whether to validate existing data on the table when a constraint is created.
*
* Only used in conjunction with the ENABLE property.
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/table_constraint#validate TableConstraint#validate}
*
* @return {@code this}
* @param validate Specifies whether to validate existing data on the table when a constraint is created. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder validate(final com.hashicorp.cdktf.IResolvable validate) {
this.config.validate(validate);
return this;
}
/**
* @return a newly built instance of {@link com.hashicorp.cdktf.providers.snowflake.table_constraint.TableConstraint}.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@Override
public com.hashicorp.cdktf.providers.snowflake.table_constraint.TableConstraint build() {
return new com.hashicorp.cdktf.providers.snowflake.table_constraint.TableConstraint(
this.scope,
this.id,
this.config.build()
);
}
}
}