com.hashicorp.cdktf.StackManifest Maven / Gradle / Ivy
package com.hashicorp.cdktf;
/**
*/
@javax.annotation.Generated(value = "jsii-pacmak/1.79.0 (build b22f628)", date = "2023-07-26T11:31:27.646Z")
@software.amazon.jsii.Jsii(module = com.hashicorp.cdktf.$Module.class, fqn = "cdktf.StackManifest")
@software.amazon.jsii.Jsii.Proxy(StackManifest.Jsii$Proxy.class)
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public interface StackManifest extends software.amazon.jsii.JsiiSerializable {
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@org.jetbrains.annotations.NotNull java.util.List getAnnotations();
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@org.jetbrains.annotations.NotNull java.lang.String getConstructPath();
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@org.jetbrains.annotations.NotNull java.util.List getDependencies();
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@org.jetbrains.annotations.NotNull java.lang.String getName();
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@org.jetbrains.annotations.NotNull java.lang.String getSynthesizedStackPath();
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@org.jetbrains.annotations.NotNull java.lang.String getWorkingDirectory();
/**
* @return a {@link Builder} of {@link StackManifest}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
static Builder builder() {
return new Builder();
}
/**
* A builder for {@link StackManifest}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public static final class Builder implements software.amazon.jsii.Builder {
java.util.List annotations;
java.lang.String constructPath;
java.util.List dependencies;
java.lang.String name;
java.lang.String synthesizedStackPath;
java.lang.String workingDirectory;
/**
* Sets the value of {@link StackManifest#getAnnotations}
* @param annotations the value to be set. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@SuppressWarnings("unchecked")
public Builder annotations(java.util.List extends com.hashicorp.cdktf.StackAnnotation> annotations) {
this.annotations = (java.util.List)annotations;
return this;
}
/**
* Sets the value of {@link StackManifest#getConstructPath}
* @param constructPath the value to be set. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder constructPath(java.lang.String constructPath) {
this.constructPath = constructPath;
return this;
}
/**
* Sets the value of {@link StackManifest#getDependencies}
* @param dependencies the value to be set. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder dependencies(java.util.List dependencies) {
this.dependencies = dependencies;
return this;
}
/**
* Sets the value of {@link StackManifest#getName}
* @param name the value to be set. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder name(java.lang.String name) {
this.name = name;
return this;
}
/**
* Sets the value of {@link StackManifest#getSynthesizedStackPath}
* @param synthesizedStackPath the value to be set. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder synthesizedStackPath(java.lang.String synthesizedStackPath) {
this.synthesizedStackPath = synthesizedStackPath;
return this;
}
/**
* Sets the value of {@link StackManifest#getWorkingDirectory}
* @param workingDirectory the value to be set. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder workingDirectory(java.lang.String workingDirectory) {
this.workingDirectory = workingDirectory;
return this;
}
/**
* Builds the configured instance.
* @return a new instance of {@link StackManifest}
* @throws NullPointerException if any required attribute was not provided
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@Override
public StackManifest build() {
return new Jsii$Proxy(this);
}
}
/**
* An implementation for {@link StackManifest}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@software.amazon.jsii.Internal
final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements StackManifest {
private final java.util.List annotations;
private final java.lang.String constructPath;
private final java.util.List dependencies;
private final java.lang.String name;
private final java.lang.String synthesizedStackPath;
private final java.lang.String workingDirectory;
/**
* 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.annotations = software.amazon.jsii.Kernel.get(this, "annotations", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(com.hashicorp.cdktf.StackAnnotation.class)));
this.constructPath = software.amazon.jsii.Kernel.get(this, "constructPath", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.dependencies = software.amazon.jsii.Kernel.get(this, "dependencies", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(java.lang.String.class)));
this.name = software.amazon.jsii.Kernel.get(this, "name", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.synthesizedStackPath = software.amazon.jsii.Kernel.get(this, "synthesizedStackPath", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.workingDirectory = software.amazon.jsii.Kernel.get(this, "workingDirectory", software.amazon.jsii.NativeType.forClass(java.lang.String.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.annotations = (java.util.List)java.util.Objects.requireNonNull(builder.annotations, "annotations is required");
this.constructPath = java.util.Objects.requireNonNull(builder.constructPath, "constructPath is required");
this.dependencies = java.util.Objects.requireNonNull(builder.dependencies, "dependencies is required");
this.name = java.util.Objects.requireNonNull(builder.name, "name is required");
this.synthesizedStackPath = java.util.Objects.requireNonNull(builder.synthesizedStackPath, "synthesizedStackPath is required");
this.workingDirectory = java.util.Objects.requireNonNull(builder.workingDirectory, "workingDirectory is required");
}
@Override
public final java.util.List getAnnotations() {
return this.annotations;
}
@Override
public final java.lang.String getConstructPath() {
return this.constructPath;
}
@Override
public final java.util.List getDependencies() {
return this.dependencies;
}
@Override
public final java.lang.String getName() {
return this.name;
}
@Override
public final java.lang.String getSynthesizedStackPath() {
return this.synthesizedStackPath;
}
@Override
public final java.lang.String getWorkingDirectory() {
return this.workingDirectory;
}
@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("annotations", om.valueToTree(this.getAnnotations()));
data.set("constructPath", om.valueToTree(this.getConstructPath()));
data.set("dependencies", om.valueToTree(this.getDependencies()));
data.set("name", om.valueToTree(this.getName()));
data.set("synthesizedStackPath", om.valueToTree(this.getSynthesizedStackPath()));
data.set("workingDirectory", om.valueToTree(this.getWorkingDirectory()));
final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
struct.set("fqn", om.valueToTree("cdktf.StackManifest"));
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;
StackManifest.Jsii$Proxy that = (StackManifest.Jsii$Proxy) o;
if (!annotations.equals(that.annotations)) return false;
if (!constructPath.equals(that.constructPath)) return false;
if (!dependencies.equals(that.dependencies)) return false;
if (!name.equals(that.name)) return false;
if (!synthesizedStackPath.equals(that.synthesizedStackPath)) return false;
return this.workingDirectory.equals(that.workingDirectory);
}
@Override
public final int hashCode() {
int result = this.annotations.hashCode();
result = 31 * result + (this.constructPath.hashCode());
result = 31 * result + (this.dependencies.hashCode());
result = 31 * result + (this.name.hashCode());
result = 31 * result + (this.synthesizedStackPath.hashCode());
result = 31 * result + (this.workingDirectory.hashCode());
return result;
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy