com.pulumi.azure.network.outputs.NetworkConnectionMonitorTestConfiguration Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of azure Show documentation
Show all versions of azure Show documentation
A Pulumi package for creating and managing Microsoft Azure cloud resources, based on the Terraform azurerm provider. We recommend using the [Azure Native provider](https://github.com/pulumi/pulumi-azure-native) to provision Azure infrastructure. Azure Native provides complete coverage of Azure resources and same-day access to new resources and resource updates.
// *** 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.azure.network.outputs;
import com.pulumi.azure.network.outputs.NetworkConnectionMonitorTestConfigurationHttpConfiguration;
import com.pulumi.azure.network.outputs.NetworkConnectionMonitorTestConfigurationIcmpConfiguration;
import com.pulumi.azure.network.outputs.NetworkConnectionMonitorTestConfigurationSuccessThreshold;
import com.pulumi.azure.network.outputs.NetworkConnectionMonitorTestConfigurationTcpConfiguration;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Integer;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
@CustomType
public final class NetworkConnectionMonitorTestConfiguration {
/**
* @return A `http_configuration` block as defined below.
*
*/
private @Nullable NetworkConnectionMonitorTestConfigurationHttpConfiguration httpConfiguration;
/**
* @return A `icmp_configuration` block as defined below.
*
*/
private @Nullable NetworkConnectionMonitorTestConfigurationIcmpConfiguration icmpConfiguration;
/**
* @return The name of test configuration for the Network Connection Monitor.
*
*/
private String name;
/**
* @return The preferred IP version which is used in the test evaluation. Possible values are `IPv4` and `IPv6`.
*
*/
private @Nullable String preferredIpVersion;
/**
* @return The protocol used to evaluate tests. Possible values are `Tcp`, `Http` and `Icmp`.
*
*/
private String protocol;
/**
* @return A `success_threshold` block as defined below.
*
*/
private @Nullable NetworkConnectionMonitorTestConfigurationSuccessThreshold successThreshold;
/**
* @return A `tcp_configuration` block as defined below.
*
*/
private @Nullable NetworkConnectionMonitorTestConfigurationTcpConfiguration tcpConfiguration;
/**
* @return The time interval in seconds at which the test evaluation will happen. Defaults to `60`.
*
*/
private @Nullable Integer testFrequencyInSeconds;
private NetworkConnectionMonitorTestConfiguration() {}
/**
* @return A `http_configuration` block as defined below.
*
*/
public Optional httpConfiguration() {
return Optional.ofNullable(this.httpConfiguration);
}
/**
* @return A `icmp_configuration` block as defined below.
*
*/
public Optional icmpConfiguration() {
return Optional.ofNullable(this.icmpConfiguration);
}
/**
* @return The name of test configuration for the Network Connection Monitor.
*
*/
public String name() {
return this.name;
}
/**
* @return The preferred IP version which is used in the test evaluation. Possible values are `IPv4` and `IPv6`.
*
*/
public Optional preferredIpVersion() {
return Optional.ofNullable(this.preferredIpVersion);
}
/**
* @return The protocol used to evaluate tests. Possible values are `Tcp`, `Http` and `Icmp`.
*
*/
public String protocol() {
return this.protocol;
}
/**
* @return A `success_threshold` block as defined below.
*
*/
public Optional successThreshold() {
return Optional.ofNullable(this.successThreshold);
}
/**
* @return A `tcp_configuration` block as defined below.
*
*/
public Optional tcpConfiguration() {
return Optional.ofNullable(this.tcpConfiguration);
}
/**
* @return The time interval in seconds at which the test evaluation will happen. Defaults to `60`.
*
*/
public Optional testFrequencyInSeconds() {
return Optional.ofNullable(this.testFrequencyInSeconds);
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(NetworkConnectionMonitorTestConfiguration defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private @Nullable NetworkConnectionMonitorTestConfigurationHttpConfiguration httpConfiguration;
private @Nullable NetworkConnectionMonitorTestConfigurationIcmpConfiguration icmpConfiguration;
private String name;
private @Nullable String preferredIpVersion;
private String protocol;
private @Nullable NetworkConnectionMonitorTestConfigurationSuccessThreshold successThreshold;
private @Nullable NetworkConnectionMonitorTestConfigurationTcpConfiguration tcpConfiguration;
private @Nullable Integer testFrequencyInSeconds;
public Builder() {}
public Builder(NetworkConnectionMonitorTestConfiguration defaults) {
Objects.requireNonNull(defaults);
this.httpConfiguration = defaults.httpConfiguration;
this.icmpConfiguration = defaults.icmpConfiguration;
this.name = defaults.name;
this.preferredIpVersion = defaults.preferredIpVersion;
this.protocol = defaults.protocol;
this.successThreshold = defaults.successThreshold;
this.tcpConfiguration = defaults.tcpConfiguration;
this.testFrequencyInSeconds = defaults.testFrequencyInSeconds;
}
@CustomType.Setter
public Builder httpConfiguration(@Nullable NetworkConnectionMonitorTestConfigurationHttpConfiguration httpConfiguration) {
this.httpConfiguration = httpConfiguration;
return this;
}
@CustomType.Setter
public Builder icmpConfiguration(@Nullable NetworkConnectionMonitorTestConfigurationIcmpConfiguration icmpConfiguration) {
this.icmpConfiguration = icmpConfiguration;
return this;
}
@CustomType.Setter
public Builder name(String name) {
if (name == null) {
throw new MissingRequiredPropertyException("NetworkConnectionMonitorTestConfiguration", "name");
}
this.name = name;
return this;
}
@CustomType.Setter
public Builder preferredIpVersion(@Nullable String preferredIpVersion) {
this.preferredIpVersion = preferredIpVersion;
return this;
}
@CustomType.Setter
public Builder protocol(String protocol) {
if (protocol == null) {
throw new MissingRequiredPropertyException("NetworkConnectionMonitorTestConfiguration", "protocol");
}
this.protocol = protocol;
return this;
}
@CustomType.Setter
public Builder successThreshold(@Nullable NetworkConnectionMonitorTestConfigurationSuccessThreshold successThreshold) {
this.successThreshold = successThreshold;
return this;
}
@CustomType.Setter
public Builder tcpConfiguration(@Nullable NetworkConnectionMonitorTestConfigurationTcpConfiguration tcpConfiguration) {
this.tcpConfiguration = tcpConfiguration;
return this;
}
@CustomType.Setter
public Builder testFrequencyInSeconds(@Nullable Integer testFrequencyInSeconds) {
this.testFrequencyInSeconds = testFrequencyInSeconds;
return this;
}
public NetworkConnectionMonitorTestConfiguration build() {
final var _resultValue = new NetworkConnectionMonitorTestConfiguration();
_resultValue.httpConfiguration = httpConfiguration;
_resultValue.icmpConfiguration = icmpConfiguration;
_resultValue.name = name;
_resultValue.preferredIpVersion = preferredIpVersion;
_resultValue.protocol = protocol;
_resultValue.successThreshold = successThreshold;
_resultValue.tcpConfiguration = tcpConfiguration;
_resultValue.testFrequencyInSeconds = testFrequencyInSeconds;
return _resultValue;
}
}
}