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

com.pulumi.azurenative.recoveryservices.outputs.IaaSVMContainerResponse 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.recoveryservices.outputs;

import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;

@CustomType
public final class IaaSVMContainerResponse {
    /**
     * @return Type of backup management for the container.
     * 
     */
    private @Nullable String backupManagementType;
    /**
     * @return Type of the container. The value of this property for: 1. Compute Azure VM is Microsoft.Compute/virtualMachines 2.
     * Classic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines 3. Windows machines (like MAB, DPM etc) is
     * Windows 4. Azure SQL instance is AzureSqlContainer. 5. Storage containers is StorageContainer. 6. Azure workload
     * Backup is VMAppContainer
     * Expected value is 'IaasVMContainer'.
     * 
     */
    private String containerType;
    /**
     * @return Friendly name of the container.
     * 
     */
    private @Nullable String friendlyName;
    /**
     * @return Status of health of the container.
     * 
     */
    private @Nullable String healthStatus;
    /**
     * @return Type of the protectable object associated with this container
     * 
     */
    private @Nullable String protectableObjectType;
    /**
     * @return Status of registration of the container with the Recovery Services Vault.
     * 
     */
    private @Nullable String registrationStatus;
    /**
     * @return Resource group name of Recovery Services Vault.
     * 
     */
    private @Nullable String resourceGroup;
    /**
     * @return Fully qualified ARM url of the virtual machine represented by this Azure IaaS VM container.
     * 
     */
    private @Nullable String virtualMachineId;
    /**
     * @return Specifies whether the container represents a Classic or an Azure Resource Manager VM.
     * 
     */
    private @Nullable String virtualMachineVersion;

    private IaaSVMContainerResponse() {}
    /**
     * @return Type of backup management for the container.
     * 
     */
    public Optional backupManagementType() {
        return Optional.ofNullable(this.backupManagementType);
    }
    /**
     * @return Type of the container. The value of this property for: 1. Compute Azure VM is Microsoft.Compute/virtualMachines 2.
     * Classic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines 3. Windows machines (like MAB, DPM etc) is
     * Windows 4. Azure SQL instance is AzureSqlContainer. 5. Storage containers is StorageContainer. 6. Azure workload
     * Backup is VMAppContainer
     * Expected value is 'IaasVMContainer'.
     * 
     */
    public String containerType() {
        return this.containerType;
    }
    /**
     * @return Friendly name of the container.
     * 
     */
    public Optional friendlyName() {
        return Optional.ofNullable(this.friendlyName);
    }
    /**
     * @return Status of health of the container.
     * 
     */
    public Optional healthStatus() {
        return Optional.ofNullable(this.healthStatus);
    }
    /**
     * @return Type of the protectable object associated with this container
     * 
     */
    public Optional protectableObjectType() {
        return Optional.ofNullable(this.protectableObjectType);
    }
    /**
     * @return Status of registration of the container with the Recovery Services Vault.
     * 
     */
    public Optional registrationStatus() {
        return Optional.ofNullable(this.registrationStatus);
    }
    /**
     * @return Resource group name of Recovery Services Vault.
     * 
     */
    public Optional resourceGroup() {
        return Optional.ofNullable(this.resourceGroup);
    }
    /**
     * @return Fully qualified ARM url of the virtual machine represented by this Azure IaaS VM container.
     * 
     */
    public Optional virtualMachineId() {
        return Optional.ofNullable(this.virtualMachineId);
    }
    /**
     * @return Specifies whether the container represents a Classic or an Azure Resource Manager VM.
     * 
     */
    public Optional virtualMachineVersion() {
        return Optional.ofNullable(this.virtualMachineVersion);
    }

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

    public static Builder builder(IaaSVMContainerResponse defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private @Nullable String backupManagementType;
        private String containerType;
        private @Nullable String friendlyName;
        private @Nullable String healthStatus;
        private @Nullable String protectableObjectType;
        private @Nullable String registrationStatus;
        private @Nullable String resourceGroup;
        private @Nullable String virtualMachineId;
        private @Nullable String virtualMachineVersion;
        public Builder() {}
        public Builder(IaaSVMContainerResponse defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.backupManagementType = defaults.backupManagementType;
    	      this.containerType = defaults.containerType;
    	      this.friendlyName = defaults.friendlyName;
    	      this.healthStatus = defaults.healthStatus;
    	      this.protectableObjectType = defaults.protectableObjectType;
    	      this.registrationStatus = defaults.registrationStatus;
    	      this.resourceGroup = defaults.resourceGroup;
    	      this.virtualMachineId = defaults.virtualMachineId;
    	      this.virtualMachineVersion = defaults.virtualMachineVersion;
        }

        @CustomType.Setter
        public Builder backupManagementType(@Nullable String backupManagementType) {

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

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

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

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

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

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

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

            this.virtualMachineVersion = virtualMachineVersion;
            return this;
        }
        public IaaSVMContainerResponse build() {
            final var _resultValue = new IaaSVMContainerResponse();
            _resultValue.backupManagementType = backupManagementType;
            _resultValue.containerType = containerType;
            _resultValue.friendlyName = friendlyName;
            _resultValue.healthStatus = healthStatus;
            _resultValue.protectableObjectType = protectableObjectType;
            _resultValue.registrationStatus = registrationStatus;
            _resultValue.resourceGroup = resourceGroup;
            _resultValue.virtualMachineId = virtualMachineId;
            _resultValue.virtualMachineVersion = virtualMachineVersion;
            return _resultValue;
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy