
com.pulumi.azurenative.workloads.outputs.ThreeTierConfigurationResponse 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.workloads.outputs;
import com.pulumi.azurenative.workloads.outputs.ApplicationServerConfigurationResponse;
import com.pulumi.azurenative.workloads.outputs.CentralServerConfigurationResponse;
import com.pulumi.azurenative.workloads.outputs.DatabaseConfigurationResponse;
import com.pulumi.azurenative.workloads.outputs.HighAvailabilityConfigurationResponse;
import com.pulumi.azurenative.workloads.outputs.NetworkConfigurationResponse;
import com.pulumi.azurenative.workloads.outputs.StorageConfigurationResponse;
import com.pulumi.azurenative.workloads.outputs.ThreeTierFullResourceNamesResponse;
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 ThreeTierConfigurationResponse {
/**
* @return The application resource group where SAP system resources will be deployed.
*
*/
private String appResourceGroup;
/**
* @return The application server configuration.
*
*/
private ApplicationServerConfigurationResponse applicationServer;
/**
* @return The central server configuration.
*
*/
private CentralServerConfigurationResponse centralServer;
/**
* @return The set of custom names to be used for underlying azure resources that are part of the SAP system.
*
*/
private @Nullable ThreeTierFullResourceNamesResponse customResourceNames;
/**
* @return The database configuration.
*
*/
private DatabaseConfigurationResponse databaseServer;
/**
* @return The type of SAP deployment, single server or Three tier.
* Expected value is 'ThreeTier'.
*
*/
private String deploymentType;
/**
* @return The high availability configuration.
*
*/
private @Nullable HighAvailabilityConfigurationResponse highAvailabilityConfig;
/**
* @return Network configuration common to all servers
*
*/
private @Nullable NetworkConfigurationResponse networkConfiguration;
/**
* @return The storage configuration.
*
*/
private @Nullable StorageConfigurationResponse storageConfiguration;
private ThreeTierConfigurationResponse() {}
/**
* @return The application resource group where SAP system resources will be deployed.
*
*/
public String appResourceGroup() {
return this.appResourceGroup;
}
/**
* @return The application server configuration.
*
*/
public ApplicationServerConfigurationResponse applicationServer() {
return this.applicationServer;
}
/**
* @return The central server configuration.
*
*/
public CentralServerConfigurationResponse centralServer() {
return this.centralServer;
}
/**
* @return The set of custom names to be used for underlying azure resources that are part of the SAP system.
*
*/
public Optional customResourceNames() {
return Optional.ofNullable(this.customResourceNames);
}
/**
* @return The database configuration.
*
*/
public DatabaseConfigurationResponse databaseServer() {
return this.databaseServer;
}
/**
* @return The type of SAP deployment, single server or Three tier.
* Expected value is 'ThreeTier'.
*
*/
public String deploymentType() {
return this.deploymentType;
}
/**
* @return The high availability configuration.
*
*/
public Optional highAvailabilityConfig() {
return Optional.ofNullable(this.highAvailabilityConfig);
}
/**
* @return Network configuration common to all servers
*
*/
public Optional networkConfiguration() {
return Optional.ofNullable(this.networkConfiguration);
}
/**
* @return The storage configuration.
*
*/
public Optional storageConfiguration() {
return Optional.ofNullable(this.storageConfiguration);
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(ThreeTierConfigurationResponse defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private String appResourceGroup;
private ApplicationServerConfigurationResponse applicationServer;
private CentralServerConfigurationResponse centralServer;
private @Nullable ThreeTierFullResourceNamesResponse customResourceNames;
private DatabaseConfigurationResponse databaseServer;
private String deploymentType;
private @Nullable HighAvailabilityConfigurationResponse highAvailabilityConfig;
private @Nullable NetworkConfigurationResponse networkConfiguration;
private @Nullable StorageConfigurationResponse storageConfiguration;
public Builder() {}
public Builder(ThreeTierConfigurationResponse defaults) {
Objects.requireNonNull(defaults);
this.appResourceGroup = defaults.appResourceGroup;
this.applicationServer = defaults.applicationServer;
this.centralServer = defaults.centralServer;
this.customResourceNames = defaults.customResourceNames;
this.databaseServer = defaults.databaseServer;
this.deploymentType = defaults.deploymentType;
this.highAvailabilityConfig = defaults.highAvailabilityConfig;
this.networkConfiguration = defaults.networkConfiguration;
this.storageConfiguration = defaults.storageConfiguration;
}
@CustomType.Setter
public Builder appResourceGroup(String appResourceGroup) {
if (appResourceGroup == null) {
throw new MissingRequiredPropertyException("ThreeTierConfigurationResponse", "appResourceGroup");
}
this.appResourceGroup = appResourceGroup;
return this;
}
@CustomType.Setter
public Builder applicationServer(ApplicationServerConfigurationResponse applicationServer) {
if (applicationServer == null) {
throw new MissingRequiredPropertyException("ThreeTierConfigurationResponse", "applicationServer");
}
this.applicationServer = applicationServer;
return this;
}
@CustomType.Setter
public Builder centralServer(CentralServerConfigurationResponse centralServer) {
if (centralServer == null) {
throw new MissingRequiredPropertyException("ThreeTierConfigurationResponse", "centralServer");
}
this.centralServer = centralServer;
return this;
}
@CustomType.Setter
public Builder customResourceNames(@Nullable ThreeTierFullResourceNamesResponse customResourceNames) {
this.customResourceNames = customResourceNames;
return this;
}
@CustomType.Setter
public Builder databaseServer(DatabaseConfigurationResponse databaseServer) {
if (databaseServer == null) {
throw new MissingRequiredPropertyException("ThreeTierConfigurationResponse", "databaseServer");
}
this.databaseServer = databaseServer;
return this;
}
@CustomType.Setter
public Builder deploymentType(String deploymentType) {
if (deploymentType == null) {
throw new MissingRequiredPropertyException("ThreeTierConfigurationResponse", "deploymentType");
}
this.deploymentType = deploymentType;
return this;
}
@CustomType.Setter
public Builder highAvailabilityConfig(@Nullable HighAvailabilityConfigurationResponse highAvailabilityConfig) {
this.highAvailabilityConfig = highAvailabilityConfig;
return this;
}
@CustomType.Setter
public Builder networkConfiguration(@Nullable NetworkConfigurationResponse networkConfiguration) {
this.networkConfiguration = networkConfiguration;
return this;
}
@CustomType.Setter
public Builder storageConfiguration(@Nullable StorageConfigurationResponse storageConfiguration) {
this.storageConfiguration = storageConfiguration;
return this;
}
public ThreeTierConfigurationResponse build() {
final var _resultValue = new ThreeTierConfigurationResponse();
_resultValue.appResourceGroup = appResourceGroup;
_resultValue.applicationServer = applicationServer;
_resultValue.centralServer = centralServer;
_resultValue.customResourceNames = customResourceNames;
_resultValue.databaseServer = databaseServer;
_resultValue.deploymentType = deploymentType;
_resultValue.highAvailabilityConfig = highAvailabilityConfig;
_resultValue.networkConfiguration = networkConfiguration;
_resultValue.storageConfiguration = storageConfiguration;
return _resultValue;
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy