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

com.pulumi.azurenative.resources.outputs.GetDeploymentStackAtManagementGroupResult Maven / Gradle / Ivy

There is a newer version: 2.72.0
Show newest version
// *** 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.resources.outputs;

import com.pulumi.azurenative.resources.outputs.DenySettingsResponse;
import com.pulumi.azurenative.resources.outputs.DeploymentStackPropertiesResponseActionOnUnmanage;
import com.pulumi.azurenative.resources.outputs.DeploymentStacksDebugSettingResponse;
import com.pulumi.azurenative.resources.outputs.DeploymentStacksParametersLinkResponse;
import com.pulumi.azurenative.resources.outputs.ErrorResponseResponse;
import com.pulumi.azurenative.resources.outputs.ManagedResourceReferenceResponse;
import com.pulumi.azurenative.resources.outputs.ResourceReferenceExtendedResponse;
import com.pulumi.azurenative.resources.outputs.ResourceReferenceResponse;
import com.pulumi.azurenative.resources.outputs.SystemDataResponse;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Object;
import java.lang.String;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;

@CustomType
public final class GetDeploymentStackAtManagementGroupResult {
    /**
     * @return Defines the behavior of resources that are not managed immediately after the stack is updated.
     * 
     */
    private DeploymentStackPropertiesResponseActionOnUnmanage actionOnUnmanage;
    /**
     * @return The debug setting of the deployment.
     * 
     */
    private @Nullable DeploymentStacksDebugSettingResponse debugSetting;
    /**
     * @return An array of resources that were deleted during the most recent update.
     * 
     */
    private List deletedResources;
    /**
     * @return Defines how resources deployed by the stack are locked.
     * 
     */
    private DenySettingsResponse denySettings;
    /**
     * @return The resourceId of the deployment resource created by the deployment stack.
     * 
     */
    private String deploymentId;
    /**
     * @return The scope at which the initial deployment should be created. If a scope is not specified, it will default to the scope of the deployment stack. Valid scopes are: management group (format: '/providers/Microsoft.Management/managementGroups/{managementGroupId}'), subscription (format: '/subscriptions/{subscriptionId}'), resource group (format: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}').
     * 
     */
    private @Nullable String deploymentScope;
    /**
     * @return Deployment stack description.
     * 
     */
    private @Nullable String description;
    /**
     * @return An array of resources that were detached during the most recent update.
     * 
     */
    private List detachedResources;
    /**
     * @return The duration of the deployment stack update.
     * 
     */
    private String duration;
    /**
     * @return Common error response for all Azure Resource Manager APIs to return error details for failed operations. (This also follows the OData error response format.).
     * 
     */
    private @Nullable ErrorResponseResponse error;
    /**
     * @return An array of resources that failed to reach goal state during the most recent update.
     * 
     */
    private List failedResources;
    /**
     * @return String Id used to locate any resource on Azure.
     * 
     */
    private String id;
    /**
     * @return The location of the deployment stack. It cannot be changed after creation. It must be one of the supported Azure locations.
     * 
     */
    private @Nullable String location;
    /**
     * @return Name of this resource.
     * 
     */
    private String name;
    /**
     * @return The outputs of the underlying deployment.
     * 
     */
    private Object outputs;
    /**
     * @return Name and value pairs that define the deployment parameters for the template. Use this element when providing the parameter values directly in the request, rather than linking to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string.
     * 
     */
    private @Nullable Object parameters;
    /**
     * @return The URI of parameters file. Use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both.
     * 
     */
    private @Nullable DeploymentStacksParametersLinkResponse parametersLink;
    /**
     * @return State of the deployment stack.
     * 
     */
    private String provisioningState;
    /**
     * @return An array of resources currently managed by the deployment stack.
     * 
     */
    private List resources;
    /**
     * @return Azure Resource Manager metadata containing createdBy and modifiedBy information.
     * 
     */
    private SystemDataResponse systemData;
    /**
     * @return Deployment stack resource tags.
     * 
     */
    private @Nullable Map tags;
    /**
     * @return Type of this resource.
     * 
     */
    private String type;

    private GetDeploymentStackAtManagementGroupResult() {}
    /**
     * @return Defines the behavior of resources that are not managed immediately after the stack is updated.
     * 
     */
    public DeploymentStackPropertiesResponseActionOnUnmanage actionOnUnmanage() {
        return this.actionOnUnmanage;
    }
    /**
     * @return The debug setting of the deployment.
     * 
     */
    public Optional debugSetting() {
        return Optional.ofNullable(this.debugSetting);
    }
    /**
     * @return An array of resources that were deleted during the most recent update.
     * 
     */
    public List deletedResources() {
        return this.deletedResources;
    }
    /**
     * @return Defines how resources deployed by the stack are locked.
     * 
     */
    public DenySettingsResponse denySettings() {
        return this.denySettings;
    }
    /**
     * @return The resourceId of the deployment resource created by the deployment stack.
     * 
     */
    public String deploymentId() {
        return this.deploymentId;
    }
    /**
     * @return The scope at which the initial deployment should be created. If a scope is not specified, it will default to the scope of the deployment stack. Valid scopes are: management group (format: '/providers/Microsoft.Management/managementGroups/{managementGroupId}'), subscription (format: '/subscriptions/{subscriptionId}'), resource group (format: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}').
     * 
     */
    public Optional deploymentScope() {
        return Optional.ofNullable(this.deploymentScope);
    }
    /**
     * @return Deployment stack description.
     * 
     */
    public Optional description() {
        return Optional.ofNullable(this.description);
    }
    /**
     * @return An array of resources that were detached during the most recent update.
     * 
     */
    public List detachedResources() {
        return this.detachedResources;
    }
    /**
     * @return The duration of the deployment stack update.
     * 
     */
    public String duration() {
        return this.duration;
    }
    /**
     * @return Common error response for all Azure Resource Manager APIs to return error details for failed operations. (This also follows the OData error response format.).
     * 
     */
    public Optional error() {
        return Optional.ofNullable(this.error);
    }
    /**
     * @return An array of resources that failed to reach goal state during the most recent update.
     * 
     */
    public List failedResources() {
        return this.failedResources;
    }
    /**
     * @return String Id used to locate any resource on Azure.
     * 
     */
    public String id() {
        return this.id;
    }
    /**
     * @return The location of the deployment stack. It cannot be changed after creation. It must be one of the supported Azure locations.
     * 
     */
    public Optional location() {
        return Optional.ofNullable(this.location);
    }
    /**
     * @return Name of this resource.
     * 
     */
    public String name() {
        return this.name;
    }
    /**
     * @return The outputs of the underlying deployment.
     * 
     */
    public Object outputs() {
        return this.outputs;
    }
    /**
     * @return Name and value pairs that define the deployment parameters for the template. Use this element when providing the parameter values directly in the request, rather than linking to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string.
     * 
     */
    public Optional parameters() {
        return Optional.ofNullable(this.parameters);
    }
    /**
     * @return The URI of parameters file. Use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both.
     * 
     */
    public Optional parametersLink() {
        return Optional.ofNullable(this.parametersLink);
    }
    /**
     * @return State of the deployment stack.
     * 
     */
    public String provisioningState() {
        return this.provisioningState;
    }
    /**
     * @return An array of resources currently managed by the deployment stack.
     * 
     */
    public List resources() {
        return this.resources;
    }
    /**
     * @return Azure Resource Manager metadata containing createdBy and modifiedBy information.
     * 
     */
    public SystemDataResponse systemData() {
        return this.systemData;
    }
    /**
     * @return Deployment stack resource tags.
     * 
     */
    public Map tags() {
        return this.tags == null ? Map.of() : this.tags;
    }
    /**
     * @return Type of this resource.
     * 
     */
    public String type() {
        return this.type;
    }

    public static Builder builder() {
        return new Builder();
    }

    public static Builder builder(GetDeploymentStackAtManagementGroupResult defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private DeploymentStackPropertiesResponseActionOnUnmanage actionOnUnmanage;
        private @Nullable DeploymentStacksDebugSettingResponse debugSetting;
        private List deletedResources;
        private DenySettingsResponse denySettings;
        private String deploymentId;
        private @Nullable String deploymentScope;
        private @Nullable String description;
        private List detachedResources;
        private String duration;
        private @Nullable ErrorResponseResponse error;
        private List failedResources;
        private String id;
        private @Nullable String location;
        private String name;
        private Object outputs;
        private @Nullable Object parameters;
        private @Nullable DeploymentStacksParametersLinkResponse parametersLink;
        private String provisioningState;
        private List resources;
        private SystemDataResponse systemData;
        private @Nullable Map tags;
        private String type;
        public Builder() {}
        public Builder(GetDeploymentStackAtManagementGroupResult defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.actionOnUnmanage = defaults.actionOnUnmanage;
    	      this.debugSetting = defaults.debugSetting;
    	      this.deletedResources = defaults.deletedResources;
    	      this.denySettings = defaults.denySettings;
    	      this.deploymentId = defaults.deploymentId;
    	      this.deploymentScope = defaults.deploymentScope;
    	      this.description = defaults.description;
    	      this.detachedResources = defaults.detachedResources;
    	      this.duration = defaults.duration;
    	      this.error = defaults.error;
    	      this.failedResources = defaults.failedResources;
    	      this.id = defaults.id;
    	      this.location = defaults.location;
    	      this.name = defaults.name;
    	      this.outputs = defaults.outputs;
    	      this.parameters = defaults.parameters;
    	      this.parametersLink = defaults.parametersLink;
    	      this.provisioningState = defaults.provisioningState;
    	      this.resources = defaults.resources;
    	      this.systemData = defaults.systemData;
    	      this.tags = defaults.tags;
    	      this.type = defaults.type;
        }

        @CustomType.Setter
        public Builder actionOnUnmanage(DeploymentStackPropertiesResponseActionOnUnmanage actionOnUnmanage) {
            if (actionOnUnmanage == null) {
              throw new MissingRequiredPropertyException("GetDeploymentStackAtManagementGroupResult", "actionOnUnmanage");
            }
            this.actionOnUnmanage = actionOnUnmanage;
            return this;
        }
        @CustomType.Setter
        public Builder debugSetting(@Nullable DeploymentStacksDebugSettingResponse debugSetting) {

            this.debugSetting = debugSetting;
            return this;
        }
        @CustomType.Setter
        public Builder deletedResources(List deletedResources) {
            if (deletedResources == null) {
              throw new MissingRequiredPropertyException("GetDeploymentStackAtManagementGroupResult", "deletedResources");
            }
            this.deletedResources = deletedResources;
            return this;
        }
        public Builder deletedResources(ResourceReferenceResponse... deletedResources) {
            return deletedResources(List.of(deletedResources));
        }
        @CustomType.Setter
        public Builder denySettings(DenySettingsResponse denySettings) {
            if (denySettings == null) {
              throw new MissingRequiredPropertyException("GetDeploymentStackAtManagementGroupResult", "denySettings");
            }
            this.denySettings = denySettings;
            return this;
        }
        @CustomType.Setter
        public Builder deploymentId(String deploymentId) {
            if (deploymentId == null) {
              throw new MissingRequiredPropertyException("GetDeploymentStackAtManagementGroupResult", "deploymentId");
            }
            this.deploymentId = deploymentId;
            return this;
        }
        @CustomType.Setter
        public Builder deploymentScope(@Nullable String deploymentScope) {

            this.deploymentScope = deploymentScope;
            return this;
        }
        @CustomType.Setter
        public Builder description(@Nullable String description) {

            this.description = description;
            return this;
        }
        @CustomType.Setter
        public Builder detachedResources(List detachedResources) {
            if (detachedResources == null) {
              throw new MissingRequiredPropertyException("GetDeploymentStackAtManagementGroupResult", "detachedResources");
            }
            this.detachedResources = detachedResources;
            return this;
        }
        public Builder detachedResources(ResourceReferenceResponse... detachedResources) {
            return detachedResources(List.of(detachedResources));
        }
        @CustomType.Setter
        public Builder duration(String duration) {
            if (duration == null) {
              throw new MissingRequiredPropertyException("GetDeploymentStackAtManagementGroupResult", "duration");
            }
            this.duration = duration;
            return this;
        }
        @CustomType.Setter
        public Builder error(@Nullable ErrorResponseResponse error) {

            this.error = error;
            return this;
        }
        @CustomType.Setter
        public Builder failedResources(List failedResources) {
            if (failedResources == null) {
              throw new MissingRequiredPropertyException("GetDeploymentStackAtManagementGroupResult", "failedResources");
            }
            this.failedResources = failedResources;
            return this;
        }
        public Builder failedResources(ResourceReferenceExtendedResponse... failedResources) {
            return failedResources(List.of(failedResources));
        }
        @CustomType.Setter
        public Builder id(String id) {
            if (id == null) {
              throw new MissingRequiredPropertyException("GetDeploymentStackAtManagementGroupResult", "id");
            }
            this.id = id;
            return this;
        }
        @CustomType.Setter
        public Builder location(@Nullable String location) {

            this.location = location;
            return this;
        }
        @CustomType.Setter
        public Builder name(String name) {
            if (name == null) {
              throw new MissingRequiredPropertyException("GetDeploymentStackAtManagementGroupResult", "name");
            }
            this.name = name;
            return this;
        }
        @CustomType.Setter
        public Builder outputs(Object outputs) {
            if (outputs == null) {
              throw new MissingRequiredPropertyException("GetDeploymentStackAtManagementGroupResult", "outputs");
            }
            this.outputs = outputs;
            return this;
        }
        @CustomType.Setter
        public Builder parameters(@Nullable Object parameters) {

            this.parameters = parameters;
            return this;
        }
        @CustomType.Setter
        public Builder parametersLink(@Nullable DeploymentStacksParametersLinkResponse parametersLink) {

            this.parametersLink = parametersLink;
            return this;
        }
        @CustomType.Setter
        public Builder provisioningState(String provisioningState) {
            if (provisioningState == null) {
              throw new MissingRequiredPropertyException("GetDeploymentStackAtManagementGroupResult", "provisioningState");
            }
            this.provisioningState = provisioningState;
            return this;
        }
        @CustomType.Setter
        public Builder resources(List resources) {
            if (resources == null) {
              throw new MissingRequiredPropertyException("GetDeploymentStackAtManagementGroupResult", "resources");
            }
            this.resources = resources;
            return this;
        }
        public Builder resources(ManagedResourceReferenceResponse... resources) {
            return resources(List.of(resources));
        }
        @CustomType.Setter
        public Builder systemData(SystemDataResponse systemData) {
            if (systemData == null) {
              throw new MissingRequiredPropertyException("GetDeploymentStackAtManagementGroupResult", "systemData");
            }
            this.systemData = systemData;
            return this;
        }
        @CustomType.Setter
        public Builder tags(@Nullable Map tags) {

            this.tags = tags;
            return this;
        }
        @CustomType.Setter
        public Builder type(String type) {
            if (type == null) {
              throw new MissingRequiredPropertyException("GetDeploymentStackAtManagementGroupResult", "type");
            }
            this.type = type;
            return this;
        }
        public GetDeploymentStackAtManagementGroupResult build() {
            final var _resultValue = new GetDeploymentStackAtManagementGroupResult();
            _resultValue.actionOnUnmanage = actionOnUnmanage;
            _resultValue.debugSetting = debugSetting;
            _resultValue.deletedResources = deletedResources;
            _resultValue.denySettings = denySettings;
            _resultValue.deploymentId = deploymentId;
            _resultValue.deploymentScope = deploymentScope;
            _resultValue.description = description;
            _resultValue.detachedResources = detachedResources;
            _resultValue.duration = duration;
            _resultValue.error = error;
            _resultValue.failedResources = failedResources;
            _resultValue.id = id;
            _resultValue.location = location;
            _resultValue.name = name;
            _resultValue.outputs = outputs;
            _resultValue.parameters = parameters;
            _resultValue.parametersLink = parametersLink;
            _resultValue.provisioningState = provisioningState;
            _resultValue.resources = resources;
            _resultValue.systemData = systemData;
            _resultValue.tags = tags;
            _resultValue.type = type;
            return _resultValue;
        }
    }
}