/** * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the MIT License. See License.txt in the project root for * license information. * * Code generated by Microsoft (R) AutoRest Code Generator. */ package com.microsoft.azure.management.appservice.implementation; import com.microsoft.azure.management.appservice.ProvisioningState; import com.microsoft.azure.management.appservice.HostingEnvironmentStatus; import com.microsoft.azure.management.appservice.VirtualNetworkProfile; import com.microsoft.azure.management.appservice.InternalLoadBalancingMode; import java.util.List; import com.microsoft.azure.management.appservice.WorkerPool; import com.microsoft.azure.management.appservice.VirtualIPMapping; import com.microsoft.azure.management.appservice.NetworkAccessControlEntry; import com.microsoft.azure.management.appservice.NameValuePair; import com.fasterxml.jackson.annotation.JsonProperty; import com.microsoft.rest.serializer.JsonFlatten; import com.microsoft.azure.Resource; /** * App Service Environment ARM resource. */ @JsonFlatten public class AppServiceEnvironmentResourceInner extends Resource { /** * Name of the App Service Environment. */ @JsonProperty(value = "properties.name", required = true) private String appServiceEnvironmentResourceName; /** * Location of the App Service Environment, e.g. "West US". */ @JsonProperty(value = "properties.location", required = true) private String appServiceEnvironmentResourceLocation; /** * Provisioning state of the App Service Environment. Possible values * include: 'Succeeded', 'Failed', 'Canceled', 'InProgress', 'Deleting'. */ @JsonProperty(value = "properties.provisioningState", access = JsonProperty.Access.WRITE_ONLY) private ProvisioningState provisioningState; /** * Current status of the App Service Environment. Possible values include: * 'Preparing', 'Ready', 'Scaling', 'Deleting'. */ @JsonProperty(value = "properties.status", access = JsonProperty.Access.WRITE_ONLY) private HostingEnvironmentStatus status; /** * Name of the Virtual Network for the App Service Environment. */ @JsonProperty(value = "properties.vnetName") private String vnetName; /** * Resource group of the Virtual Network. */ @JsonProperty(value = "properties.vnetResourceGroupName") private String vnetResourceGroupName; /** * Subnet of the Virtual Network. */ @JsonProperty(value = "properties.vnetSubnetName") private String vnetSubnetName; /** * Description of the Virtual Network. */ @JsonProperty(value = "properties.virtualNetwork", required = true) private VirtualNetworkProfile virtualNetwork; /** * Specifies which endpoints to serve internally in the Virtual Network for * the App Service Environment. Possible values include: 'None', 'Web', * 'Publishing'. */ @JsonProperty(value = "properties.internalLoadBalancingMode") private InternalLoadBalancingMode internalLoadBalancingMode; /** * Front-end VM size, e.g. "Medium", "Large". */ @JsonProperty(value = "properties.multiSize") private String multiSize; /** * Number of front-end instances. */ @JsonProperty(value = "properties.multiRoleCount") private Integer multiRoleCount; /** * Description of worker pools with worker size IDs, VM sizes, and number * of workers in each pool. */ @JsonProperty(value = "properties.workerPools", required = true) private List<WorkerPool> workerPools; /** * Number of IP SSL addresses reserved for the App Service Environment. */ @JsonProperty(value = "properties.ipsslAddressCount") private Integer ipsslAddressCount; /** * Edition of the metadata database for the App Service Environment, e.g. * "Standard". */ @JsonProperty(value = "properties.databaseEdition", access = JsonProperty.Access.WRITE_ONLY) private String databaseEdition; /** * Service objective of the metadata database for the App Service * Environment, e.g. "S0". */ @JsonProperty(value = "properties.databaseServiceObjective", access = JsonProperty.Access.WRITE_ONLY) private String databaseServiceObjective; /** * Number of upgrade domains of the App Service Environment. */ @JsonProperty(value = "properties.upgradeDomains", access = JsonProperty.Access.WRITE_ONLY) private Integer upgradeDomains; /** * Subscription of the App Service Environment. */ @JsonProperty(value = "properties.subscriptionId", access = JsonProperty.Access.WRITE_ONLY) private String subscriptionId; /** * DNS suffix of the App Service Environment. */ @JsonProperty(value = "properties.dnsSuffix") private String dnsSuffix; /** * Last deployment action on the App Service Environment. */ @JsonProperty(value = "properties.lastAction", access = JsonProperty.Access.WRITE_ONLY) private String lastAction; /** * Result of the last deployment action on the App Service Environment. */ @JsonProperty(value = "properties.lastActionResult", access = JsonProperty.Access.WRITE_ONLY) private String lastActionResult; /** * List of comma separated strings describing which VM sizes are allowed * for front-ends. */ @JsonProperty(value = "properties.allowedMultiSizes", access = JsonProperty.Access.WRITE_ONLY) private String allowedMultiSizes; /** * List of comma separated strings describing which VM sizes are allowed * for workers. */ @JsonProperty(value = "properties.allowedWorkerSizes", access = JsonProperty.Access.WRITE_ONLY) private String allowedWorkerSizes; /** * Maximum number of VMs in the App Service Environment. */ @JsonProperty(value = "properties.maximumNumberOfMachines", access = JsonProperty.Access.WRITE_ONLY) private Integer maximumNumberOfMachines; /** * Description of IP SSL mapping for the App Service Environment. */ @JsonProperty(value = "properties.vipMappings", access = JsonProperty.Access.WRITE_ONLY) private List<VirtualIPMapping> vipMappings; /** * Current total, used, and available worker capacities. */ @JsonProperty(value = "properties.environmentCapacities", access = JsonProperty.Access.WRITE_ONLY) private List<StampCapacityInner> environmentCapacities; /** * Access control list for controlling traffic to the App Service * Environment. */ @JsonProperty(value = "properties.networkAccessControlList") private List<NetworkAccessControlEntry> networkAccessControlList; /** * True/false indicating whether the App Service Environment is healthy. */ @JsonProperty(value = "properties.environmentIsHealthy", access = JsonProperty.Access.WRITE_ONLY) private Boolean environmentIsHealthy; /** * Detailed message about with results of the last check of the App Service * Environment. */ @JsonProperty(value = "properties.environmentStatus", access = JsonProperty.Access.WRITE_ONLY) private String environmentStatus; /** * Kind of the app service environment. */ @JsonProperty(value = "properties.kind") private String appServiceEnvironmentResourceKind; /** * Resource group of the App Service Environment. */ @JsonProperty(value = "properties.resourceGroup", access = JsonProperty.Access.WRITE_ONLY) private String resourceGroup; /** * Scale factor for front-ends. */ @JsonProperty(value = "properties.frontEndScaleFactor") private Integer frontEndScaleFactor; /** * Default Scale Factor for FrontEnds. */ @JsonProperty(value = "properties.defaultFrontEndScaleFactor", access = JsonProperty.Access.WRITE_ONLY) private Integer defaultFrontEndScaleFactor; /** * API Management Account associated with the App Service Environment. */ @JsonProperty(value = "properties.apiManagementAccountId") private String apiManagementAccountId; /** * <code>true</code> if the App Service Environment is * suspended; otherwise, <code>false</code>. The environment * can be suspended, e.g. when the management endpoint is no longer * available * (most likely because NSG blocked the incoming traffic). */ @JsonProperty(value = "properties.suspended") private Boolean suspended; /** * True/false indicating whether the App Service Environment is suspended. * The environment can be suspended e.g. when the management endpoint is no * longer available * (most likely because NSG blocked the incoming traffic). */ @JsonProperty(value = "properties.dynamicCacheEnabled") private Boolean dynamicCacheEnabled; /** * Custom settings for changing the behavior of the App Service * Environment. */ @JsonProperty(value = "properties.clusterSettings") private List<NameValuePair> clusterSettings; /** * Get the appServiceEnvironmentResourceName value. * * @return the appServiceEnvironmentResourceName value */ public String appServiceEnvironmentResourceName() { return this.appServiceEnvironmentResourceName; } /** * Set the appServiceEnvironmentResourceName value. * * @param appServiceEnvironmentResourceName the appServiceEnvironmentResourceName value to set * @return the AppServiceEnvironmentResourceInner object itself. */ public AppServiceEnvironmentResourceInner withAppServiceEnvironmentResourceName(String appServiceEnvironmentResourceName) { this.appServiceEnvironmentResourceName = appServiceEnvironmentResourceName; return this; } /** * Get the appServiceEnvironmentResourceLocation value. * * @return the appServiceEnvironmentResourceLocation value */ public String appServiceEnvironmentResourceLocation() { return this.appServiceEnvironmentResourceLocation; } /** * Set the appServiceEnvironmentResourceLocation value. * * @param appServiceEnvironmentResourceLocation the appServiceEnvironmentResourceLocation value to set * @return the AppServiceEnvironmentResourceInner object itself. */ public AppServiceEnvironmentResourceInner withAppServiceEnvironmentResourceLocation(String appServiceEnvironmentResourceLocation) { this.appServiceEnvironmentResourceLocation = appServiceEnvironmentResourceLocation; return this; } /** * Get the provisioningState value. * * @return the provisioningState value */ public ProvisioningState provisioningState() { return this.provisioningState; } /** * Get the status value. * * @return the status value */ public HostingEnvironmentStatus status() { return this.status; } /** * Get the vnetName value. * * @return the vnetName value */ public String vnetName() { return this.vnetName; } /** * Set the vnetName value. * * @param vnetName the vnetName value to set * @return the AppServiceEnvironmentResourceInner object itself. */ public AppServiceEnvironmentResourceInner withVnetName(String vnetName) { this.vnetName = vnetName; return this; } /** * Get the vnetResourceGroupName value. * * @return the vnetResourceGroupName value */ public String vnetResourceGroupName() { return this.vnetResourceGroupName; } /** * Set the vnetResourceGroupName value. * * @param vnetResourceGroupName the vnetResourceGroupName value to set * @return the AppServiceEnvironmentResourceInner object itself. */ public AppServiceEnvironmentResourceInner withVnetResourceGroupName(String vnetResourceGroupName) { this.vnetResourceGroupName = vnetResourceGroupName; return this; } /** * Get the vnetSubnetName value. * * @return the vnetSubnetName value */ public String vnetSubnetName() { return this.vnetSubnetName; } /** * Set the vnetSubnetName value. * * @param vnetSubnetName the vnetSubnetName value to set * @return the AppServiceEnvironmentResourceInner object itself. */ public AppServiceEnvironmentResourceInner withVnetSubnetName(String vnetSubnetName) { this.vnetSubnetName = vnetSubnetName; return this; } /** * Get the virtualNetwork value. * * @return the virtualNetwork value */ public VirtualNetworkProfile virtualNetwork() { return this.virtualNetwork; } /** * Set the virtualNetwork value. * * @param virtualNetwork the virtualNetwork value to set * @return the AppServiceEnvironmentResourceInner object itself. */ public AppServiceEnvironmentResourceInner withVirtualNetwork(VirtualNetworkProfile virtualNetwork) { this.virtualNetwork = virtualNetwork; return this; } /** * Get the internalLoadBalancingMode value. * * @return the internalLoadBalancingMode value */ public InternalLoadBalancingMode internalLoadBalancingMode() { return this.internalLoadBalancingMode; } /** * Set the internalLoadBalancingMode value. * * @param internalLoadBalancingMode the internalLoadBalancingMode value to set * @return the AppServiceEnvironmentResourceInner object itself. */ public AppServiceEnvironmentResourceInner withInternalLoadBalancingMode(InternalLoadBalancingMode internalLoadBalancingMode) { this.internalLoadBalancingMode = internalLoadBalancingMode; return this; } /** * Get the multiSize value. * * @return the multiSize value */ public String multiSize() { return this.multiSize; } /** * Set the multiSize value. * * @param multiSize the multiSize value to set * @return the AppServiceEnvironmentResourceInner object itself. */ public AppServiceEnvironmentResourceInner withMultiSize(String multiSize) { this.multiSize = multiSize; return this; } /** * Get the multiRoleCount value. * * @return the multiRoleCount value */ public Integer multiRoleCount() { return this.multiRoleCount; } /** * Set the multiRoleCount value. * * @param multiRoleCount the multiRoleCount value to set * @return the AppServiceEnvironmentResourceInner object itself. */ public AppServiceEnvironmentResourceInner withMultiRoleCount(Integer multiRoleCount) { this.multiRoleCount = multiRoleCount; return this; } /** * Get the workerPools value. * * @return the workerPools value */ public List<WorkerPool> workerPools() { return this.workerPools; } /** * Set the workerPools value. * * @param workerPools the workerPools value to set * @return the AppServiceEnvironmentResourceInner object itself. */ public AppServiceEnvironmentResourceInner withWorkerPools(List<WorkerPool> workerPools) { this.workerPools = workerPools; return this; } /** * Get the ipsslAddressCount value. * * @return the ipsslAddressCount value */ public Integer ipsslAddressCount() { return this.ipsslAddressCount; } /** * Set the ipsslAddressCount value. * * @param ipsslAddressCount the ipsslAddressCount value to set * @return the AppServiceEnvironmentResourceInner object itself. */ public AppServiceEnvironmentResourceInner withIpsslAddressCount(Integer ipsslAddressCount) { this.ipsslAddressCount = ipsslAddressCount; return this; } /** * Get the databaseEdition value. * * @return the databaseEdition value */ public String databaseEdition() { return this.databaseEdition; } /** * Get the databaseServiceObjective value. * * @return the databaseServiceObjective value */ public String databaseServiceObjective() { return this.databaseServiceObjective; } /** * Get the upgradeDomains value. * * @return the upgradeDomains value */ public Integer upgradeDomains() { return this.upgradeDomains; } /** * Get the subscriptionId value. * * @return the subscriptionId value */ public String subscriptionId() { return this.subscriptionId; } /** * Get the dnsSuffix value. * * @return the dnsSuffix value */ public String dnsSuffix() { return this.dnsSuffix; } /** * Set the dnsSuffix value. * * @param dnsSuffix the dnsSuffix value to set * @return the AppServiceEnvironmentResourceInner object itself. */ public AppServiceEnvironmentResourceInner withDnsSuffix(String dnsSuffix) { this.dnsSuffix = dnsSuffix; return this; } /** * Get the lastAction value. * * @return the lastAction value */ public String lastAction() { return this.lastAction; } /** * Get the lastActionResult value. * * @return the lastActionResult value */ public String lastActionResult() { return this.lastActionResult; } /** * Get the allowedMultiSizes value. * * @return the allowedMultiSizes value */ public String allowedMultiSizes() { return this.allowedMultiSizes; } /** * Get the allowedWorkerSizes value. * * @return the allowedWorkerSizes value */ public String allowedWorkerSizes() { return this.allowedWorkerSizes; } /** * Get the maximumNumberOfMachines value. * * @return the maximumNumberOfMachines value */ public Integer maximumNumberOfMachines() { return this.maximumNumberOfMachines; } /** * Get the vipMappings value. * * @return the vipMappings value */ public List<VirtualIPMapping> vipMappings() { return this.vipMappings; } /** * Get the environmentCapacities value. * * @return the environmentCapacities value */ public List<StampCapacityInner> environmentCapacities() { return this.environmentCapacities; } /** * Get the networkAccessControlList value. * * @return the networkAccessControlList value */ public List<NetworkAccessControlEntry> networkAccessControlList() { return this.networkAccessControlList; } /** * Set the networkAccessControlList value. * * @param networkAccessControlList the networkAccessControlList value to set * @return the AppServiceEnvironmentResourceInner object itself. */ public AppServiceEnvironmentResourceInner withNetworkAccessControlList(List<NetworkAccessControlEntry> networkAccessControlList) { this.networkAccessControlList = networkAccessControlList; return this; } /** * Get the environmentIsHealthy value. * * @return the environmentIsHealthy value */ public Boolean environmentIsHealthy() { return this.environmentIsHealthy; } /** * Get the environmentStatus value. * * @return the environmentStatus value */ public String environmentStatus() { return this.environmentStatus; } /** * Get the appServiceEnvironmentResourceKind value. * * @return the appServiceEnvironmentResourceKind value */ public String appServiceEnvironmentResourceKind() { return this.appServiceEnvironmentResourceKind; } /** * Set the appServiceEnvironmentResourceKind value. * * @param appServiceEnvironmentResourceKind the appServiceEnvironmentResourceKind value to set * @return the AppServiceEnvironmentResourceInner object itself. */ public AppServiceEnvironmentResourceInner withAppServiceEnvironmentResourceKind(String appServiceEnvironmentResourceKind) { this.appServiceEnvironmentResourceKind = appServiceEnvironmentResourceKind; return this; } /** * Get the resourceGroup value. * * @return the resourceGroup value */ public String resourceGroup() { return this.resourceGroup; } /** * Get the frontEndScaleFactor value. * * @return the frontEndScaleFactor value */ public Integer frontEndScaleFactor() { return this.frontEndScaleFactor; } /** * Set the frontEndScaleFactor value. * * @param frontEndScaleFactor the frontEndScaleFactor value to set * @return the AppServiceEnvironmentResourceInner object itself. */ public AppServiceEnvironmentResourceInner withFrontEndScaleFactor(Integer frontEndScaleFactor) { this.frontEndScaleFactor = frontEndScaleFactor; return this; } /** * Get the defaultFrontEndScaleFactor value. * * @return the defaultFrontEndScaleFactor value */ public Integer defaultFrontEndScaleFactor() { return this.defaultFrontEndScaleFactor; } /** * Get the apiManagementAccountId value. * * @return the apiManagementAccountId value */ public String apiManagementAccountId() { return this.apiManagementAccountId; } /** * Set the apiManagementAccountId value. * * @param apiManagementAccountId the apiManagementAccountId value to set * @return the AppServiceEnvironmentResourceInner object itself. */ public AppServiceEnvironmentResourceInner withApiManagementAccountId(String apiManagementAccountId) { this.apiManagementAccountId = apiManagementAccountId; return this; } /** * Get the suspended value. * * @return the suspended value */ public Boolean suspended() { return this.suspended; } /** * Set the suspended value. * * @param suspended the suspended value to set * @return the AppServiceEnvironmentResourceInner object itself. */ public AppServiceEnvironmentResourceInner withSuspended(Boolean suspended) { this.suspended = suspended; return this; } /** * Get the dynamicCacheEnabled value. * * @return the dynamicCacheEnabled value */ public Boolean dynamicCacheEnabled() { return this.dynamicCacheEnabled; } /** * Set the dynamicCacheEnabled value. * * @param dynamicCacheEnabled the dynamicCacheEnabled value to set * @return the AppServiceEnvironmentResourceInner object itself. */ public AppServiceEnvironmentResourceInner withDynamicCacheEnabled(Boolean dynamicCacheEnabled) { this.dynamicCacheEnabled = dynamicCacheEnabled; return this; } /** * Get the clusterSettings value. * * @return the clusterSettings value */ public List<NameValuePair> clusterSettings() { return this.clusterSettings; } /** * Set the clusterSettings value. * * @param clusterSettings the clusterSettings value to set * @return the AppServiceEnvironmentResourceInner object itself. */ public AppServiceEnvironmentResourceInner withClusterSettings(List<NameValuePair> clusterSettings) { this.clusterSettings = clusterSettings; return this; } }