com.pulumi.azurenative.iotoperationsmq.outputs.MqttBridgeRemoteBrokerConnectionSpecResponse Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of azure-native Show documentation
Show all versions of azure-native Show documentation
A native Pulumi package for creating and managing Azure 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.azurenative.iotoperationsmq.outputs;
import com.pulumi.azurenative.iotoperationsmq.outputs.MqttBridgeRemoteBrokerAuthenticationMethodsResponse;
import com.pulumi.azurenative.iotoperationsmq.outputs.MqttBridgeRemoteBrokerConnectionTlsResponse;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
@CustomType
public final class MqttBridgeRemoteBrokerConnectionSpecResponse {
/**
* @return The remote broker authentication methods. NOTE - Enum only one method is allowed to be passed.
*
*/
private MqttBridgeRemoteBrokerAuthenticationMethodsResponse authentication;
/**
* @return The endpoint of remote broker to connect to.
*
*/
private String endpoint;
/**
* @return Protocol for remote connection.
*
*/
private @Nullable String protocol;
/**
* @return TLS details for Remote broker Connection.
*
*/
private MqttBridgeRemoteBrokerConnectionTlsResponse tls;
private MqttBridgeRemoteBrokerConnectionSpecResponse() {}
/**
* @return The remote broker authentication methods. NOTE - Enum only one method is allowed to be passed.
*
*/
public MqttBridgeRemoteBrokerAuthenticationMethodsResponse authentication() {
return this.authentication;
}
/**
* @return The endpoint of remote broker to connect to.
*
*/
public String endpoint() {
return this.endpoint;
}
/**
* @return Protocol for remote connection.
*
*/
public Optional protocol() {
return Optional.ofNullable(this.protocol);
}
/**
* @return TLS details for Remote broker Connection.
*
*/
public MqttBridgeRemoteBrokerConnectionTlsResponse tls() {
return this.tls;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(MqttBridgeRemoteBrokerConnectionSpecResponse defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private MqttBridgeRemoteBrokerAuthenticationMethodsResponse authentication;
private String endpoint;
private @Nullable String protocol;
private MqttBridgeRemoteBrokerConnectionTlsResponse tls;
public Builder() {}
public Builder(MqttBridgeRemoteBrokerConnectionSpecResponse defaults) {
Objects.requireNonNull(defaults);
this.authentication = defaults.authentication;
this.endpoint = defaults.endpoint;
this.protocol = defaults.protocol;
this.tls = defaults.tls;
}
@CustomType.Setter
public Builder authentication(MqttBridgeRemoteBrokerAuthenticationMethodsResponse authentication) {
if (authentication == null) {
throw new MissingRequiredPropertyException("MqttBridgeRemoteBrokerConnectionSpecResponse", "authentication");
}
this.authentication = authentication;
return this;
}
@CustomType.Setter
public Builder endpoint(String endpoint) {
if (endpoint == null) {
throw new MissingRequiredPropertyException("MqttBridgeRemoteBrokerConnectionSpecResponse", "endpoint");
}
this.endpoint = endpoint;
return this;
}
@CustomType.Setter
public Builder protocol(@Nullable String protocol) {
this.protocol = protocol;
return this;
}
@CustomType.Setter
public Builder tls(MqttBridgeRemoteBrokerConnectionTlsResponse tls) {
if (tls == null) {
throw new MissingRequiredPropertyException("MqttBridgeRemoteBrokerConnectionSpecResponse", "tls");
}
this.tls = tls;
return this;
}
public MqttBridgeRemoteBrokerConnectionSpecResponse build() {
final var _resultValue = new MqttBridgeRemoteBrokerConnectionSpecResponse();
_resultValue.authentication = authentication;
_resultValue.endpoint = endpoint;
_resultValue.protocol = protocol;
_resultValue.tls = tls;
return _resultValue;
}
}
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy