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

com.pulumi.azurenative.desktopvirtualization.outputs.GetWorkspaceResult Maven / Gradle / Ivy

There is a newer version: 2.89.2
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.desktopvirtualization.outputs;

import com.pulumi.azurenative.desktopvirtualization.outputs.ResourceModelWithAllowedPropertySetResponseIdentity;
import com.pulumi.azurenative.desktopvirtualization.outputs.ResourceModelWithAllowedPropertySetResponsePlan;
import com.pulumi.azurenative.desktopvirtualization.outputs.ResourceModelWithAllowedPropertySetResponseSku;
import com.pulumi.azurenative.desktopvirtualization.outputs.SystemDataResponse;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Boolean;
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 GetWorkspaceResult {
    /**
     * @return List of applicationGroup resource Ids.
     * 
     */
    private @Nullable List applicationGroupReferences;
    /**
     * @return Is cloud pc resource.
     * 
     */
    private Boolean cloudPcResource;
    /**
     * @return Description of Workspace.
     * 
     */
    private @Nullable String description;
    /**
     * @return The etag field is *not* required. If it is provided in the response body, it must also be provided as a header per the normal etag convention.  Entity tags are used for comparing two or more entities from the same requested resource. HTTP/1.1 uses entity tags in the etag (section 14.19), If-Match (section 14.24), If-None-Match (section 14.26), and If-Range (section 14.27) header fields.
     * 
     */
    private String etag;
    /**
     * @return Friendly name of Workspace.
     * 
     */
    private @Nullable String friendlyName;
    /**
     * @return Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
     * 
     */
    private String id;
    private @Nullable ResourceModelWithAllowedPropertySetResponseIdentity identity;
    /**
     * @return Metadata used by portal/tooling/etc to render different UX experiences for resources of the same type; e.g. ApiApps are a kind of Microsoft.Web/sites type.  If supported, the resource provider must validate and persist this value.
     * 
     */
    private @Nullable String kind;
    /**
     * @return The geo-location where the resource lives
     * 
     */
    private @Nullable String location;
    /**
     * @return The fully qualified resource ID of the resource that manages this resource. Indicates if this resource is managed by another Azure resource. If this is present, complete mode deployment will not delete the resource if it is removed from the template since it is managed by another resource.
     * 
     */
    private @Nullable String managedBy;
    /**
     * @return The name of the resource
     * 
     */
    private String name;
    /**
     * @return ObjectId of Workspace. (internal use)
     * 
     */
    private String objectId;
    private @Nullable ResourceModelWithAllowedPropertySetResponsePlan plan;
    private @Nullable ResourceModelWithAllowedPropertySetResponseSku sku;
    /**
     * @return Metadata pertaining to creation and last modification of the resource.
     * 
     */
    private SystemDataResponse systemData;
    /**
     * @return Resource tags.
     * 
     */
    private @Nullable Map tags;
    /**
     * @return The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
     * 
     */
    private String type;

    private GetWorkspaceResult() {}
    /**
     * @return List of applicationGroup resource Ids.
     * 
     */
    public List applicationGroupReferences() {
        return this.applicationGroupReferences == null ? List.of() : this.applicationGroupReferences;
    }
    /**
     * @return Is cloud pc resource.
     * 
     */
    public Boolean cloudPcResource() {
        return this.cloudPcResource;
    }
    /**
     * @return Description of Workspace.
     * 
     */
    public Optional description() {
        return Optional.ofNullable(this.description);
    }
    /**
     * @return The etag field is *not* required. If it is provided in the response body, it must also be provided as a header per the normal etag convention.  Entity tags are used for comparing two or more entities from the same requested resource. HTTP/1.1 uses entity tags in the etag (section 14.19), If-Match (section 14.24), If-None-Match (section 14.26), and If-Range (section 14.27) header fields.
     * 
     */
    public String etag() {
        return this.etag;
    }
    /**
     * @return Friendly name of Workspace.
     * 
     */
    public Optional friendlyName() {
        return Optional.ofNullable(this.friendlyName);
    }
    /**
     * @return Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
     * 
     */
    public String id() {
        return this.id;
    }
    public Optional identity() {
        return Optional.ofNullable(this.identity);
    }
    /**
     * @return Metadata used by portal/tooling/etc to render different UX experiences for resources of the same type; e.g. ApiApps are a kind of Microsoft.Web/sites type.  If supported, the resource provider must validate and persist this value.
     * 
     */
    public Optional kind() {
        return Optional.ofNullable(this.kind);
    }
    /**
     * @return The geo-location where the resource lives
     * 
     */
    public Optional location() {
        return Optional.ofNullable(this.location);
    }
    /**
     * @return The fully qualified resource ID of the resource that manages this resource. Indicates if this resource is managed by another Azure resource. If this is present, complete mode deployment will not delete the resource if it is removed from the template since it is managed by another resource.
     * 
     */
    public Optional managedBy() {
        return Optional.ofNullable(this.managedBy);
    }
    /**
     * @return The name of the resource
     * 
     */
    public String name() {
        return this.name;
    }
    /**
     * @return ObjectId of Workspace. (internal use)
     * 
     */
    public String objectId() {
        return this.objectId;
    }
    public Optional plan() {
        return Optional.ofNullable(this.plan);
    }
    public Optional sku() {
        return Optional.ofNullable(this.sku);
    }
    /**
     * @return Metadata pertaining to creation and last modification of the resource.
     * 
     */
    public SystemDataResponse systemData() {
        return this.systemData;
    }
    /**
     * @return Resource tags.
     * 
     */
    public Map tags() {
        return this.tags == null ? Map.of() : this.tags;
    }
    /**
     * @return The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
     * 
     */
    public String type() {
        return this.type;
    }

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

    public static Builder builder(GetWorkspaceResult defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private @Nullable List applicationGroupReferences;
        private Boolean cloudPcResource;
        private @Nullable String description;
        private String etag;
        private @Nullable String friendlyName;
        private String id;
        private @Nullable ResourceModelWithAllowedPropertySetResponseIdentity identity;
        private @Nullable String kind;
        private @Nullable String location;
        private @Nullable String managedBy;
        private String name;
        private String objectId;
        private @Nullable ResourceModelWithAllowedPropertySetResponsePlan plan;
        private @Nullable ResourceModelWithAllowedPropertySetResponseSku sku;
        private SystemDataResponse systemData;
        private @Nullable Map tags;
        private String type;
        public Builder() {}
        public Builder(GetWorkspaceResult defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.applicationGroupReferences = defaults.applicationGroupReferences;
    	      this.cloudPcResource = defaults.cloudPcResource;
    	      this.description = defaults.description;
    	      this.etag = defaults.etag;
    	      this.friendlyName = defaults.friendlyName;
    	      this.id = defaults.id;
    	      this.identity = defaults.identity;
    	      this.kind = defaults.kind;
    	      this.location = defaults.location;
    	      this.managedBy = defaults.managedBy;
    	      this.name = defaults.name;
    	      this.objectId = defaults.objectId;
    	      this.plan = defaults.plan;
    	      this.sku = defaults.sku;
    	      this.systemData = defaults.systemData;
    	      this.tags = defaults.tags;
    	      this.type = defaults.type;
        }

        @CustomType.Setter
        public Builder applicationGroupReferences(@Nullable List applicationGroupReferences) {

            this.applicationGroupReferences = applicationGroupReferences;
            return this;
        }
        public Builder applicationGroupReferences(String... applicationGroupReferences) {
            return applicationGroupReferences(List.of(applicationGroupReferences));
        }
        @CustomType.Setter
        public Builder cloudPcResource(Boolean cloudPcResource) {
            if (cloudPcResource == null) {
              throw new MissingRequiredPropertyException("GetWorkspaceResult", "cloudPcResource");
            }
            this.cloudPcResource = cloudPcResource;
            return this;
        }
        @CustomType.Setter
        public Builder description(@Nullable String description) {

            this.description = description;
            return this;
        }
        @CustomType.Setter
        public Builder etag(String etag) {
            if (etag == null) {
              throw new MissingRequiredPropertyException("GetWorkspaceResult", "etag");
            }
            this.etag = etag;
            return this;
        }
        @CustomType.Setter
        public Builder friendlyName(@Nullable String friendlyName) {

            this.friendlyName = friendlyName;
            return this;
        }
        @CustomType.Setter
        public Builder id(String id) {
            if (id == null) {
              throw new MissingRequiredPropertyException("GetWorkspaceResult", "id");
            }
            this.id = id;
            return this;
        }
        @CustomType.Setter
        public Builder identity(@Nullable ResourceModelWithAllowedPropertySetResponseIdentity identity) {

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

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

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

            this.managedBy = managedBy;
            return this;
        }
        @CustomType.Setter
        public Builder name(String name) {
            if (name == null) {
              throw new MissingRequiredPropertyException("GetWorkspaceResult", "name");
            }
            this.name = name;
            return this;
        }
        @CustomType.Setter
        public Builder objectId(String objectId) {
            if (objectId == null) {
              throw new MissingRequiredPropertyException("GetWorkspaceResult", "objectId");
            }
            this.objectId = objectId;
            return this;
        }
        @CustomType.Setter
        public Builder plan(@Nullable ResourceModelWithAllowedPropertySetResponsePlan plan) {

            this.plan = plan;
            return this;
        }
        @CustomType.Setter
        public Builder sku(@Nullable ResourceModelWithAllowedPropertySetResponseSku sku) {

            this.sku = sku;
            return this;
        }
        @CustomType.Setter
        public Builder systemData(SystemDataResponse systemData) {
            if (systemData == null) {
              throw new MissingRequiredPropertyException("GetWorkspaceResult", "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("GetWorkspaceResult", "type");
            }
            this.type = type;
            return this;
        }
        public GetWorkspaceResult build() {
            final var _resultValue = new GetWorkspaceResult();
            _resultValue.applicationGroupReferences = applicationGroupReferences;
            _resultValue.cloudPcResource = cloudPcResource;
            _resultValue.description = description;
            _resultValue.etag = etag;
            _resultValue.friendlyName = friendlyName;
            _resultValue.id = id;
            _resultValue.identity = identity;
            _resultValue.kind = kind;
            _resultValue.location = location;
            _resultValue.managedBy = managedBy;
            _resultValue.name = name;
            _resultValue.objectId = objectId;
            _resultValue.plan = plan;
            _resultValue.sku = sku;
            _resultValue.systemData = systemData;
            _resultValue.tags = tags;
            _resultValue.type = type;
            return _resultValue;
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy