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

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

import com.pulumi.azurenative.recoveryservices.outputs.MABContainerHealthDetailsResponse;
import com.pulumi.azurenative.recoveryservices.outputs.MabContainerExtendedInfoResponse;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Boolean;
import java.lang.Double;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;

@CustomType
public final class MabContainerResponse {
    /**
     * @return Agent version of this container.
     * 
     */
    private @Nullable String agentVersion;
    /**
     * @return Type of backup management for the container.
     * 
     */
    private @Nullable String backupManagementType;
    /**
     * @return Can the container be registered one more time.
     * 
     */
    private @Nullable Boolean canReRegister;
    /**
     * @return Health state of mab container.
     * 
     */
    private @Nullable String containerHealthState;
    /**
     * @return ContainerID represents the container.
     * 
     */
    private @Nullable Double containerId;
    /**
     * @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 'Windows'.
     * 
     */
    private String containerType;
    /**
     * @return Additional information for this container
     * 
     */
    private @Nullable MabContainerExtendedInfoResponse extendedInfo;
    /**
     * @return Friendly name of the container.
     * 
     */
    private @Nullable String friendlyName;
    /**
     * @return Status of health of the container.
     * 
     */
    private @Nullable String healthStatus;
    /**
     * @return Health details on this mab container.
     * 
     */
    private @Nullable List mabContainerHealthDetails;
    /**
     * @return Type of the protectable object associated with this container
     * 
     */
    private @Nullable String protectableObjectType;
    /**
     * @return Number of items backed up in this container.
     * 
     */
    private @Nullable Double protectedItemCount;
    /**
     * @return Status of registration of the container with the Recovery Services Vault.
     * 
     */
    private @Nullable String registrationStatus;

    private MabContainerResponse() {}
    /**
     * @return Agent version of this container.
     * 
     */
    public Optional agentVersion() {
        return Optional.ofNullable(this.agentVersion);
    }
    /**
     * @return Type of backup management for the container.
     * 
     */
    public Optional backupManagementType() {
        return Optional.ofNullable(this.backupManagementType);
    }
    /**
     * @return Can the container be registered one more time.
     * 
     */
    public Optional canReRegister() {
        return Optional.ofNullable(this.canReRegister);
    }
    /**
     * @return Health state of mab container.
     * 
     */
    public Optional containerHealthState() {
        return Optional.ofNullable(this.containerHealthState);
    }
    /**
     * @return ContainerID represents the container.
     * 
     */
    public Optional containerId() {
        return Optional.ofNullable(this.containerId);
    }
    /**
     * @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 'Windows'.
     * 
     */
    public String containerType() {
        return this.containerType;
    }
    /**
     * @return Additional information for this container
     * 
     */
    public Optional extendedInfo() {
        return Optional.ofNullable(this.extendedInfo);
    }
    /**
     * @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 Health details on this mab container.
     * 
     */
    public List mabContainerHealthDetails() {
        return this.mabContainerHealthDetails == null ? List.of() : this.mabContainerHealthDetails;
    }
    /**
     * @return Type of the protectable object associated with this container
     * 
     */
    public Optional protectableObjectType() {
        return Optional.ofNullable(this.protectableObjectType);
    }
    /**
     * @return Number of items backed up in this container.
     * 
     */
    public Optional protectedItemCount() {
        return Optional.ofNullable(this.protectedItemCount);
    }
    /**
     * @return Status of registration of the container with the Recovery Services Vault.
     * 
     */
    public Optional registrationStatus() {
        return Optional.ofNullable(this.registrationStatus);
    }

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

    public static Builder builder(MabContainerResponse defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private @Nullable String agentVersion;
        private @Nullable String backupManagementType;
        private @Nullable Boolean canReRegister;
        private @Nullable String containerHealthState;
        private @Nullable Double containerId;
        private String containerType;
        private @Nullable MabContainerExtendedInfoResponse extendedInfo;
        private @Nullable String friendlyName;
        private @Nullable String healthStatus;
        private @Nullable List mabContainerHealthDetails;
        private @Nullable String protectableObjectType;
        private @Nullable Double protectedItemCount;
        private @Nullable String registrationStatus;
        public Builder() {}
        public Builder(MabContainerResponse defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.agentVersion = defaults.agentVersion;
    	      this.backupManagementType = defaults.backupManagementType;
    	      this.canReRegister = defaults.canReRegister;
    	      this.containerHealthState = defaults.containerHealthState;
    	      this.containerId = defaults.containerId;
    	      this.containerType = defaults.containerType;
    	      this.extendedInfo = defaults.extendedInfo;
    	      this.friendlyName = defaults.friendlyName;
    	      this.healthStatus = defaults.healthStatus;
    	      this.mabContainerHealthDetails = defaults.mabContainerHealthDetails;
    	      this.protectableObjectType = defaults.protectableObjectType;
    	      this.protectedItemCount = defaults.protectedItemCount;
    	      this.registrationStatus = defaults.registrationStatus;
        }

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

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

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

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

            this.containerHealthState = containerHealthState;
            return this;
        }
        @CustomType.Setter
        public Builder containerId(@Nullable Double containerId) {

            this.containerId = containerId;
            return this;
        }
        @CustomType.Setter
        public Builder containerType(String containerType) {
            if (containerType == null) {
              throw new MissingRequiredPropertyException("MabContainerResponse", "containerType");
            }
            this.containerType = containerType;
            return this;
        }
        @CustomType.Setter
        public Builder extendedInfo(@Nullable MabContainerExtendedInfoResponse extendedInfo) {

            this.extendedInfo = extendedInfo;
            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 mabContainerHealthDetails(@Nullable List mabContainerHealthDetails) {

            this.mabContainerHealthDetails = mabContainerHealthDetails;
            return this;
        }
        public Builder mabContainerHealthDetails(MABContainerHealthDetailsResponse... mabContainerHealthDetails) {
            return mabContainerHealthDetails(List.of(mabContainerHealthDetails));
        }
        @CustomType.Setter
        public Builder protectableObjectType(@Nullable String protectableObjectType) {

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

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

            this.registrationStatus = registrationStatus;
            return this;
        }
        public MabContainerResponse build() {
            final var _resultValue = new MabContainerResponse();
            _resultValue.agentVersion = agentVersion;
            _resultValue.backupManagementType = backupManagementType;
            _resultValue.canReRegister = canReRegister;
            _resultValue.containerHealthState = containerHealthState;
            _resultValue.containerId = containerId;
            _resultValue.containerType = containerType;
            _resultValue.extendedInfo = extendedInfo;
            _resultValue.friendlyName = friendlyName;
            _resultValue.healthStatus = healthStatus;
            _resultValue.mabContainerHealthDetails = mabContainerHealthDetails;
            _resultValue.protectableObjectType = protectableObjectType;
            _resultValue.protectedItemCount = protectedItemCount;
            _resultValue.registrationStatus = registrationStatus;
            return _resultValue;
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy