com.azure.resourcemanager.managementgroups.fluent.models.CreateManagementGroupProperties Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of azure-resourcemanager-managementgroups Show documentation
Show all versions of azure-resourcemanager-managementgroups Show documentation
This package contains Microsoft Azure SDK for ManagementGroups Management SDK. For documentation on how to use this package, please see https://aka.ms/azsdk/java/mgmt. The Azure Management Groups API enables consolidation of multiple
subscriptions/resources into an organizational hierarchy and centrally
manage access control, policies, alerting and reporting for those resources.
. Package tag package-2021-04.
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
// Code generated by Microsoft (R) AutoRest Code Generator.
package com.azure.resourcemanager.managementgroups.fluent.models;
import com.azure.core.annotation.Fluent;
import com.azure.resourcemanager.managementgroups.models.CreateManagementGroupChildInfo;
import com.azure.resourcemanager.managementgroups.models.CreateManagementGroupDetails;
import com.fasterxml.jackson.annotation.JsonProperty;
import java.util.List;
/** The generic properties of a management group used during creation. */
@Fluent
public final class CreateManagementGroupProperties {
/*
* The AAD Tenant ID associated with the management group. For example, 00000000-0000-0000-0000-000000000000
*/
@JsonProperty(value = "tenantId", access = JsonProperty.Access.WRITE_ONLY)
private String tenantId;
/*
* The friendly name of the management group. If no value is passed then this field will be set to the groupId.
*/
@JsonProperty(value = "displayName")
private String displayName;
/*
* The details of a management group used during creation.
*/
@JsonProperty(value = "details")
private CreateManagementGroupDetails details;
/*
* The list of children.
*/
@JsonProperty(value = "children", access = JsonProperty.Access.WRITE_ONLY)
private List children;
/** Creates an instance of CreateManagementGroupProperties class. */
public CreateManagementGroupProperties() {
}
/**
* Get the tenantId property: The AAD Tenant ID associated with the management group. For example,
* 00000000-0000-0000-0000-000000000000.
*
* @return the tenantId value.
*/
public String tenantId() {
return this.tenantId;
}
/**
* Get the displayName property: The friendly name of the management group. If no value is passed then this field
* will be set to the groupId.
*
* @return the displayName value.
*/
public String displayName() {
return this.displayName;
}
/**
* Set the displayName property: The friendly name of the management group. If no value is passed then this field
* will be set to the groupId.
*
* @param displayName the displayName value to set.
* @return the CreateManagementGroupProperties object itself.
*/
public CreateManagementGroupProperties withDisplayName(String displayName) {
this.displayName = displayName;
return this;
}
/**
* Get the details property: The details of a management group used during creation.
*
* @return the details value.
*/
public CreateManagementGroupDetails details() {
return this.details;
}
/**
* Set the details property: The details of a management group used during creation.
*
* @param details the details value to set.
* @return the CreateManagementGroupProperties object itself.
*/
public CreateManagementGroupProperties withDetails(CreateManagementGroupDetails details) {
this.details = details;
return this;
}
/**
* Get the children property: The list of children.
*
* @return the children value.
*/
public List children() {
return this.children;
}
/**
* Validates the instance.
*
* @throws IllegalArgumentException thrown if the instance is not valid.
*/
public void validate() {
if (details() != null) {
details().validate();
}
if (children() != null) {
children().forEach(e -> e.validate());
}
}
}