All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.microsoft.azure.management.monitor.implementation.AutoscaleSettingResourceInner Maven / Gradle / Ivy

Go to download

This package contains Microsoft Azure Monitor SDK. This package has been deprecated. A replacement package com.azure.resourcemanager:azure-resourcemanager-monitor is available as of 31-March-2022. We strongly encourage you to upgrade to continue receiving updates. See Migration Guide https://aka.ms/java-track2-migration-guide for guidance on upgrading. Refer to our deprecation policy https://azure.github.io/azure-sdk/policies_support.html for more details.

There is a newer version: 1.41.4
Show newest version
/**
 * 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.monitor.implementation;

import java.util.List;
import com.microsoft.azure.management.monitor.AutoscaleNotification;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.microsoft.rest.serializer.JsonFlatten;
import com.microsoft.azure.Resource;

/**
 * The autoscale setting resource.
 */
@JsonFlatten
public class AutoscaleSettingResourceInner extends Resource {
    /**
     * the collection of automatic scaling profiles that specify different
     * scaling parameters for different time periods. A maximum of 20 profiles
     * can be specified.
     */
    @JsonProperty(value = "properties.profiles", required = true)
    private List profiles;

    /**
     * the collection of notifications.
     */
    @JsonProperty(value = "properties.notifications")
    private List notifications;

    /**
     * the enabled flag. Specifies whether automatic scaling is enabled for the
     * resource. The default value is 'true'.
     */
    @JsonProperty(value = "properties.enabled")
    private Boolean enabled;

    /**
     * the name of the autoscale setting.
     */
    @JsonProperty(value = "properties.name")
    private String autoscaleSettingResourceName;

    /**
     * the resource identifier of the resource that the autoscale setting
     * should be added to.
     */
    @JsonProperty(value = "properties.targetResourceUri")
    private String targetResourceUri;

    /**
     * Get the collection of automatic scaling profiles that specify different scaling parameters for different time periods. A maximum of 20 profiles can be specified.
     *
     * @return the profiles value
     */
    public List profiles() {
        return this.profiles;
    }

    /**
     * Set the collection of automatic scaling profiles that specify different scaling parameters for different time periods. A maximum of 20 profiles can be specified.
     *
     * @param profiles the profiles value to set
     * @return the AutoscaleSettingResourceInner object itself.
     */
    public AutoscaleSettingResourceInner withProfiles(List profiles) {
        this.profiles = profiles;
        return this;
    }

    /**
     * Get the collection of notifications.
     *
     * @return the notifications value
     */
    public List notifications() {
        return this.notifications;
    }

    /**
     * Set the collection of notifications.
     *
     * @param notifications the notifications value to set
     * @return the AutoscaleSettingResourceInner object itself.
     */
    public AutoscaleSettingResourceInner withNotifications(List notifications) {
        this.notifications = notifications;
        return this;
    }

    /**
     * Get the enabled flag. Specifies whether automatic scaling is enabled for the resource. The default value is 'true'.
     *
     * @return the enabled value
     */
    public Boolean enabled() {
        return this.enabled;
    }

    /**
     * Set the enabled flag. Specifies whether automatic scaling is enabled for the resource. The default value is 'true'.
     *
     * @param enabled the enabled value to set
     * @return the AutoscaleSettingResourceInner object itself.
     */
    public AutoscaleSettingResourceInner withEnabled(Boolean enabled) {
        this.enabled = enabled;
        return this;
    }

    /**
     * Get the name of the autoscale setting.
     *
     * @return the autoscaleSettingResourceName value
     */
    public String autoscaleSettingResourceName() {
        return this.autoscaleSettingResourceName;
    }

    /**
     * Set the name of the autoscale setting.
     *
     * @param autoscaleSettingResourceName the autoscaleSettingResourceName value to set
     * @return the AutoscaleSettingResourceInner object itself.
     */
    public AutoscaleSettingResourceInner withAutoscaleSettingResourceName(String autoscaleSettingResourceName) {
        this.autoscaleSettingResourceName = autoscaleSettingResourceName;
        return this;
    }

    /**
     * Get the resource identifier of the resource that the autoscale setting should be added to.
     *
     * @return the targetResourceUri value
     */
    public String targetResourceUri() {
        return this.targetResourceUri;
    }

    /**
     * Set the resource identifier of the resource that the autoscale setting should be added to.
     *
     * @param targetResourceUri the targetResourceUri value to set
     * @return the AutoscaleSettingResourceInner object itself.
     */
    public AutoscaleSettingResourceInner withTargetResourceUri(String targetResourceUri) {
        this.targetResourceUri = targetResourceUri;
        return this;
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy