
com.pulumi.azurenative.cache.outputs.GetDatabaseResult 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.azurenative.cache.outputs;
import com.pulumi.azurenative.cache.outputs.DatabasePropertiesResponseGeoReplication;
import com.pulumi.azurenative.cache.outputs.ModuleResponse;
import com.pulumi.azurenative.cache.outputs.PersistenceResponse;
import com.pulumi.azurenative.cache.outputs.SystemDataResponse;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Integer;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
@CustomType
public final class GetDatabaseResult {
/**
* @return Specifies whether redis clients can connect using TLS-encrypted or plaintext redis protocols. Default is TLS-encrypted.
*
*/
private @Nullable String clientProtocol;
/**
* @return Clustering policy - default is OSSCluster. Specified at create time.
*
*/
private @Nullable String clusteringPolicy;
/**
* @return Redis eviction policy - default is VolatileLRU
*
*/
private @Nullable String evictionPolicy;
/**
* @return Optional set of properties to configure geo replication for this database.
*
*/
private @Nullable DatabasePropertiesResponseGeoReplication geoReplication;
/**
* @return Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
*
*/
private String id;
/**
* @return Optional set of redis modules to enable in this database - modules can only be added at creation time.
*
*/
private @Nullable List modules;
/**
* @return The name of the resource
*
*/
private String name;
/**
* @return Persistence settings
*
*/
private @Nullable PersistenceResponse persistence;
/**
* @return TCP port of the database endpoint. Specified at create time. Defaults to an available port.
*
*/
private @Nullable Integer port;
/**
* @return Current provisioning status of the database
*
*/
private String provisioningState;
/**
* @return Current resource status of the database
*
*/
private String resourceState;
/**
* @return Azure Resource Manager metadata containing createdBy and modifiedBy information.
*
*/
private SystemDataResponse systemData;
/**
* @return The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
*
*/
private String type;
private GetDatabaseResult() {}
/**
* @return Specifies whether redis clients can connect using TLS-encrypted or plaintext redis protocols. Default is TLS-encrypted.
*
*/
public Optional clientProtocol() {
return Optional.ofNullable(this.clientProtocol);
}
/**
* @return Clustering policy - default is OSSCluster. Specified at create time.
*
*/
public Optional clusteringPolicy() {
return Optional.ofNullable(this.clusteringPolicy);
}
/**
* @return Redis eviction policy - default is VolatileLRU
*
*/
public Optional evictionPolicy() {
return Optional.ofNullable(this.evictionPolicy);
}
/**
* @return Optional set of properties to configure geo replication for this database.
*
*/
public Optional geoReplication() {
return Optional.ofNullable(this.geoReplication);
}
/**
* @return Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
*
*/
public String id() {
return this.id;
}
/**
* @return Optional set of redis modules to enable in this database - modules can only be added at creation time.
*
*/
public List modules() {
return this.modules == null ? List.of() : this.modules;
}
/**
* @return The name of the resource
*
*/
public String name() {
return this.name;
}
/**
* @return Persistence settings
*
*/
public Optional persistence() {
return Optional.ofNullable(this.persistence);
}
/**
* @return TCP port of the database endpoint. Specified at create time. Defaults to an available port.
*
*/
public Optional port() {
return Optional.ofNullable(this.port);
}
/**
* @return Current provisioning status of the database
*
*/
public String provisioningState() {
return this.provisioningState;
}
/**
* @return Current resource status of the database
*
*/
public String resourceState() {
return this.resourceState;
}
/**
* @return Azure Resource Manager metadata containing createdBy and modifiedBy information.
*
*/
public SystemDataResponse systemData() {
return this.systemData;
}
/**
* @return The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
*
*/
public String type() {
return this.type;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(GetDatabaseResult defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private @Nullable String clientProtocol;
private @Nullable String clusteringPolicy;
private @Nullable String evictionPolicy;
private @Nullable DatabasePropertiesResponseGeoReplication geoReplication;
private String id;
private @Nullable List modules;
private String name;
private @Nullable PersistenceResponse persistence;
private @Nullable Integer port;
private String provisioningState;
private String resourceState;
private SystemDataResponse systemData;
private String type;
public Builder() {}
public Builder(GetDatabaseResult defaults) {
Objects.requireNonNull(defaults);
this.clientProtocol = defaults.clientProtocol;
this.clusteringPolicy = defaults.clusteringPolicy;
this.evictionPolicy = defaults.evictionPolicy;
this.geoReplication = defaults.geoReplication;
this.id = defaults.id;
this.modules = defaults.modules;
this.name = defaults.name;
this.persistence = defaults.persistence;
this.port = defaults.port;
this.provisioningState = defaults.provisioningState;
this.resourceState = defaults.resourceState;
this.systemData = defaults.systemData;
this.type = defaults.type;
}
@CustomType.Setter
public Builder clientProtocol(@Nullable String clientProtocol) {
this.clientProtocol = clientProtocol;
return this;
}
@CustomType.Setter
public Builder clusteringPolicy(@Nullable String clusteringPolicy) {
this.clusteringPolicy = clusteringPolicy;
return this;
}
@CustomType.Setter
public Builder evictionPolicy(@Nullable String evictionPolicy) {
this.evictionPolicy = evictionPolicy;
return this;
}
@CustomType.Setter
public Builder geoReplication(@Nullable DatabasePropertiesResponseGeoReplication geoReplication) {
this.geoReplication = geoReplication;
return this;
}
@CustomType.Setter
public Builder id(String id) {
if (id == null) {
throw new MissingRequiredPropertyException("GetDatabaseResult", "id");
}
this.id = id;
return this;
}
@CustomType.Setter
public Builder modules(@Nullable List modules) {
this.modules = modules;
return this;
}
public Builder modules(ModuleResponse... modules) {
return modules(List.of(modules));
}
@CustomType.Setter
public Builder name(String name) {
if (name == null) {
throw new MissingRequiredPropertyException("GetDatabaseResult", "name");
}
this.name = name;
return this;
}
@CustomType.Setter
public Builder persistence(@Nullable PersistenceResponse persistence) {
this.persistence = persistence;
return this;
}
@CustomType.Setter
public Builder port(@Nullable Integer port) {
this.port = port;
return this;
}
@CustomType.Setter
public Builder provisioningState(String provisioningState) {
if (provisioningState == null) {
throw new MissingRequiredPropertyException("GetDatabaseResult", "provisioningState");
}
this.provisioningState = provisioningState;
return this;
}
@CustomType.Setter
public Builder resourceState(String resourceState) {
if (resourceState == null) {
throw new MissingRequiredPropertyException("GetDatabaseResult", "resourceState");
}
this.resourceState = resourceState;
return this;
}
@CustomType.Setter
public Builder systemData(SystemDataResponse systemData) {
if (systemData == null) {
throw new MissingRequiredPropertyException("GetDatabaseResult", "systemData");
}
this.systemData = systemData;
return this;
}
@CustomType.Setter
public Builder type(String type) {
if (type == null) {
throw new MissingRequiredPropertyException("GetDatabaseResult", "type");
}
this.type = type;
return this;
}
public GetDatabaseResult build() {
final var _resultValue = new GetDatabaseResult();
_resultValue.clientProtocol = clientProtocol;
_resultValue.clusteringPolicy = clusteringPolicy;
_resultValue.evictionPolicy = evictionPolicy;
_resultValue.geoReplication = geoReplication;
_resultValue.id = id;
_resultValue.modules = modules;
_resultValue.name = name;
_resultValue.persistence = persistence;
_resultValue.port = port;
_resultValue.provisioningState = provisioningState;
_resultValue.resourceState = resourceState;
_resultValue.systemData = systemData;
_resultValue.type = type;
return _resultValue;
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy