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

com.pulumi.azurenative.migrate.AssessmentProjectsOperationArgs Maven / Gradle / Ivy

// *** 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.migrate;

import com.pulumi.azurenative.migrate.enums.ProjectStatus;
import com.pulumi.azurenative.migrate.enums.ProvisioningState;
import com.pulumi.core.Either;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.String;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


public final class AssessmentProjectsOperationArgs extends com.pulumi.resources.ResourceArgs {

    public static final AssessmentProjectsOperationArgs Empty = new AssessmentProjectsOperationArgs();

    /**
     * Assessment solution ARM id tracked by Microsoft.Migrate/migrateProjects.
     * 
     */
    @Import(name="assessmentSolutionId")
    private @Nullable Output assessmentSolutionId;

    /**
     * @return Assessment solution ARM id tracked by Microsoft.Migrate/migrateProjects.
     * 
     */
    public Optional> assessmentSolutionId() {
        return Optional.ofNullable(this.assessmentSolutionId);
    }

    /**
     * The ARM id of the storage account used for interactions when public access is
     * disabled.
     * 
     */
    @Import(name="customerStorageAccountArmId")
    private @Nullable Output customerStorageAccountArmId;

    /**
     * @return The ARM id of the storage account used for interactions when public access is
     * disabled.
     * 
     */
    public Optional> customerStorageAccountArmId() {
        return Optional.ofNullable(this.customerStorageAccountArmId);
    }

    /**
     * The ARM id of service map workspace created by customer.
     * 
     */
    @Import(name="customerWorkspaceId")
    private @Nullable Output customerWorkspaceId;

    /**
     * @return The ARM id of service map workspace created by customer.
     * 
     */
    public Optional> customerWorkspaceId() {
        return Optional.ofNullable(this.customerWorkspaceId);
    }

    /**
     * Location of service map workspace created by customer.
     * 
     */
    @Import(name="customerWorkspaceLocation")
    private @Nullable Output customerWorkspaceLocation;

    /**
     * @return Location of service map workspace created by customer.
     * 
     */
    public Optional> customerWorkspaceLocation() {
        return Optional.ofNullable(this.customerWorkspaceLocation);
    }

    /**
     * The geo-location where the resource lives
     * 
     */
    @Import(name="location")
    private @Nullable Output location;

    /**
     * @return The geo-location where the resource lives
     * 
     */
    public Optional> location() {
        return Optional.ofNullable(this.location);
    }

    /**
     * Assessment Project Name
     * 
     */
    @Import(name="projectName")
    private @Nullable Output projectName;

    /**
     * @return Assessment Project Name
     * 
     */
    public Optional> projectName() {
        return Optional.ofNullable(this.projectName);
    }

    /**
     * Assessment project status.
     * 
     */
    @Import(name="projectStatus")
    private @Nullable Output> projectStatus;

    /**
     * @return Assessment project status.
     * 
     */
    public Optional>> projectStatus() {
        return Optional.ofNullable(this.projectStatus);
    }

    /**
     * The status of the last operation.
     * 
     */
    @Import(name="provisioningState")
    private @Nullable Output> provisioningState;

    /**
     * @return The status of the last operation.
     * 
     */
    public Optional>> provisioningState() {
        return Optional.ofNullable(this.provisioningState);
    }

    /**
     * This value can be set to 'enabled' to avoid breaking changes on existing
     * customer resources and templates. If set to 'disabled', traffic over public
     * interface is not allowed, and private endpoint connections would be the
     * exclusive access method.
     * 
     */
    @Import(name="publicNetworkAccess")
    private @Nullable Output publicNetworkAccess;

    /**
     * @return This value can be set to 'enabled' to avoid breaking changes on existing
     * customer resources and templates. If set to 'disabled', traffic over public
     * interface is not allowed, and private endpoint connections would be the
     * exclusive access method.
     * 
     */
    public Optional> publicNetworkAccess() {
        return Optional.ofNullable(this.publicNetworkAccess);
    }

    /**
     * The name of the resource group. The name is case insensitive.
     * 
     */
    @Import(name="resourceGroupName", required=true)
    private Output resourceGroupName;

    /**
     * @return The name of the resource group. The name is case insensitive.
     * 
     */
    public Output resourceGroupName() {
        return this.resourceGroupName;
    }

    /**
     * Resource tags.
     * 
     */
    @Import(name="tags")
    private @Nullable Output> tags;

    /**
     * @return Resource tags.
     * 
     */
    public Optional>> tags() {
        return Optional.ofNullable(this.tags);
    }

    private AssessmentProjectsOperationArgs() {}

    private AssessmentProjectsOperationArgs(AssessmentProjectsOperationArgs $) {
        this.assessmentSolutionId = $.assessmentSolutionId;
        this.customerStorageAccountArmId = $.customerStorageAccountArmId;
        this.customerWorkspaceId = $.customerWorkspaceId;
        this.customerWorkspaceLocation = $.customerWorkspaceLocation;
        this.location = $.location;
        this.projectName = $.projectName;
        this.projectStatus = $.projectStatus;
        this.provisioningState = $.provisioningState;
        this.publicNetworkAccess = $.publicNetworkAccess;
        this.resourceGroupName = $.resourceGroupName;
        this.tags = $.tags;
    }

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

    public static final class Builder {
        private AssessmentProjectsOperationArgs $;

        public Builder() {
            $ = new AssessmentProjectsOperationArgs();
        }

        public Builder(AssessmentProjectsOperationArgs defaults) {
            $ = new AssessmentProjectsOperationArgs(Objects.requireNonNull(defaults));
        }

        /**
         * @param assessmentSolutionId Assessment solution ARM id tracked by Microsoft.Migrate/migrateProjects.
         * 
         * @return builder
         * 
         */
        public Builder assessmentSolutionId(@Nullable Output assessmentSolutionId) {
            $.assessmentSolutionId = assessmentSolutionId;
            return this;
        }

        /**
         * @param assessmentSolutionId Assessment solution ARM id tracked by Microsoft.Migrate/migrateProjects.
         * 
         * @return builder
         * 
         */
        public Builder assessmentSolutionId(String assessmentSolutionId) {
            return assessmentSolutionId(Output.of(assessmentSolutionId));
        }

        /**
         * @param customerStorageAccountArmId The ARM id of the storage account used for interactions when public access is
         * disabled.
         * 
         * @return builder
         * 
         */
        public Builder customerStorageAccountArmId(@Nullable Output customerStorageAccountArmId) {
            $.customerStorageAccountArmId = customerStorageAccountArmId;
            return this;
        }

        /**
         * @param customerStorageAccountArmId The ARM id of the storage account used for interactions when public access is
         * disabled.
         * 
         * @return builder
         * 
         */
        public Builder customerStorageAccountArmId(String customerStorageAccountArmId) {
            return customerStorageAccountArmId(Output.of(customerStorageAccountArmId));
        }

        /**
         * @param customerWorkspaceId The ARM id of service map workspace created by customer.
         * 
         * @return builder
         * 
         */
        public Builder customerWorkspaceId(@Nullable Output customerWorkspaceId) {
            $.customerWorkspaceId = customerWorkspaceId;
            return this;
        }

        /**
         * @param customerWorkspaceId The ARM id of service map workspace created by customer.
         * 
         * @return builder
         * 
         */
        public Builder customerWorkspaceId(String customerWorkspaceId) {
            return customerWorkspaceId(Output.of(customerWorkspaceId));
        }

        /**
         * @param customerWorkspaceLocation Location of service map workspace created by customer.
         * 
         * @return builder
         * 
         */
        public Builder customerWorkspaceLocation(@Nullable Output customerWorkspaceLocation) {
            $.customerWorkspaceLocation = customerWorkspaceLocation;
            return this;
        }

        /**
         * @param customerWorkspaceLocation Location of service map workspace created by customer.
         * 
         * @return builder
         * 
         */
        public Builder customerWorkspaceLocation(String customerWorkspaceLocation) {
            return customerWorkspaceLocation(Output.of(customerWorkspaceLocation));
        }

        /**
         * @param location The geo-location where the resource lives
         * 
         * @return builder
         * 
         */
        public Builder location(@Nullable Output location) {
            $.location = location;
            return this;
        }

        /**
         * @param location The geo-location where the resource lives
         * 
         * @return builder
         * 
         */
        public Builder location(String location) {
            return location(Output.of(location));
        }

        /**
         * @param projectName Assessment Project Name
         * 
         * @return builder
         * 
         */
        public Builder projectName(@Nullable Output projectName) {
            $.projectName = projectName;
            return this;
        }

        /**
         * @param projectName Assessment Project Name
         * 
         * @return builder
         * 
         */
        public Builder projectName(String projectName) {
            return projectName(Output.of(projectName));
        }

        /**
         * @param projectStatus Assessment project status.
         * 
         * @return builder
         * 
         */
        public Builder projectStatus(@Nullable Output> projectStatus) {
            $.projectStatus = projectStatus;
            return this;
        }

        /**
         * @param projectStatus Assessment project status.
         * 
         * @return builder
         * 
         */
        public Builder projectStatus(Either projectStatus) {
            return projectStatus(Output.of(projectStatus));
        }

        /**
         * @param projectStatus Assessment project status.
         * 
         * @return builder
         * 
         */
        public Builder projectStatus(String projectStatus) {
            return projectStatus(Either.ofLeft(projectStatus));
        }

        /**
         * @param projectStatus Assessment project status.
         * 
         * @return builder
         * 
         */
        public Builder projectStatus(ProjectStatus projectStatus) {
            return projectStatus(Either.ofRight(projectStatus));
        }

        /**
         * @param provisioningState The status of the last operation.
         * 
         * @return builder
         * 
         */
        public Builder provisioningState(@Nullable Output> provisioningState) {
            $.provisioningState = provisioningState;
            return this;
        }

        /**
         * @param provisioningState The status of the last operation.
         * 
         * @return builder
         * 
         */
        public Builder provisioningState(Either provisioningState) {
            return provisioningState(Output.of(provisioningState));
        }

        /**
         * @param provisioningState The status of the last operation.
         * 
         * @return builder
         * 
         */
        public Builder provisioningState(String provisioningState) {
            return provisioningState(Either.ofLeft(provisioningState));
        }

        /**
         * @param provisioningState The status of the last operation.
         * 
         * @return builder
         * 
         */
        public Builder provisioningState(ProvisioningState provisioningState) {
            return provisioningState(Either.ofRight(provisioningState));
        }

        /**
         * @param publicNetworkAccess This value can be set to 'enabled' to avoid breaking changes on existing
         * customer resources and templates. If set to 'disabled', traffic over public
         * interface is not allowed, and private endpoint connections would be the
         * exclusive access method.
         * 
         * @return builder
         * 
         */
        public Builder publicNetworkAccess(@Nullable Output publicNetworkAccess) {
            $.publicNetworkAccess = publicNetworkAccess;
            return this;
        }

        /**
         * @param publicNetworkAccess This value can be set to 'enabled' to avoid breaking changes on existing
         * customer resources and templates. If set to 'disabled', traffic over public
         * interface is not allowed, and private endpoint connections would be the
         * exclusive access method.
         * 
         * @return builder
         * 
         */
        public Builder publicNetworkAccess(String publicNetworkAccess) {
            return publicNetworkAccess(Output.of(publicNetworkAccess));
        }

        /**
         * @param resourceGroupName The name of the resource group. The name is case insensitive.
         * 
         * @return builder
         * 
         */
        public Builder resourceGroupName(Output resourceGroupName) {
            $.resourceGroupName = resourceGroupName;
            return this;
        }

        /**
         * @param resourceGroupName The name of the resource group. The name is case insensitive.
         * 
         * @return builder
         * 
         */
        public Builder resourceGroupName(String resourceGroupName) {
            return resourceGroupName(Output.of(resourceGroupName));
        }

        /**
         * @param tags Resource tags.
         * 
         * @return builder
         * 
         */
        public Builder tags(@Nullable Output> tags) {
            $.tags = tags;
            return this;
        }

        /**
         * @param tags Resource tags.
         * 
         * @return builder
         * 
         */
        public Builder tags(Map tags) {
            return tags(Output.of(tags));
        }

        public AssessmentProjectsOperationArgs build() {
            if ($.resourceGroupName == null) {
                throw new MissingRequiredPropertyException("AssessmentProjectsOperationArgs", "resourceGroupName");
            }
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy