com.pulumi.aws.appmesh.outputs.VirtualNodeSpec Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of aws Show documentation
Show all versions of aws Show documentation
A Pulumi package for creating and managing Amazon Web Services (AWS) cloud resources.
// *** 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.appmesh.outputs;
import com.pulumi.aws.appmesh.outputs.VirtualNodeSpecBackend;
import com.pulumi.aws.appmesh.outputs.VirtualNodeSpecBackendDefaults;
import com.pulumi.aws.appmesh.outputs.VirtualNodeSpecListener;
import com.pulumi.aws.appmesh.outputs.VirtualNodeSpecLogging;
import com.pulumi.aws.appmesh.outputs.VirtualNodeSpecServiceDiscovery;
import com.pulumi.core.annotations.CustomType;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
@CustomType
public final class VirtualNodeSpec {
/**
* @return Defaults for backends.
*
*/
private @Nullable VirtualNodeSpecBackendDefaults backendDefaults;
/**
* @return Backends to which the virtual node is expected to send outbound traffic.
*
*/
private @Nullable List backends;
/**
* @return Listeners from which the virtual node is expected to receive inbound traffic.
*
*/
private @Nullable List listeners;
/**
* @return Inbound and outbound access logging information for the virtual node.
*
*/
private @Nullable VirtualNodeSpecLogging logging;
/**
* @return Service discovery information for the virtual node.
*
*/
private @Nullable VirtualNodeSpecServiceDiscovery serviceDiscovery;
private VirtualNodeSpec() {}
/**
* @return Defaults for backends.
*
*/
public Optional backendDefaults() {
return Optional.ofNullable(this.backendDefaults);
}
/**
* @return Backends to which the virtual node is expected to send outbound traffic.
*
*/
public List backends() {
return this.backends == null ? List.of() : this.backends;
}
/**
* @return Listeners from which the virtual node is expected to receive inbound traffic.
*
*/
public List listeners() {
return this.listeners == null ? List.of() : this.listeners;
}
/**
* @return Inbound and outbound access logging information for the virtual node.
*
*/
public Optional logging() {
return Optional.ofNullable(this.logging);
}
/**
* @return Service discovery information for the virtual node.
*
*/
public Optional serviceDiscovery() {
return Optional.ofNullable(this.serviceDiscovery);
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(VirtualNodeSpec defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private @Nullable VirtualNodeSpecBackendDefaults backendDefaults;
private @Nullable List backends;
private @Nullable List listeners;
private @Nullable VirtualNodeSpecLogging logging;
private @Nullable VirtualNodeSpecServiceDiscovery serviceDiscovery;
public Builder() {}
public Builder(VirtualNodeSpec defaults) {
Objects.requireNonNull(defaults);
this.backendDefaults = defaults.backendDefaults;
this.backends = defaults.backends;
this.listeners = defaults.listeners;
this.logging = defaults.logging;
this.serviceDiscovery = defaults.serviceDiscovery;
}
@CustomType.Setter
public Builder backendDefaults(@Nullable VirtualNodeSpecBackendDefaults backendDefaults) {
this.backendDefaults = backendDefaults;
return this;
}
@CustomType.Setter
public Builder backends(@Nullable List backends) {
this.backends = backends;
return this;
}
public Builder backends(VirtualNodeSpecBackend... backends) {
return backends(List.of(backends));
}
@CustomType.Setter
public Builder listeners(@Nullable List listeners) {
this.listeners = listeners;
return this;
}
public Builder listeners(VirtualNodeSpecListener... listeners) {
return listeners(List.of(listeners));
}
@CustomType.Setter
public Builder logging(@Nullable VirtualNodeSpecLogging logging) {
this.logging = logging;
return this;
}
@CustomType.Setter
public Builder serviceDiscovery(@Nullable VirtualNodeSpecServiceDiscovery serviceDiscovery) {
this.serviceDiscovery = serviceDiscovery;
return this;
}
public VirtualNodeSpec build() {
final var _resultValue = new VirtualNodeSpec();
_resultValue.backendDefaults = backendDefaults;
_resultValue.backends = backends;
_resultValue.listeners = listeners;
_resultValue.logging = logging;
_resultValue.serviceDiscovery = serviceDiscovery;
return _resultValue;
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy