com.hashicorp.cdktf.providers.snowflake.tag_association.TagAssociationConfig Maven / Gradle / Ivy
Show all versions of cdktf-provider-snowflake Show documentation
package com.hashicorp.cdktf.providers.snowflake.tag_association;
/**
*/
@javax.annotation.Generated(value = "jsii-pacmak/1.101.0 (build b95fe5d)", date = "2024-08-03T03:24:50.673Z")
@software.amazon.jsii.Jsii(module = com.hashicorp.cdktf.providers.snowflake.$Module.class, fqn = "@cdktf/provider-snowflake.tagAssociation.TagAssociationConfig")
@software.amazon.jsii.Jsii.Proxy(TagAssociationConfig.Jsii$Proxy.class)
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public interface TagAssociationConfig extends software.amazon.jsii.JsiiSerializable, com.hashicorp.cdktf.TerraformMetaArguments {
/**
* object_identifier block.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/tag_association#object_identifier TagAssociation#object_identifier}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@org.jetbrains.annotations.NotNull java.lang.Object getObjectIdentifier();
/**
* Specifies the type of object to add a tag.
*
* Allowed object types: [ACCOUNT APPLICATION APPLICATION PACKAGE DATABASE INTEGRATION NETWORK POLICY ROLE SHARE USER WAREHOUSE DATABASE ROLE SCHEMA ALERT EXTERNAL FUNCTION EXTERNAL TABLE GIT REPOSITORY ICEBERG TABLE MATERIALIZED VIEW PIPE MASKING POLICY PASSWORD POLICY ROW ACCESS POLICY SESSION POLICY PROCEDURE STAGE STREAM TABLE TASK VIEW COLUMN EVENT TABLE].
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/tag_association#object_type TagAssociation#object_type}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@org.jetbrains.annotations.NotNull java.lang.String getObjectType();
/**
* Specifies the identifier for the tag. Note: format must follow: "databaseName"."schemaName"."tagName" or "databaseName.schemaName.tagName" or "databaseName|schemaName.tagName" (snowflake_tag.tag.id).
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/tag_association#tag_id TagAssociation#tag_id}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@org.jetbrains.annotations.NotNull java.lang.String getTagId();
/**
* Specifies the value of the tag, (e.g. 'finance' or 'engineering').
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/tag_association#tag_value TagAssociation#tag_value}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@org.jetbrains.annotations.NotNull java.lang.String getTagValue();
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/tag_association#id TagAssociation#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.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getId() {
return null;
}
/**
* Specifies the object identifier for the tag association.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/tag_association#object_name TagAssociation#object_name}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getObjectName() {
return null;
}
/**
* If true, skips validation of the tag association.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/tag_association#skip_validation TagAssociation#skip_validation}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.Object getSkipValidation() {
return null;
}
/**
* timeouts block.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/tag_association#timeouts TagAssociation#timeouts}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable com.hashicorp.cdktf.providers.snowflake.tag_association.TagAssociationTimeouts getTimeouts() {
return null;
}
/**
* @return a {@link Builder} of {@link TagAssociationConfig}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
static Builder builder() {
return new Builder();
}
/**
* A builder for {@link TagAssociationConfig}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static final class Builder implements software.amazon.jsii.Builder {
java.lang.Object objectIdentifier;
java.lang.String objectType;
java.lang.String tagId;
java.lang.String tagValue;
java.lang.String id;
java.lang.String objectName;
java.lang.Object skipValidation;
com.hashicorp.cdktf.providers.snowflake.tag_association.TagAssociationTimeouts timeouts;
java.lang.Object connection;
java.lang.Object count;
java.util.List dependsOn;
com.hashicorp.cdktf.ITerraformIterator forEach;
com.hashicorp.cdktf.TerraformResourceLifecycle lifecycle;
com.hashicorp.cdktf.TerraformProvider provider;
java.util.List provisioners;
/**
* Sets the value of {@link TagAssociationConfig#getObjectIdentifier}
* @param objectIdentifier object_identifier block. This parameter is required.
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/tag_association#object_identifier TagAssociation#object_identifier}
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder objectIdentifier(com.hashicorp.cdktf.IResolvable objectIdentifier) {
this.objectIdentifier = objectIdentifier;
return this;
}
/**
* Sets the value of {@link TagAssociationConfig#getObjectIdentifier}
* @param objectIdentifier object_identifier block. This parameter is required.
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/tag_association#object_identifier TagAssociation#object_identifier}
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder objectIdentifier(java.util.List objectIdentifier) {
this.objectIdentifier = objectIdentifier;
return this;
}
/**
* Sets the value of {@link TagAssociationConfig#getObjectType}
* @param objectType Specifies the type of object to add a tag. This parameter is required.
* Allowed object types: [ACCOUNT APPLICATION APPLICATION PACKAGE DATABASE INTEGRATION NETWORK POLICY ROLE SHARE USER WAREHOUSE DATABASE ROLE SCHEMA ALERT EXTERNAL FUNCTION EXTERNAL TABLE GIT REPOSITORY ICEBERG TABLE MATERIALIZED VIEW PIPE MASKING POLICY PASSWORD POLICY ROW ACCESS POLICY SESSION POLICY PROCEDURE STAGE STREAM TABLE TASK VIEW COLUMN EVENT TABLE].
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/tag_association#object_type TagAssociation#object_type}
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder objectType(java.lang.String objectType) {
this.objectType = objectType;
return this;
}
/**
* Sets the value of {@link TagAssociationConfig#getTagId}
* @param tagId Specifies the identifier for the tag. Note: format must follow: "databaseName"."schemaName"."tagName" or "databaseName.schemaName.tagName" or "databaseName|schemaName.tagName" (snowflake_tag.tag.id). This parameter is required.
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/tag_association#tag_id TagAssociation#tag_id}
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder tagId(java.lang.String tagId) {
this.tagId = tagId;
return this;
}
/**
* Sets the value of {@link TagAssociationConfig#getTagValue}
* @param tagValue Specifies the value of the tag, (e.g. 'finance' or 'engineering'). This parameter is required.
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/tag_association#tag_value TagAssociation#tag_value}
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder tagValue(java.lang.String tagValue) {
this.tagValue = tagValue;
return this;
}
/**
* Sets the value of {@link TagAssociationConfig#getId}
* @param id Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/tag_association#id TagAssociation#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}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder id(java.lang.String id) {
this.id = id;
return this;
}
/**
* Sets the value of {@link TagAssociationConfig#getObjectName}
* @param objectName Specifies the object identifier for the tag association.
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/tag_association#object_name TagAssociation#object_name}
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder objectName(java.lang.String objectName) {
this.objectName = objectName;
return this;
}
/**
* Sets the value of {@link TagAssociationConfig#getSkipValidation}
* @param skipValidation If true, skips validation of the tag association.
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/tag_association#skip_validation TagAssociation#skip_validation}
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder skipValidation(java.lang.Boolean skipValidation) {
this.skipValidation = skipValidation;
return this;
}
/**
* Sets the value of {@link TagAssociationConfig#getSkipValidation}
* @param skipValidation If true, skips validation of the tag association.
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/tag_association#skip_validation TagAssociation#skip_validation}
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder skipValidation(com.hashicorp.cdktf.IResolvable skipValidation) {
this.skipValidation = skipValidation;
return this;
}
/**
* Sets the value of {@link TagAssociationConfig#getTimeouts}
* @param timeouts timeouts block.
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/tag_association#timeouts TagAssociation#timeouts}
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder timeouts(com.hashicorp.cdktf.providers.snowflake.tag_association.TagAssociationTimeouts timeouts) {
this.timeouts = timeouts;
return this;
}
/**
* Sets the value of {@link TagAssociationConfig#getConnection}
* @param connection the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder connection(com.hashicorp.cdktf.SSHProvisionerConnection connection) {
this.connection = connection;
return this;
}
/**
* Sets the value of {@link TagAssociationConfig#getConnection}
* @param connection the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder connection(com.hashicorp.cdktf.WinrmProvisionerConnection connection) {
this.connection = connection;
return this;
}
/**
* Sets the value of {@link TagAssociationConfig#getCount}
* @param count the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder count(java.lang.Number count) {
this.count = count;
return this;
}
/**
* Sets the value of {@link TagAssociationConfig#getCount}
* @param count the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder count(com.hashicorp.cdktf.TerraformCount count) {
this.count = count;
return this;
}
/**
* Sets the value of {@link TagAssociationConfig#getDependsOn}
* @param dependsOn the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@SuppressWarnings("unchecked")
public Builder dependsOn(java.util.List dependsOn) {
this.dependsOn = (java.util.List)dependsOn;
return this;
}
/**
* Sets the value of {@link TagAssociationConfig#getForEach}
* @param forEach the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder forEach(com.hashicorp.cdktf.ITerraformIterator forEach) {
this.forEach = forEach;
return this;
}
/**
* Sets the value of {@link TagAssociationConfig#getLifecycle}
* @param lifecycle the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder lifecycle(com.hashicorp.cdktf.TerraformResourceLifecycle lifecycle) {
this.lifecycle = lifecycle;
return this;
}
/**
* Sets the value of {@link TagAssociationConfig#getProvider}
* @param provider the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder provider(com.hashicorp.cdktf.TerraformProvider provider) {
this.provider = provider;
return this;
}
/**
* Sets the value of {@link TagAssociationConfig#getProvisioners}
* @param provisioners the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@SuppressWarnings("unchecked")
public Builder provisioners(java.util.List provisioners) {
this.provisioners = (java.util.List)provisioners;
return this;
}
/**
* Builds the configured instance.
* @return a new instance of {@link TagAssociationConfig}
* @throws NullPointerException if any required attribute was not provided
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@Override
public TagAssociationConfig build() {
return new Jsii$Proxy(this);
}
}
/**
* An implementation for {@link TagAssociationConfig}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@software.amazon.jsii.Internal
final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements TagAssociationConfig {
private final java.lang.Object objectIdentifier;
private final java.lang.String objectType;
private final java.lang.String tagId;
private final java.lang.String tagValue;
private final java.lang.String id;
private final java.lang.String objectName;
private final java.lang.Object skipValidation;
private final com.hashicorp.cdktf.providers.snowflake.tag_association.TagAssociationTimeouts timeouts;
private final java.lang.Object connection;
private final java.lang.Object count;
private final java.util.List dependsOn;
private final com.hashicorp.cdktf.ITerraformIterator forEach;
private final com.hashicorp.cdktf.TerraformResourceLifecycle lifecycle;
private final com.hashicorp.cdktf.TerraformProvider provider;
private final java.util.List provisioners;
/**
* Constructor that initializes the object based on values retrieved from the JsiiObject.
* @param objRef Reference to the JSII managed object.
*/
protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) {
super(objRef);
this.objectIdentifier = software.amazon.jsii.Kernel.get(this, "objectIdentifier", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.objectType = software.amazon.jsii.Kernel.get(this, "objectType", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.tagId = software.amazon.jsii.Kernel.get(this, "tagId", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.tagValue = software.amazon.jsii.Kernel.get(this, "tagValue", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.id = software.amazon.jsii.Kernel.get(this, "id", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.objectName = software.amazon.jsii.Kernel.get(this, "objectName", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.skipValidation = software.amazon.jsii.Kernel.get(this, "skipValidation", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.timeouts = software.amazon.jsii.Kernel.get(this, "timeouts", software.amazon.jsii.NativeType.forClass(com.hashicorp.cdktf.providers.snowflake.tag_association.TagAssociationTimeouts.class));
this.connection = software.amazon.jsii.Kernel.get(this, "connection", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.count = software.amazon.jsii.Kernel.get(this, "count", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.dependsOn = software.amazon.jsii.Kernel.get(this, "dependsOn", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(com.hashicorp.cdktf.ITerraformDependable.class)));
this.forEach = software.amazon.jsii.Kernel.get(this, "forEach", software.amazon.jsii.NativeType.forClass(com.hashicorp.cdktf.ITerraformIterator.class));
this.lifecycle = software.amazon.jsii.Kernel.get(this, "lifecycle", software.amazon.jsii.NativeType.forClass(com.hashicorp.cdktf.TerraformResourceLifecycle.class));
this.provider = software.amazon.jsii.Kernel.get(this, "provider", software.amazon.jsii.NativeType.forClass(com.hashicorp.cdktf.TerraformProvider.class));
this.provisioners = software.amazon.jsii.Kernel.get(this, "provisioners", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(java.lang.Object.class)));
}
/**
* Constructor that initializes the object based on literal property values passed by the {@link Builder}.
*/
@SuppressWarnings("unchecked")
protected Jsii$Proxy(final Builder builder) {
super(software.amazon.jsii.JsiiObject.InitializationMode.JSII);
this.objectIdentifier = java.util.Objects.requireNonNull(builder.objectIdentifier, "objectIdentifier is required");
this.objectType = java.util.Objects.requireNonNull(builder.objectType, "objectType is required");
this.tagId = java.util.Objects.requireNonNull(builder.tagId, "tagId is required");
this.tagValue = java.util.Objects.requireNonNull(builder.tagValue, "tagValue is required");
this.id = builder.id;
this.objectName = builder.objectName;
this.skipValidation = builder.skipValidation;
this.timeouts = builder.timeouts;
this.connection = builder.connection;
this.count = builder.count;
this.dependsOn = (java.util.List)builder.dependsOn;
this.forEach = builder.forEach;
this.lifecycle = builder.lifecycle;
this.provider = builder.provider;
this.provisioners = (java.util.List)builder.provisioners;
}
@Override
public final java.lang.Object getObjectIdentifier() {
return this.objectIdentifier;
}
@Override
public final java.lang.String getObjectType() {
return this.objectType;
}
@Override
public final java.lang.String getTagId() {
return this.tagId;
}
@Override
public final java.lang.String getTagValue() {
return this.tagValue;
}
@Override
public final java.lang.String getId() {
return this.id;
}
@Override
public final java.lang.String getObjectName() {
return this.objectName;
}
@Override
public final java.lang.Object getSkipValidation() {
return this.skipValidation;
}
@Override
public final com.hashicorp.cdktf.providers.snowflake.tag_association.TagAssociationTimeouts getTimeouts() {
return this.timeouts;
}
@Override
public final java.lang.Object getConnection() {
return this.connection;
}
@Override
public final java.lang.Object getCount() {
return this.count;
}
@Override
public final java.util.List getDependsOn() {
return this.dependsOn;
}
@Override
public final com.hashicorp.cdktf.ITerraformIterator getForEach() {
return this.forEach;
}
@Override
public final com.hashicorp.cdktf.TerraformResourceLifecycle getLifecycle() {
return this.lifecycle;
}
@Override
public final com.hashicorp.cdktf.TerraformProvider getProvider() {
return this.provider;
}
@Override
public final java.util.List getProvisioners() {
return this.provisioners;
}
@Override
@software.amazon.jsii.Internal
public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() {
final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE;
final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
data.set("objectIdentifier", om.valueToTree(this.getObjectIdentifier()));
data.set("objectType", om.valueToTree(this.getObjectType()));
data.set("tagId", om.valueToTree(this.getTagId()));
data.set("tagValue", om.valueToTree(this.getTagValue()));
if (this.getId() != null) {
data.set("id", om.valueToTree(this.getId()));
}
if (this.getObjectName() != null) {
data.set("objectName", om.valueToTree(this.getObjectName()));
}
if (this.getSkipValidation() != null) {
data.set("skipValidation", om.valueToTree(this.getSkipValidation()));
}
if (this.getTimeouts() != null) {
data.set("timeouts", om.valueToTree(this.getTimeouts()));
}
if (this.getConnection() != null) {
data.set("connection", om.valueToTree(this.getConnection()));
}
if (this.getCount() != null) {
data.set("count", om.valueToTree(this.getCount()));
}
if (this.getDependsOn() != null) {
data.set("dependsOn", om.valueToTree(this.getDependsOn()));
}
if (this.getForEach() != null) {
data.set("forEach", om.valueToTree(this.getForEach()));
}
if (this.getLifecycle() != null) {
data.set("lifecycle", om.valueToTree(this.getLifecycle()));
}
if (this.getProvider() != null) {
data.set("provider", om.valueToTree(this.getProvider()));
}
if (this.getProvisioners() != null) {
data.set("provisioners", om.valueToTree(this.getProvisioners()));
}
final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
struct.set("fqn", om.valueToTree("@cdktf/provider-snowflake.tagAssociation.TagAssociationConfig"));
struct.set("data", data);
final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
obj.set("$jsii.struct", struct);
return obj;
}
@Override
public final boolean equals(final Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
TagAssociationConfig.Jsii$Proxy that = (TagAssociationConfig.Jsii$Proxy) o;
if (!objectIdentifier.equals(that.objectIdentifier)) return false;
if (!objectType.equals(that.objectType)) return false;
if (!tagId.equals(that.tagId)) return false;
if (!tagValue.equals(that.tagValue)) return false;
if (this.id != null ? !this.id.equals(that.id) : that.id != null) return false;
if (this.objectName != null ? !this.objectName.equals(that.objectName) : that.objectName != null) return false;
if (this.skipValidation != null ? !this.skipValidation.equals(that.skipValidation) : that.skipValidation != null) return false;
if (this.timeouts != null ? !this.timeouts.equals(that.timeouts) : that.timeouts != null) return false;
if (this.connection != null ? !this.connection.equals(that.connection) : that.connection != null) return false;
if (this.count != null ? !this.count.equals(that.count) : that.count != null) return false;
if (this.dependsOn != null ? !this.dependsOn.equals(that.dependsOn) : that.dependsOn != null) return false;
if (this.forEach != null ? !this.forEach.equals(that.forEach) : that.forEach != null) return false;
if (this.lifecycle != null ? !this.lifecycle.equals(that.lifecycle) : that.lifecycle != null) return false;
if (this.provider != null ? !this.provider.equals(that.provider) : that.provider != null) return false;
return this.provisioners != null ? this.provisioners.equals(that.provisioners) : that.provisioners == null;
}
@Override
public final int hashCode() {
int result = this.objectIdentifier.hashCode();
result = 31 * result + (this.objectType.hashCode());
result = 31 * result + (this.tagId.hashCode());
result = 31 * result + (this.tagValue.hashCode());
result = 31 * result + (this.id != null ? this.id.hashCode() : 0);
result = 31 * result + (this.objectName != null ? this.objectName.hashCode() : 0);
result = 31 * result + (this.skipValidation != null ? this.skipValidation.hashCode() : 0);
result = 31 * result + (this.timeouts != null ? this.timeouts.hashCode() : 0);
result = 31 * result + (this.connection != null ? this.connection.hashCode() : 0);
result = 31 * result + (this.count != null ? this.count.hashCode() : 0);
result = 31 * result + (this.dependsOn != null ? this.dependsOn.hashCode() : 0);
result = 31 * result + (this.forEach != null ? this.forEach.hashCode() : 0);
result = 31 * result + (this.lifecycle != null ? this.lifecycle.hashCode() : 0);
result = 31 * result + (this.provider != null ? this.provider.hashCode() : 0);
result = 31 * result + (this.provisioners != null ? this.provisioners.hashCode() : 0);
return result;
}
}
}