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

com.pulumi.azurenative.kubernetesconfiguration.outputs.GetExtensionResult Maven / Gradle / Ivy

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

import com.pulumi.azurenative.kubernetesconfiguration.outputs.ErrorDetailResponse;
import com.pulumi.azurenative.kubernetesconfiguration.outputs.ExtensionResponseAksAssignedIdentity;
import com.pulumi.azurenative.kubernetesconfiguration.outputs.ExtensionStatusResponse;
import com.pulumi.azurenative.kubernetesconfiguration.outputs.IdentityResponse;
import com.pulumi.azurenative.kubernetesconfiguration.outputs.PlanResponse;
import com.pulumi.azurenative.kubernetesconfiguration.outputs.ScopeResponse;
import com.pulumi.azurenative.kubernetesconfiguration.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 GetExtensionResult {
    /**
     * @return Identity of the Extension resource in an AKS cluster
     * 
     */
    private @Nullable ExtensionResponseAksAssignedIdentity aksAssignedIdentity;
    /**
     * @return Flag to note if this extension participates in auto upgrade of minor version, or not.
     * 
     */
    private @Nullable Boolean autoUpgradeMinorVersion;
    /**
     * @return Configuration settings that are sensitive, as name-value pairs for configuring this extension.
     * 
     */
    private @Nullable Map configurationProtectedSettings;
    /**
     * @return Configuration settings, as name-value pairs for configuring this extension.
     * 
     */
    private @Nullable Map configurationSettings;
    /**
     * @return Currently installed version of the extension.
     * 
     */
    private String currentVersion;
    /**
     * @return Custom Location settings properties.
     * 
     */
    private Map customLocationSettings;
    /**
     * @return Error information from the Agent - e.g. errors during installation.
     * 
     */
    private ErrorDetailResponse errorInfo;
    /**
     * @return Type of the Extension, of which this resource is an instance of.  It must be one of the Extension Types registered with Microsoft.KubernetesConfiguration by the Extension publisher.
     * 
     */
    private @Nullable String extensionType;
    /**
     * @return Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
     * 
     */
    private String id;
    /**
     * @return Identity of the Extension resource
     * 
     */
    private @Nullable IdentityResponse identity;
    /**
     * @return Flag to note if this extension is a system extension
     * 
     */
    private Boolean isSystemExtension;
    /**
     * @return The name of the resource
     * 
     */
    private String name;
    /**
     * @return Uri of the Helm package
     * 
     */
    private String packageUri;
    /**
     * @return The plan information.
     * 
     */
    private @Nullable PlanResponse plan;
    /**
     * @return Status of installation of this extension.
     * 
     */
    private String provisioningState;
    /**
     * @return ReleaseTrain this extension participates in for auto-upgrade (e.g. Stable, Preview, etc.) - only if autoUpgradeMinorVersion is 'true'.
     * 
     */
    private @Nullable String releaseTrain;
    /**
     * @return Scope at which the extension is installed.
     * 
     */
    private @Nullable ScopeResponse scope;
    /**
     * @return Status from this extension.
     * 
     */
    private @Nullable List statuses;
    /**
     * @return Top level metadata https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/common-api-contracts.md#system-metadata-for-all-azure-resources
     * 
     */
    private SystemDataResponse systemData;
    /**
     * @return The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
     * 
     */
    private String type;
    /**
     * @return User-specified version of the extension for this extension to 'pin'. To use 'version', autoUpgradeMinorVersion must be 'false'.
     * 
     */
    private @Nullable String version;

    private GetExtensionResult() {}
    /**
     * @return Identity of the Extension resource in an AKS cluster
     * 
     */
    public Optional aksAssignedIdentity() {
        return Optional.ofNullable(this.aksAssignedIdentity);
    }
    /**
     * @return Flag to note if this extension participates in auto upgrade of minor version, or not.
     * 
     */
    public Optional autoUpgradeMinorVersion() {
        return Optional.ofNullable(this.autoUpgradeMinorVersion);
    }
    /**
     * @return Configuration settings that are sensitive, as name-value pairs for configuring this extension.
     * 
     */
    public Map configurationProtectedSettings() {
        return this.configurationProtectedSettings == null ? Map.of() : this.configurationProtectedSettings;
    }
    /**
     * @return Configuration settings, as name-value pairs for configuring this extension.
     * 
     */
    public Map configurationSettings() {
        return this.configurationSettings == null ? Map.of() : this.configurationSettings;
    }
    /**
     * @return Currently installed version of the extension.
     * 
     */
    public String currentVersion() {
        return this.currentVersion;
    }
    /**
     * @return Custom Location settings properties.
     * 
     */
    public Map customLocationSettings() {
        return this.customLocationSettings;
    }
    /**
     * @return Error information from the Agent - e.g. errors during installation.
     * 
     */
    public ErrorDetailResponse errorInfo() {
        return this.errorInfo;
    }
    /**
     * @return Type of the Extension, of which this resource is an instance of.  It must be one of the Extension Types registered with Microsoft.KubernetesConfiguration by the Extension publisher.
     * 
     */
    public Optional extensionType() {
        return Optional.ofNullable(this.extensionType);
    }
    /**
     * @return Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
     * 
     */
    public String id() {
        return this.id;
    }
    /**
     * @return Identity of the Extension resource
     * 
     */
    public Optional identity() {
        return Optional.ofNullable(this.identity);
    }
    /**
     * @return Flag to note if this extension is a system extension
     * 
     */
    public Boolean isSystemExtension() {
        return this.isSystemExtension;
    }
    /**
     * @return The name of the resource
     * 
     */
    public String name() {
        return this.name;
    }
    /**
     * @return Uri of the Helm package
     * 
     */
    public String packageUri() {
        return this.packageUri;
    }
    /**
     * @return The plan information.
     * 
     */
    public Optional plan() {
        return Optional.ofNullable(this.plan);
    }
    /**
     * @return Status of installation of this extension.
     * 
     */
    public String provisioningState() {
        return this.provisioningState;
    }
    /**
     * @return ReleaseTrain this extension participates in for auto-upgrade (e.g. Stable, Preview, etc.) - only if autoUpgradeMinorVersion is 'true'.
     * 
     */
    public Optional releaseTrain() {
        return Optional.ofNullable(this.releaseTrain);
    }
    /**
     * @return Scope at which the extension is installed.
     * 
     */
    public Optional scope() {
        return Optional.ofNullable(this.scope);
    }
    /**
     * @return Status from this extension.
     * 
     */
    public List statuses() {
        return this.statuses == null ? List.of() : this.statuses;
    }
    /**
     * @return Top level metadata https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/common-api-contracts.md#system-metadata-for-all-azure-resources
     * 
     */
    public SystemDataResponse systemData() {
        return this.systemData;
    }
    /**
     * @return The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
     * 
     */
    public String type() {
        return this.type;
    }
    /**
     * @return User-specified version of the extension for this extension to 'pin'. To use 'version', autoUpgradeMinorVersion must be 'false'.
     * 
     */
    public Optional version() {
        return Optional.ofNullable(this.version);
    }

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

    public static Builder builder(GetExtensionResult defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private @Nullable ExtensionResponseAksAssignedIdentity aksAssignedIdentity;
        private @Nullable Boolean autoUpgradeMinorVersion;
        private @Nullable Map configurationProtectedSettings;
        private @Nullable Map configurationSettings;
        private String currentVersion;
        private Map customLocationSettings;
        private ErrorDetailResponse errorInfo;
        private @Nullable String extensionType;
        private String id;
        private @Nullable IdentityResponse identity;
        private Boolean isSystemExtension;
        private String name;
        private String packageUri;
        private @Nullable PlanResponse plan;
        private String provisioningState;
        private @Nullable String releaseTrain;
        private @Nullable ScopeResponse scope;
        private @Nullable List statuses;
        private SystemDataResponse systemData;
        private String type;
        private @Nullable String version;
        public Builder() {}
        public Builder(GetExtensionResult defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.aksAssignedIdentity = defaults.aksAssignedIdentity;
    	      this.autoUpgradeMinorVersion = defaults.autoUpgradeMinorVersion;
    	      this.configurationProtectedSettings = defaults.configurationProtectedSettings;
    	      this.configurationSettings = defaults.configurationSettings;
    	      this.currentVersion = defaults.currentVersion;
    	      this.customLocationSettings = defaults.customLocationSettings;
    	      this.errorInfo = defaults.errorInfo;
    	      this.extensionType = defaults.extensionType;
    	      this.id = defaults.id;
    	      this.identity = defaults.identity;
    	      this.isSystemExtension = defaults.isSystemExtension;
    	      this.name = defaults.name;
    	      this.packageUri = defaults.packageUri;
    	      this.plan = defaults.plan;
    	      this.provisioningState = defaults.provisioningState;
    	      this.releaseTrain = defaults.releaseTrain;
    	      this.scope = defaults.scope;
    	      this.statuses = defaults.statuses;
    	      this.systemData = defaults.systemData;
    	      this.type = defaults.type;
    	      this.version = defaults.version;
        }

        @CustomType.Setter
        public Builder aksAssignedIdentity(@Nullable ExtensionResponseAksAssignedIdentity aksAssignedIdentity) {

            this.aksAssignedIdentity = aksAssignedIdentity;
            return this;
        }
        @CustomType.Setter
        public Builder autoUpgradeMinorVersion(@Nullable Boolean autoUpgradeMinorVersion) {

            this.autoUpgradeMinorVersion = autoUpgradeMinorVersion;
            return this;
        }
        @CustomType.Setter
        public Builder configurationProtectedSettings(@Nullable Map configurationProtectedSettings) {

            this.configurationProtectedSettings = configurationProtectedSettings;
            return this;
        }
        @CustomType.Setter
        public Builder configurationSettings(@Nullable Map configurationSettings) {

            this.configurationSettings = configurationSettings;
            return this;
        }
        @CustomType.Setter
        public Builder currentVersion(String currentVersion) {
            if (currentVersion == null) {
              throw new MissingRequiredPropertyException("GetExtensionResult", "currentVersion");
            }
            this.currentVersion = currentVersion;
            return this;
        }
        @CustomType.Setter
        public Builder customLocationSettings(Map customLocationSettings) {
            if (customLocationSettings == null) {
              throw new MissingRequiredPropertyException("GetExtensionResult", "customLocationSettings");
            }
            this.customLocationSettings = customLocationSettings;
            return this;
        }
        @CustomType.Setter
        public Builder errorInfo(ErrorDetailResponse errorInfo) {
            if (errorInfo == null) {
              throw new MissingRequiredPropertyException("GetExtensionResult", "errorInfo");
            }
            this.errorInfo = errorInfo;
            return this;
        }
        @CustomType.Setter
        public Builder extensionType(@Nullable String extensionType) {

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

            this.identity = identity;
            return this;
        }
        @CustomType.Setter
        public Builder isSystemExtension(Boolean isSystemExtension) {
            if (isSystemExtension == null) {
              throw new MissingRequiredPropertyException("GetExtensionResult", "isSystemExtension");
            }
            this.isSystemExtension = isSystemExtension;
            return this;
        }
        @CustomType.Setter
        public Builder name(String name) {
            if (name == null) {
              throw new MissingRequiredPropertyException("GetExtensionResult", "name");
            }
            this.name = name;
            return this;
        }
        @CustomType.Setter
        public Builder packageUri(String packageUri) {
            if (packageUri == null) {
              throw new MissingRequiredPropertyException("GetExtensionResult", "packageUri");
            }
            this.packageUri = packageUri;
            return this;
        }
        @CustomType.Setter
        public Builder plan(@Nullable PlanResponse plan) {

            this.plan = plan;
            return this;
        }
        @CustomType.Setter
        public Builder provisioningState(String provisioningState) {
            if (provisioningState == null) {
              throw new MissingRequiredPropertyException("GetExtensionResult", "provisioningState");
            }
            this.provisioningState = provisioningState;
            return this;
        }
        @CustomType.Setter
        public Builder releaseTrain(@Nullable String releaseTrain) {

            this.releaseTrain = releaseTrain;
            return this;
        }
        @CustomType.Setter
        public Builder scope(@Nullable ScopeResponse scope) {

            this.scope = scope;
            return this;
        }
        @CustomType.Setter
        public Builder statuses(@Nullable List statuses) {

            this.statuses = statuses;
            return this;
        }
        public Builder statuses(ExtensionStatusResponse... statuses) {
            return statuses(List.of(statuses));
        }
        @CustomType.Setter
        public Builder systemData(SystemDataResponse systemData) {
            if (systemData == null) {
              throw new MissingRequiredPropertyException("GetExtensionResult", "systemData");
            }
            this.systemData = systemData;
            return this;
        }
        @CustomType.Setter
        public Builder type(String type) {
            if (type == null) {
              throw new MissingRequiredPropertyException("GetExtensionResult", "type");
            }
            this.type = type;
            return this;
        }
        @CustomType.Setter
        public Builder version(@Nullable String version) {

            this.version = version;
            return this;
        }
        public GetExtensionResult build() {
            final var _resultValue = new GetExtensionResult();
            _resultValue.aksAssignedIdentity = aksAssignedIdentity;
            _resultValue.autoUpgradeMinorVersion = autoUpgradeMinorVersion;
            _resultValue.configurationProtectedSettings = configurationProtectedSettings;
            _resultValue.configurationSettings = configurationSettings;
            _resultValue.currentVersion = currentVersion;
            _resultValue.customLocationSettings = customLocationSettings;
            _resultValue.errorInfo = errorInfo;
            _resultValue.extensionType = extensionType;
            _resultValue.id = id;
            _resultValue.identity = identity;
            _resultValue.isSystemExtension = isSystemExtension;
            _resultValue.name = name;
            _resultValue.packageUri = packageUri;
            _resultValue.plan = plan;
            _resultValue.provisioningState = provisioningState;
            _resultValue.releaseTrain = releaseTrain;
            _resultValue.scope = scope;
            _resultValue.statuses = statuses;
            _resultValue.systemData = systemData;
            _resultValue.type = type;
            _resultValue.version = version;
            return _resultValue;
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy