software.amazon.awscdk.services.ecs.EnvironmentFileConfig Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of ecs Show documentation
Show all versions of ecs Show documentation
The CDK Construct Library for AWS::ECS
package software.amazon.awscdk.services.ecs;
/**
* Configuration for the environment file.
*
* Example:
*
*
* // The code below shows an example of how to instantiate this type.
* // The values are placeholders you should change.
* import software.amazon.awscdk.services.ecs.*;
* EnvironmentFileConfig environmentFileConfig = EnvironmentFileConfig.builder()
* .fileType(EnvironmentFileType.S3)
* .s3Location(Location.builder()
* .bucketName("bucketName")
* .objectKey("objectKey")
* // the properties below are optional
* .objectVersion("objectVersion")
* .build())
* .build();
*
*/
@javax.annotation.Generated(value = "jsii-pacmak/1.52.1 (build 5ccc8f6)", date = "2022-01-20T19:50:05.574Z")
@software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.ecs.$Module.class, fqn = "@aws-cdk/aws-ecs.EnvironmentFileConfig")
@software.amazon.jsii.Jsii.Proxy(EnvironmentFileConfig.Jsii$Proxy.class)
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public interface EnvironmentFileConfig extends software.amazon.jsii.JsiiSerializable {
/**
* The type of environment file.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@org.jetbrains.annotations.NotNull software.amazon.awscdk.services.ecs.EnvironmentFileType getFileType();
/**
* The location of the environment file in S3.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@org.jetbrains.annotations.NotNull software.amazon.awscdk.services.s3.Location getS3Location();
/**
* @return a {@link Builder} of {@link EnvironmentFileConfig}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
static Builder builder() {
return new Builder();
}
/**
* A builder for {@link EnvironmentFileConfig}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static final class Builder implements software.amazon.jsii.Builder {
software.amazon.awscdk.services.ecs.EnvironmentFileType fileType;
software.amazon.awscdk.services.s3.Location s3Location;
/**
* Sets the value of {@link EnvironmentFileConfig#getFileType}
* @param fileType The type of environment file. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder fileType(software.amazon.awscdk.services.ecs.EnvironmentFileType fileType) {
this.fileType = fileType;
return this;
}
/**
* Sets the value of {@link EnvironmentFileConfig#getS3Location}
* @param s3Location The location of the environment file in S3. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder s3Location(software.amazon.awscdk.services.s3.Location s3Location) {
this.s3Location = s3Location;
return this;
}
/**
* Builds the configured instance.
* @return a new instance of {@link EnvironmentFileConfig}
* @throws NullPointerException if any required attribute was not provided
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@Override
public EnvironmentFileConfig build() {
return new Jsii$Proxy(this);
}
}
/**
* An implementation for {@link EnvironmentFileConfig}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@software.amazon.jsii.Internal
final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements EnvironmentFileConfig {
private final software.amazon.awscdk.services.ecs.EnvironmentFileType fileType;
private final software.amazon.awscdk.services.s3.Location s3Location;
/**
* 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.fileType = software.amazon.jsii.Kernel.get(this, "fileType", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.ecs.EnvironmentFileType.class));
this.s3Location = software.amazon.jsii.Kernel.get(this, "s3Location", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.s3.Location.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.fileType = java.util.Objects.requireNonNull(builder.fileType, "fileType is required");
this.s3Location = java.util.Objects.requireNonNull(builder.s3Location, "s3Location is required");
}
@Override
public final software.amazon.awscdk.services.ecs.EnvironmentFileType getFileType() {
return this.fileType;
}
@Override
public final software.amazon.awscdk.services.s3.Location getS3Location() {
return this.s3Location;
}
@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("fileType", om.valueToTree(this.getFileType()));
data.set("s3Location", om.valueToTree(this.getS3Location()));
final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
struct.set("fqn", om.valueToTree("@aws-cdk/aws-ecs.EnvironmentFileConfig"));
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;
EnvironmentFileConfig.Jsii$Proxy that = (EnvironmentFileConfig.Jsii$Proxy) o;
if (!fileType.equals(that.fileType)) return false;
return this.s3Location.equals(that.s3Location);
}
@Override
public final int hashCode() {
int result = this.fileType.hashCode();
result = 31 * result + (this.s3Location.hashCode());
return result;
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy