com.hashicorp.cdktf.RemoteBackendConfig 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
package com.hashicorp.cdktf;
/**
*/
@javax.annotation.Generated(value = "jsii-pacmak/1.98.0 (build 00b106d)", date = "2024-05-28T19:32:20.132Z")
@software.amazon.jsii.Jsii(module = com.hashicorp.cdktf.$Module.class, fqn = "cdktf.RemoteBackendConfig")
@software.amazon.jsii.Jsii.Proxy(RemoteBackendConfig.Jsii$Proxy.class)
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public interface RemoteBackendConfig extends software.amazon.jsii.JsiiSerializable {
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@org.jetbrains.annotations.NotNull java.lang.String getOrganization();
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@org.jetbrains.annotations.NotNull com.hashicorp.cdktf.IRemoteWorkspace getWorkspaces();
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
default @org.jetbrains.annotations.Nullable java.lang.String getHostname() {
return null;
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
default @org.jetbrains.annotations.Nullable java.lang.String getToken() {
return null;
}
/**
* @return a {@link Builder} of {@link RemoteBackendConfig}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
static Builder builder() {
return new Builder();
}
/**
* A builder for {@link RemoteBackendConfig}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public static final class Builder implements software.amazon.jsii.Builder {
java.lang.String organization;
com.hashicorp.cdktf.IRemoteWorkspace workspaces;
java.lang.String hostname;
java.lang.String token;
/**
* Sets the value of {@link RemoteBackendConfig#getOrganization}
* @param organization the value to be set. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder organization(java.lang.String organization) {
this.organization = organization;
return this;
}
/**
* Sets the value of {@link RemoteBackendConfig#getWorkspaces}
* @param workspaces the value to be set. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder workspaces(com.hashicorp.cdktf.IRemoteWorkspace workspaces) {
this.workspaces = workspaces;
return this;
}
/**
* Sets the value of {@link RemoteBackendConfig#getHostname}
* @param hostname the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder hostname(java.lang.String hostname) {
this.hostname = hostname;
return this;
}
/**
* Sets the value of {@link RemoteBackendConfig#getToken}
* @param token the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder token(java.lang.String token) {
this.token = token;
return this;
}
/**
* Builds the configured instance.
* @return a new instance of {@link RemoteBackendConfig}
* @throws NullPointerException if any required attribute was not provided
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@Override
public RemoteBackendConfig build() {
return new Jsii$Proxy(this);
}
}
/**
* An implementation for {@link RemoteBackendConfig}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@software.amazon.jsii.Internal
final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements RemoteBackendConfig {
private final java.lang.String organization;
private final com.hashicorp.cdktf.IRemoteWorkspace workspaces;
private final java.lang.String hostname;
private final java.lang.String token;
/**
* 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.organization = software.amazon.jsii.Kernel.get(this, "organization", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.workspaces = software.amazon.jsii.Kernel.get(this, "workspaces", software.amazon.jsii.NativeType.forClass(com.hashicorp.cdktf.IRemoteWorkspace.class));
this.hostname = software.amazon.jsii.Kernel.get(this, "hostname", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.token = software.amazon.jsii.Kernel.get(this, "token", software.amazon.jsii.NativeType.forClass(java.lang.String.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.organization = java.util.Objects.requireNonNull(builder.organization, "organization is required");
this.workspaces = java.util.Objects.requireNonNull(builder.workspaces, "workspaces is required");
this.hostname = builder.hostname;
this.token = builder.token;
}
@Override
public final java.lang.String getOrganization() {
return this.organization;
}
@Override
public final com.hashicorp.cdktf.IRemoteWorkspace getWorkspaces() {
return this.workspaces;
}
@Override
public final java.lang.String getHostname() {
return this.hostname;
}
@Override
public final java.lang.String getToken() {
return this.token;
}
@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("organization", om.valueToTree(this.getOrganization()));
data.set("workspaces", om.valueToTree(this.getWorkspaces()));
if (this.getHostname() != null) {
data.set("hostname", om.valueToTree(this.getHostname()));
}
if (this.getToken() != null) {
data.set("token", om.valueToTree(this.getToken()));
}
final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
struct.set("fqn", om.valueToTree("cdktf.RemoteBackendConfig"));
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;
RemoteBackendConfig.Jsii$Proxy that = (RemoteBackendConfig.Jsii$Proxy) o;
if (!organization.equals(that.organization)) return false;
if (!workspaces.equals(that.workspaces)) return false;
if (this.hostname != null ? !this.hostname.equals(that.hostname) : that.hostname != null) return false;
return this.token != null ? this.token.equals(that.token) : that.token == null;
}
@Override
public final int hashCode() {
int result = this.organization.hashCode();
result = 31 * result + (this.workspaces.hashCode());
result = 31 * result + (this.hostname != null ? this.hostname.hashCode() : 0);
result = 31 * result + (this.token != null ? this.token.hashCode() : 0);
return result;
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy