
com.pulumi.aws.vpclattice.outputs.TargetGroupConfig Maven / Gradle / Ivy
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package com.pulumi.aws.vpclattice.outputs;
import com.pulumi.aws.vpclattice.outputs.TargetGroupConfigHealthCheck;
import com.pulumi.core.annotations.CustomType;
import java.lang.Integer;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
@CustomType
public final class TargetGroupConfig {
/**
* @return The health check configuration.
*
*/
private @Nullable TargetGroupConfigHealthCheck healthCheck;
/**
* @return The type of IP address used for the target group. Valid values: `IPV4` | `IPV6`.
*
*/
private @Nullable String ipAddressType;
/**
* @return The version of the event structure that the Lambda function receives. Supported only if `type` is `LAMBDA`. Valid Values are `V1` | `V2`.
*
*/
private @Nullable String lambdaEventStructureVersion;
/**
* @return The port on which the targets are listening.
*
*/
private @Nullable Integer port;
/**
* @return The protocol to use for routing traffic to the targets. Valid Values are `HTTP` | `HTTPS`.
*
*/
private @Nullable String protocol;
/**
* @return The protocol version. Valid Values are `HTTP1` | `HTTP2` | `GRPC`. Default value is `HTTP1`.
*
*/
private @Nullable String protocolVersion;
/**
* @return The ID of the VPC.
*
*/
private @Nullable String vpcIdentifier;
private TargetGroupConfig() {}
/**
* @return The health check configuration.
*
*/
public Optional healthCheck() {
return Optional.ofNullable(this.healthCheck);
}
/**
* @return The type of IP address used for the target group. Valid values: `IPV4` | `IPV6`.
*
*/
public Optional ipAddressType() {
return Optional.ofNullable(this.ipAddressType);
}
/**
* @return The version of the event structure that the Lambda function receives. Supported only if `type` is `LAMBDA`. Valid Values are `V1` | `V2`.
*
*/
public Optional lambdaEventStructureVersion() {
return Optional.ofNullable(this.lambdaEventStructureVersion);
}
/**
* @return The port on which the targets are listening.
*
*/
public Optional port() {
return Optional.ofNullable(this.port);
}
/**
* @return The protocol to use for routing traffic to the targets. Valid Values are `HTTP` | `HTTPS`.
*
*/
public Optional protocol() {
return Optional.ofNullable(this.protocol);
}
/**
* @return The protocol version. Valid Values are `HTTP1` | `HTTP2` | `GRPC`. Default value is `HTTP1`.
*
*/
public Optional protocolVersion() {
return Optional.ofNullable(this.protocolVersion);
}
/**
* @return The ID of the VPC.
*
*/
public Optional vpcIdentifier() {
return Optional.ofNullable(this.vpcIdentifier);
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(TargetGroupConfig defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private @Nullable TargetGroupConfigHealthCheck healthCheck;
private @Nullable String ipAddressType;
private @Nullable String lambdaEventStructureVersion;
private @Nullable Integer port;
private @Nullable String protocol;
private @Nullable String protocolVersion;
private @Nullable String vpcIdentifier;
public Builder() {}
public Builder(TargetGroupConfig defaults) {
Objects.requireNonNull(defaults);
this.healthCheck = defaults.healthCheck;
this.ipAddressType = defaults.ipAddressType;
this.lambdaEventStructureVersion = defaults.lambdaEventStructureVersion;
this.port = defaults.port;
this.protocol = defaults.protocol;
this.protocolVersion = defaults.protocolVersion;
this.vpcIdentifier = defaults.vpcIdentifier;
}
@CustomType.Setter
public Builder healthCheck(@Nullable TargetGroupConfigHealthCheck healthCheck) {
this.healthCheck = healthCheck;
return this;
}
@CustomType.Setter
public Builder ipAddressType(@Nullable String ipAddressType) {
this.ipAddressType = ipAddressType;
return this;
}
@CustomType.Setter
public Builder lambdaEventStructureVersion(@Nullable String lambdaEventStructureVersion) {
this.lambdaEventStructureVersion = lambdaEventStructureVersion;
return this;
}
@CustomType.Setter
public Builder port(@Nullable Integer port) {
this.port = port;
return this;
}
@CustomType.Setter
public Builder protocol(@Nullable String protocol) {
this.protocol = protocol;
return this;
}
@CustomType.Setter
public Builder protocolVersion(@Nullable String protocolVersion) {
this.protocolVersion = protocolVersion;
return this;
}
@CustomType.Setter
public Builder vpcIdentifier(@Nullable String vpcIdentifier) {
this.vpcIdentifier = vpcIdentifier;
return this;
}
public TargetGroupConfig build() {
final var _resultValue = new TargetGroupConfig();
_resultValue.healthCheck = healthCheck;
_resultValue.ipAddressType = ipAddressType;
_resultValue.lambdaEventStructureVersion = lambdaEventStructureVersion;
_resultValue.port = port;
_resultValue.protocol = protocol;
_resultValue.protocolVersion = protocolVersion;
_resultValue.vpcIdentifier = vpcIdentifier;
return _resultValue;
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy