/**
 * 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.cognitiveservices.language.luis.authoring.models;

import com.fasterxml.jackson.annotation.JsonProperty;

/**
 * Defines the Azure account information object.
 */
public class AzureAccountInfoObject {
    /**
     * The id for the Azure subscription.
     */
    @JsonProperty(value = "azureSubscriptionId", required = true)
    private String azureSubscriptionId;

    /**
     * The Azure resource group name.
     */
    @JsonProperty(value = "resourceGroup", required = true)
    private String resourceGroup;

    /**
     * The Azure account name.
     */
    @JsonProperty(value = "accountName", required = true)
    private String accountName;

    /**
     * Get the azureSubscriptionId value.
     *
     * @return the azureSubscriptionId value
     */
    public String azureSubscriptionId() {
        return this.azureSubscriptionId;
    }

    /**
     * Set the azureSubscriptionId value.
     *
     * @param azureSubscriptionId the azureSubscriptionId value to set
     * @return the AzureAccountInfoObject object itself.
     */
    public AzureAccountInfoObject withAzureSubscriptionId(String azureSubscriptionId) {
        this.azureSubscriptionId = azureSubscriptionId;
        return this;
    }

    /**
     * Get the resourceGroup value.
     *
     * @return the resourceGroup value
     */
    public String resourceGroup() {
        return this.resourceGroup;
    }

    /**
     * Set the resourceGroup value.
     *
     * @param resourceGroup the resourceGroup value to set
     * @return the AzureAccountInfoObject object itself.
     */
    public AzureAccountInfoObject withResourceGroup(String resourceGroup) {
        this.resourceGroup = resourceGroup;
        return this;
    }

    /**
     * Get the accountName value.
     *
     * @return the accountName value
     */
    public String accountName() {
        return this.accountName;
    }

    /**
     * Set the accountName value.
     *
     * @param accountName the accountName value to set
     * @return the AzureAccountInfoObject object itself.
     */
    public AzureAccountInfoObject withAccountName(String accountName) {
        this.accountName = accountName;
        return this;
    }

}
