com.hashicorp.cdktf.TerraformResourceMoveByTarget Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of cdktf Show documentation
Show all versions of cdktf Show documentation
Cloud Development Kit for Terraform
The newest version!
package com.hashicorp.cdktf;
/**
*/
@javax.annotation.Generated(value = "jsii-pacmak/1.102.0 (build e354887)", date = "2024-11-11T10:07:42.162Z")
@software.amazon.jsii.Jsii(module = com.hashicorp.cdktf.$Module.class, fqn = "cdktf.TerraformResourceMoveByTarget")
@software.amazon.jsii.Jsii.Proxy(TerraformResourceMoveByTarget.Jsii$Proxy.class)
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public interface TerraformResourceMoveByTarget extends software.amazon.jsii.JsiiSerializable {
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@org.jetbrains.annotations.NotNull java.lang.String getMoveTarget();
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
default @org.jetbrains.annotations.Nullable java.lang.Object getIndex() {
return null;
}
/**
* @return a {@link Builder} of {@link TerraformResourceMoveByTarget}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
static Builder builder() {
return new Builder();
}
/**
* A builder for {@link TerraformResourceMoveByTarget}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public static final class Builder implements software.amazon.jsii.Builder {
java.lang.String moveTarget;
java.lang.Object index;
/**
* Sets the value of {@link TerraformResourceMoveByTarget#getMoveTarget}
* @param moveTarget the value to be set. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder moveTarget(java.lang.String moveTarget) {
this.moveTarget = moveTarget;
return this;
}
/**
* Sets the value of {@link TerraformResourceMoveByTarget#getIndex}
* @param index the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder index(java.lang.String index) {
this.index = index;
return this;
}
/**
* Sets the value of {@link TerraformResourceMoveByTarget#getIndex}
* @param index the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder index(java.lang.Number index) {
this.index = index;
return this;
}
/**
* Builds the configured instance.
* @return a new instance of {@link TerraformResourceMoveByTarget}
* @throws NullPointerException if any required attribute was not provided
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@Override
public TerraformResourceMoveByTarget build() {
return new Jsii$Proxy(this);
}
}
/**
* An implementation for {@link TerraformResourceMoveByTarget}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@software.amazon.jsii.Internal
final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements TerraformResourceMoveByTarget {
private final java.lang.String moveTarget;
private final java.lang.Object index;
/**
* 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.moveTarget = software.amazon.jsii.Kernel.get(this, "moveTarget", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.index = software.amazon.jsii.Kernel.get(this, "index", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
* Constructor that initializes the object based on literal property values passed by the {@link Builder}.
*/
protected Jsii$Proxy(final Builder builder) {
super(software.amazon.jsii.JsiiObject.InitializationMode.JSII);
this.moveTarget = java.util.Objects.requireNonNull(builder.moveTarget, "moveTarget is required");
this.index = builder.index;
}
@Override
public final java.lang.String getMoveTarget() {
return this.moveTarget;
}
@Override
public final java.lang.Object getIndex() {
return this.index;
}
@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("moveTarget", om.valueToTree(this.getMoveTarget()));
if (this.getIndex() != null) {
data.set("index", om.valueToTree(this.getIndex()));
}
final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
struct.set("fqn", om.valueToTree("cdktf.TerraformResourceMoveByTarget"));
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;
TerraformResourceMoveByTarget.Jsii$Proxy that = (TerraformResourceMoveByTarget.Jsii$Proxy) o;
if (!moveTarget.equals(that.moveTarget)) return false;
return this.index != null ? this.index.equals(that.index) : that.index == null;
}
@Override
public final int hashCode() {
int result = this.moveTarget.hashCode();
result = 31 * result + (this.index != null ? this.index.hashCode() : 0);
return result;
}
}
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy