software.amazon.awscdk.services.ecs.AppMeshProxyConfigurationConfigProps 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;
/**
* The configuration to use when setting an App Mesh proxy configuration.
*/
@javax.annotation.Generated(value = "jsii-pacmak/1.29.0 (build 41df200)", date = "2021-05-25T18:24:56.990Z")
@software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.ecs.$Module.class, fqn = "@aws-cdk/aws-ecs.AppMeshProxyConfigurationConfigProps")
@software.amazon.jsii.Jsii.Proxy(AppMeshProxyConfigurationConfigProps.Jsii$Proxy.class)
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public interface AppMeshProxyConfigurationConfigProps extends software.amazon.jsii.JsiiSerializable {
/**
* The name of the container that will serve as the App Mesh proxy.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@org.jetbrains.annotations.NotNull java.lang.String getContainerName();
/**
* The set of network configuration parameters to provide the Container Network Interface (CNI) plugin.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@org.jetbrains.annotations.NotNull software.amazon.awscdk.services.ecs.AppMeshProxyConfigurationProps getProperties();
/**
* @return a {@link Builder} of {@link AppMeshProxyConfigurationConfigProps}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
static Builder builder() {
return new Builder();
}
/**
* A builder for {@link AppMeshProxyConfigurationConfigProps}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static final class Builder implements software.amazon.jsii.Builder {
private java.lang.String containerName;
private software.amazon.awscdk.services.ecs.AppMeshProxyConfigurationProps properties;
/**
* Sets the value of {@link AppMeshProxyConfigurationConfigProps#getContainerName}
* @param containerName The name of the container that will serve as the App Mesh proxy. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder containerName(java.lang.String containerName) {
this.containerName = containerName;
return this;
}
/**
* Sets the value of {@link AppMeshProxyConfigurationConfigProps#getProperties}
* @param properties The set of network configuration parameters to provide the Container Network Interface (CNI) plugin. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder properties(software.amazon.awscdk.services.ecs.AppMeshProxyConfigurationProps properties) {
this.properties = properties;
return this;
}
/**
* Builds the configured instance.
* @return a new instance of {@link AppMeshProxyConfigurationConfigProps}
* @throws NullPointerException if any required attribute was not provided
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@Override
public AppMeshProxyConfigurationConfigProps build() {
return new Jsii$Proxy(containerName, properties);
}
}
/**
* An implementation for {@link AppMeshProxyConfigurationConfigProps}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@software.amazon.jsii.Internal
final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements AppMeshProxyConfigurationConfigProps {
private final java.lang.String containerName;
private final software.amazon.awscdk.services.ecs.AppMeshProxyConfigurationProps properties;
/**
* 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.containerName = software.amazon.jsii.Kernel.get(this, "containerName", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.properties = software.amazon.jsii.Kernel.get(this, "properties", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.services.ecs.AppMeshProxyConfigurationProps.class));
}
/**
* Constructor that initializes the object based on literal property values passed by the {@link Builder}.
*/
protected Jsii$Proxy(final java.lang.String containerName, final software.amazon.awscdk.services.ecs.AppMeshProxyConfigurationProps properties) {
super(software.amazon.jsii.JsiiObject.InitializationMode.JSII);
this.containerName = java.util.Objects.requireNonNull(containerName, "containerName is required");
this.properties = java.util.Objects.requireNonNull(properties, "properties is required");
}
@Override
public final java.lang.String getContainerName() {
return this.containerName;
}
@Override
public final software.amazon.awscdk.services.ecs.AppMeshProxyConfigurationProps getProperties() {
return this.properties;
}
@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("containerName", om.valueToTree(this.getContainerName()));
data.set("properties", om.valueToTree(this.getProperties()));
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.AppMeshProxyConfigurationConfigProps"));
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;
AppMeshProxyConfigurationConfigProps.Jsii$Proxy that = (AppMeshProxyConfigurationConfigProps.Jsii$Proxy) o;
if (!containerName.equals(that.containerName)) return false;
return this.properties.equals(that.properties);
}
@Override
public final int hashCode() {
int result = this.containerName.hashCode();
result = 31 * result + (this.properties.hashCode());
return result;
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy