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

com.pulumi.azurenative.compute.outputs.VirtualMachineInstanceViewResponse 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.compute.outputs;

import com.pulumi.azurenative.compute.outputs.BootDiagnosticsInstanceViewResponse;
import com.pulumi.azurenative.compute.outputs.DiskInstanceViewResponse;
import com.pulumi.azurenative.compute.outputs.InstanceViewStatusResponse;
import com.pulumi.azurenative.compute.outputs.MaintenanceRedeployStatusResponse;
import com.pulumi.azurenative.compute.outputs.VirtualMachineAgentInstanceViewResponse;
import com.pulumi.azurenative.compute.outputs.VirtualMachineExtensionInstanceViewResponse;
import com.pulumi.azurenative.compute.outputs.VirtualMachineHealthStatusResponse;
import com.pulumi.azurenative.compute.outputs.VirtualMachinePatchStatusResponse;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Integer;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;

@CustomType
public final class VirtualMachineInstanceViewResponse {
    /**
     * @return Resource id of the dedicated host, on which the virtual machine is allocated through automatic placement, when the virtual machine is associated with a dedicated host group that has automatic placement enabled. Minimum api-version: 2020-06-01.
     * 
     */
    private String assignedHost;
    /**
     * @return Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. You can easily view the output of your console log. Azure also enables you to see a screenshot of the VM from the hypervisor.
     * 
     */
    private @Nullable BootDiagnosticsInstanceViewResponse bootDiagnostics;
    /**
     * @return The computer name assigned to the virtual machine.
     * 
     */
    private @Nullable String computerName;
    /**
     * @return The virtual machine disk information.
     * 
     */
    private @Nullable List disks;
    /**
     * @return The extensions information.
     * 
     */
    private @Nullable List extensions;
    /**
     * @return Specifies the HyperVGeneration Type associated with a resource
     * 
     */
    private @Nullable String hyperVGeneration;
    /**
     * @return The Maintenance Operation status on the virtual machine.
     * 
     */
    private @Nullable MaintenanceRedeployStatusResponse maintenanceRedeployStatus;
    /**
     * @return The Operating System running on the virtual machine.
     * 
     */
    private @Nullable String osName;
    /**
     * @return The version of Operating System running on the virtual machine.
     * 
     */
    private @Nullable String osVersion;
    /**
     * @return [Preview Feature] The status of virtual machine patch operations.
     * 
     */
    private @Nullable VirtualMachinePatchStatusResponse patchStatus;
    /**
     * @return Specifies the fault domain of the virtual machine.
     * 
     */
    private @Nullable Integer platformFaultDomain;
    /**
     * @return Specifies the update domain of the virtual machine.
     * 
     */
    private @Nullable Integer platformUpdateDomain;
    /**
     * @return The Remote desktop certificate thumbprint.
     * 
     */
    private @Nullable String rdpThumbPrint;
    /**
     * @return The resource status information.
     * 
     */
    private @Nullable List statuses;
    /**
     * @return The VM Agent running on the virtual machine.
     * 
     */
    private @Nullable VirtualMachineAgentInstanceViewResponse vmAgent;
    /**
     * @return The health status for the VM.
     * 
     */
    private VirtualMachineHealthStatusResponse vmHealth;

    private VirtualMachineInstanceViewResponse() {}
    /**
     * @return Resource id of the dedicated host, on which the virtual machine is allocated through automatic placement, when the virtual machine is associated with a dedicated host group that has automatic placement enabled. Minimum api-version: 2020-06-01.
     * 
     */
    public String assignedHost() {
        return this.assignedHost;
    }
    /**
     * @return Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status. You can easily view the output of your console log. Azure also enables you to see a screenshot of the VM from the hypervisor.
     * 
     */
    public Optional bootDiagnostics() {
        return Optional.ofNullable(this.bootDiagnostics);
    }
    /**
     * @return The computer name assigned to the virtual machine.
     * 
     */
    public Optional computerName() {
        return Optional.ofNullable(this.computerName);
    }
    /**
     * @return The virtual machine disk information.
     * 
     */
    public List disks() {
        return this.disks == null ? List.of() : this.disks;
    }
    /**
     * @return The extensions information.
     * 
     */
    public List extensions() {
        return this.extensions == null ? List.of() : this.extensions;
    }
    /**
     * @return Specifies the HyperVGeneration Type associated with a resource
     * 
     */
    public Optional hyperVGeneration() {
        return Optional.ofNullable(this.hyperVGeneration);
    }
    /**
     * @return The Maintenance Operation status on the virtual machine.
     * 
     */
    public Optional maintenanceRedeployStatus() {
        return Optional.ofNullable(this.maintenanceRedeployStatus);
    }
    /**
     * @return The Operating System running on the virtual machine.
     * 
     */
    public Optional osName() {
        return Optional.ofNullable(this.osName);
    }
    /**
     * @return The version of Operating System running on the virtual machine.
     * 
     */
    public Optional osVersion() {
        return Optional.ofNullable(this.osVersion);
    }
    /**
     * @return [Preview Feature] The status of virtual machine patch operations.
     * 
     */
    public Optional patchStatus() {
        return Optional.ofNullable(this.patchStatus);
    }
    /**
     * @return Specifies the fault domain of the virtual machine.
     * 
     */
    public Optional platformFaultDomain() {
        return Optional.ofNullable(this.platformFaultDomain);
    }
    /**
     * @return Specifies the update domain of the virtual machine.
     * 
     */
    public Optional platformUpdateDomain() {
        return Optional.ofNullable(this.platformUpdateDomain);
    }
    /**
     * @return The Remote desktop certificate thumbprint.
     * 
     */
    public Optional rdpThumbPrint() {
        return Optional.ofNullable(this.rdpThumbPrint);
    }
    /**
     * @return The resource status information.
     * 
     */
    public List statuses() {
        return this.statuses == null ? List.of() : this.statuses;
    }
    /**
     * @return The VM Agent running on the virtual machine.
     * 
     */
    public Optional vmAgent() {
        return Optional.ofNullable(this.vmAgent);
    }
    /**
     * @return The health status for the VM.
     * 
     */
    public VirtualMachineHealthStatusResponse vmHealth() {
        return this.vmHealth;
    }

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

    public static Builder builder(VirtualMachineInstanceViewResponse defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private String assignedHost;
        private @Nullable BootDiagnosticsInstanceViewResponse bootDiagnostics;
        private @Nullable String computerName;
        private @Nullable List disks;
        private @Nullable List extensions;
        private @Nullable String hyperVGeneration;
        private @Nullable MaintenanceRedeployStatusResponse maintenanceRedeployStatus;
        private @Nullable String osName;
        private @Nullable String osVersion;
        private @Nullable VirtualMachinePatchStatusResponse patchStatus;
        private @Nullable Integer platformFaultDomain;
        private @Nullable Integer platformUpdateDomain;
        private @Nullable String rdpThumbPrint;
        private @Nullable List statuses;
        private @Nullable VirtualMachineAgentInstanceViewResponse vmAgent;
        private VirtualMachineHealthStatusResponse vmHealth;
        public Builder() {}
        public Builder(VirtualMachineInstanceViewResponse defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.assignedHost = defaults.assignedHost;
    	      this.bootDiagnostics = defaults.bootDiagnostics;
    	      this.computerName = defaults.computerName;
    	      this.disks = defaults.disks;
    	      this.extensions = defaults.extensions;
    	      this.hyperVGeneration = defaults.hyperVGeneration;
    	      this.maintenanceRedeployStatus = defaults.maintenanceRedeployStatus;
    	      this.osName = defaults.osName;
    	      this.osVersion = defaults.osVersion;
    	      this.patchStatus = defaults.patchStatus;
    	      this.platformFaultDomain = defaults.platformFaultDomain;
    	      this.platformUpdateDomain = defaults.platformUpdateDomain;
    	      this.rdpThumbPrint = defaults.rdpThumbPrint;
    	      this.statuses = defaults.statuses;
    	      this.vmAgent = defaults.vmAgent;
    	      this.vmHealth = defaults.vmHealth;
        }

        @CustomType.Setter
        public Builder assignedHost(String assignedHost) {
            if (assignedHost == null) {
              throw new MissingRequiredPropertyException("VirtualMachineInstanceViewResponse", "assignedHost");
            }
            this.assignedHost = assignedHost;
            return this;
        }
        @CustomType.Setter
        public Builder bootDiagnostics(@Nullable BootDiagnosticsInstanceViewResponse bootDiagnostics) {

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

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

            this.disks = disks;
            return this;
        }
        public Builder disks(DiskInstanceViewResponse... disks) {
            return disks(List.of(disks));
        }
        @CustomType.Setter
        public Builder extensions(@Nullable List extensions) {

            this.extensions = extensions;
            return this;
        }
        public Builder extensions(VirtualMachineExtensionInstanceViewResponse... extensions) {
            return extensions(List.of(extensions));
        }
        @CustomType.Setter
        public Builder hyperVGeneration(@Nullable String hyperVGeneration) {

            this.hyperVGeneration = hyperVGeneration;
            return this;
        }
        @CustomType.Setter
        public Builder maintenanceRedeployStatus(@Nullable MaintenanceRedeployStatusResponse maintenanceRedeployStatus) {

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

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

            this.osVersion = osVersion;
            return this;
        }
        @CustomType.Setter
        public Builder patchStatus(@Nullable VirtualMachinePatchStatusResponse patchStatus) {

            this.patchStatus = patchStatus;
            return this;
        }
        @CustomType.Setter
        public Builder platformFaultDomain(@Nullable Integer platformFaultDomain) {

            this.platformFaultDomain = platformFaultDomain;
            return this;
        }
        @CustomType.Setter
        public Builder platformUpdateDomain(@Nullable Integer platformUpdateDomain) {

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

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

            this.statuses = statuses;
            return this;
        }
        public Builder statuses(InstanceViewStatusResponse... statuses) {
            return statuses(List.of(statuses));
        }
        @CustomType.Setter
        public Builder vmAgent(@Nullable VirtualMachineAgentInstanceViewResponse vmAgent) {

            this.vmAgent = vmAgent;
            return this;
        }
        @CustomType.Setter
        public Builder vmHealth(VirtualMachineHealthStatusResponse vmHealth) {
            if (vmHealth == null) {
              throw new MissingRequiredPropertyException("VirtualMachineInstanceViewResponse", "vmHealth");
            }
            this.vmHealth = vmHealth;
            return this;
        }
        public VirtualMachineInstanceViewResponse build() {
            final var _resultValue = new VirtualMachineInstanceViewResponse();
            _resultValue.assignedHost = assignedHost;
            _resultValue.bootDiagnostics = bootDiagnostics;
            _resultValue.computerName = computerName;
            _resultValue.disks = disks;
            _resultValue.extensions = extensions;
            _resultValue.hyperVGeneration = hyperVGeneration;
            _resultValue.maintenanceRedeployStatus = maintenanceRedeployStatus;
            _resultValue.osName = osName;
            _resultValue.osVersion = osVersion;
            _resultValue.patchStatus = patchStatus;
            _resultValue.platformFaultDomain = platformFaultDomain;
            _resultValue.platformUpdateDomain = platformUpdateDomain;
            _resultValue.rdpThumbPrint = rdpThumbPrint;
            _resultValue.statuses = statuses;
            _resultValue.vmAgent = vmAgent;
            _resultValue.vmHealth = vmHealth;
            return _resultValue;
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy