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

com.pulumi.azurenative.recoveryservices.outputs.A2AReplicationProtectionClusterDetailsResponse 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.azurenative.recoveryservices.outputs.ExtendedLocationResponse;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Double;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;

@CustomType
public final class A2AReplicationProtectionClusterDetailsResponse {
    /**
     * @return The cluster management Id.
     * 
     */
    private @Nullable String clusterManagementId;
    /**
     * @return The recovery point Id to which the cluster was failed over.
     * 
     */
    private @Nullable String failoverRecoveryPointId;
    /**
     * @return The initial primary extended location.
     * 
     */
    private @Nullable ExtendedLocationResponse initialPrimaryExtendedLocation;
    /**
     * @return The initial primary fabric location.
     * 
     */
    private @Nullable String initialPrimaryFabricLocation;
    /**
     * @return The initial primary availability zone.
     * 
     */
    private @Nullable String initialPrimaryZone;
    /**
     * @return The initial recovery extended location.
     * 
     */
    private @Nullable ExtendedLocationResponse initialRecoveryExtendedLocation;
    /**
     * @return The initial recovery fabric location.
     * 
     */
    private @Nullable String initialRecoveryFabricLocation;
    /**
     * @return The initial recovery availability zone.
     * 
     */
    private @Nullable String initialRecoveryZone;
    /**
     * @return Gets the Instance type.
     * Expected value is 'A2A'.
     * 
     */
    private String instanceType;
    /**
     * @return The time (in UTC) when the last RPO value was calculated by Protection Service.
     * 
     */
    private @Nullable String lastRpoCalculatedTime;
    /**
     * @return An id that survives actions like switch protection which change the backing PE/CPE objects internally.The lifecycle id gets carried forward to have a link/continuity in being able to have an Id that denotes the "same" protected cluster even though other internal Ids/ARM Id might be changing.
     * 
     */
    private @Nullable String lifecycleId;
    /**
     * @return Whether Multi VM group is auto created or specified by user.
     * 
     */
    private @Nullable String multiVmGroupCreateOption;
    /**
     * @return The multi vm group Id.
     * 
     */
    private @Nullable String multiVmGroupId;
    /**
     * @return The multi vm group name.
     * 
     */
    private @Nullable String multiVmGroupName;
    /**
     * @return The primary availability zone.
     * 
     */
    private @Nullable String primaryAvailabilityZone;
    /**
     * @return The primary Extended Location.
     * 
     */
    private @Nullable ExtendedLocationResponse primaryExtendedLocation;
    /**
     * @return Primary fabric location.
     * 
     */
    private @Nullable String primaryFabricLocation;
    /**
     * @return The recovery availability zone.
     * 
     */
    private @Nullable String recoveryAvailabilityZone;
    /**
     * @return The recovery Extended Location.
     * 
     */
    private @Nullable ExtendedLocationResponse recoveryExtendedLocation;
    /**
     * @return The recovery fabric location.
     * 
     */
    private @Nullable String recoveryFabricLocation;
    /**
     * @return The last RPO value in seconds.
     * 
     */
    private @Nullable Double rpoInSeconds;

    private A2AReplicationProtectionClusterDetailsResponse() {}
    /**
     * @return The cluster management Id.
     * 
     */
    public Optional clusterManagementId() {
        return Optional.ofNullable(this.clusterManagementId);
    }
    /**
     * @return The recovery point Id to which the cluster was failed over.
     * 
     */
    public Optional failoverRecoveryPointId() {
        return Optional.ofNullable(this.failoverRecoveryPointId);
    }
    /**
     * @return The initial primary extended location.
     * 
     */
    public Optional initialPrimaryExtendedLocation() {
        return Optional.ofNullable(this.initialPrimaryExtendedLocation);
    }
    /**
     * @return The initial primary fabric location.
     * 
     */
    public Optional initialPrimaryFabricLocation() {
        return Optional.ofNullable(this.initialPrimaryFabricLocation);
    }
    /**
     * @return The initial primary availability zone.
     * 
     */
    public Optional initialPrimaryZone() {
        return Optional.ofNullable(this.initialPrimaryZone);
    }
    /**
     * @return The initial recovery extended location.
     * 
     */
    public Optional initialRecoveryExtendedLocation() {
        return Optional.ofNullable(this.initialRecoveryExtendedLocation);
    }
    /**
     * @return The initial recovery fabric location.
     * 
     */
    public Optional initialRecoveryFabricLocation() {
        return Optional.ofNullable(this.initialRecoveryFabricLocation);
    }
    /**
     * @return The initial recovery availability zone.
     * 
     */
    public Optional initialRecoveryZone() {
        return Optional.ofNullable(this.initialRecoveryZone);
    }
    /**
     * @return Gets the Instance type.
     * Expected value is 'A2A'.
     * 
     */
    public String instanceType() {
        return this.instanceType;
    }
    /**
     * @return The time (in UTC) when the last RPO value was calculated by Protection Service.
     * 
     */
    public Optional lastRpoCalculatedTime() {
        return Optional.ofNullable(this.lastRpoCalculatedTime);
    }
    /**
     * @return An id that survives actions like switch protection which change the backing PE/CPE objects internally.The lifecycle id gets carried forward to have a link/continuity in being able to have an Id that denotes the "same" protected cluster even though other internal Ids/ARM Id might be changing.
     * 
     */
    public Optional lifecycleId() {
        return Optional.ofNullable(this.lifecycleId);
    }
    /**
     * @return Whether Multi VM group is auto created or specified by user.
     * 
     */
    public Optional multiVmGroupCreateOption() {
        return Optional.ofNullable(this.multiVmGroupCreateOption);
    }
    /**
     * @return The multi vm group Id.
     * 
     */
    public Optional multiVmGroupId() {
        return Optional.ofNullable(this.multiVmGroupId);
    }
    /**
     * @return The multi vm group name.
     * 
     */
    public Optional multiVmGroupName() {
        return Optional.ofNullable(this.multiVmGroupName);
    }
    /**
     * @return The primary availability zone.
     * 
     */
    public Optional primaryAvailabilityZone() {
        return Optional.ofNullable(this.primaryAvailabilityZone);
    }
    /**
     * @return The primary Extended Location.
     * 
     */
    public Optional primaryExtendedLocation() {
        return Optional.ofNullable(this.primaryExtendedLocation);
    }
    /**
     * @return Primary fabric location.
     * 
     */
    public Optional primaryFabricLocation() {
        return Optional.ofNullable(this.primaryFabricLocation);
    }
    /**
     * @return The recovery availability zone.
     * 
     */
    public Optional recoveryAvailabilityZone() {
        return Optional.ofNullable(this.recoveryAvailabilityZone);
    }
    /**
     * @return The recovery Extended Location.
     * 
     */
    public Optional recoveryExtendedLocation() {
        return Optional.ofNullable(this.recoveryExtendedLocation);
    }
    /**
     * @return The recovery fabric location.
     * 
     */
    public Optional recoveryFabricLocation() {
        return Optional.ofNullable(this.recoveryFabricLocation);
    }
    /**
     * @return The last RPO value in seconds.
     * 
     */
    public Optional rpoInSeconds() {
        return Optional.ofNullable(this.rpoInSeconds);
    }

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

    public static Builder builder(A2AReplicationProtectionClusterDetailsResponse defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private @Nullable String clusterManagementId;
        private @Nullable String failoverRecoveryPointId;
        private @Nullable ExtendedLocationResponse initialPrimaryExtendedLocation;
        private @Nullable String initialPrimaryFabricLocation;
        private @Nullable String initialPrimaryZone;
        private @Nullable ExtendedLocationResponse initialRecoveryExtendedLocation;
        private @Nullable String initialRecoveryFabricLocation;
        private @Nullable String initialRecoveryZone;
        private String instanceType;
        private @Nullable String lastRpoCalculatedTime;
        private @Nullable String lifecycleId;
        private @Nullable String multiVmGroupCreateOption;
        private @Nullable String multiVmGroupId;
        private @Nullable String multiVmGroupName;
        private @Nullable String primaryAvailabilityZone;
        private @Nullable ExtendedLocationResponse primaryExtendedLocation;
        private @Nullable String primaryFabricLocation;
        private @Nullable String recoveryAvailabilityZone;
        private @Nullable ExtendedLocationResponse recoveryExtendedLocation;
        private @Nullable String recoveryFabricLocation;
        private @Nullable Double rpoInSeconds;
        public Builder() {}
        public Builder(A2AReplicationProtectionClusterDetailsResponse defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.clusterManagementId = defaults.clusterManagementId;
    	      this.failoverRecoveryPointId = defaults.failoverRecoveryPointId;
    	      this.initialPrimaryExtendedLocation = defaults.initialPrimaryExtendedLocation;
    	      this.initialPrimaryFabricLocation = defaults.initialPrimaryFabricLocation;
    	      this.initialPrimaryZone = defaults.initialPrimaryZone;
    	      this.initialRecoveryExtendedLocation = defaults.initialRecoveryExtendedLocation;
    	      this.initialRecoveryFabricLocation = defaults.initialRecoveryFabricLocation;
    	      this.initialRecoveryZone = defaults.initialRecoveryZone;
    	      this.instanceType = defaults.instanceType;
    	      this.lastRpoCalculatedTime = defaults.lastRpoCalculatedTime;
    	      this.lifecycleId = defaults.lifecycleId;
    	      this.multiVmGroupCreateOption = defaults.multiVmGroupCreateOption;
    	      this.multiVmGroupId = defaults.multiVmGroupId;
    	      this.multiVmGroupName = defaults.multiVmGroupName;
    	      this.primaryAvailabilityZone = defaults.primaryAvailabilityZone;
    	      this.primaryExtendedLocation = defaults.primaryExtendedLocation;
    	      this.primaryFabricLocation = defaults.primaryFabricLocation;
    	      this.recoveryAvailabilityZone = defaults.recoveryAvailabilityZone;
    	      this.recoveryExtendedLocation = defaults.recoveryExtendedLocation;
    	      this.recoveryFabricLocation = defaults.recoveryFabricLocation;
    	      this.rpoInSeconds = defaults.rpoInSeconds;
        }

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

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

            this.failoverRecoveryPointId = failoverRecoveryPointId;
            return this;
        }
        @CustomType.Setter
        public Builder initialPrimaryExtendedLocation(@Nullable ExtendedLocationResponse initialPrimaryExtendedLocation) {

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

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

            this.initialPrimaryZone = initialPrimaryZone;
            return this;
        }
        @CustomType.Setter
        public Builder initialRecoveryExtendedLocation(@Nullable ExtendedLocationResponse initialRecoveryExtendedLocation) {

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

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

            this.initialRecoveryZone = initialRecoveryZone;
            return this;
        }
        @CustomType.Setter
        public Builder instanceType(String instanceType) {
            if (instanceType == null) {
              throw new MissingRequiredPropertyException("A2AReplicationProtectionClusterDetailsResponse", "instanceType");
            }
            this.instanceType = instanceType;
            return this;
        }
        @CustomType.Setter
        public Builder lastRpoCalculatedTime(@Nullable String lastRpoCalculatedTime) {

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

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

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

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

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

            this.primaryAvailabilityZone = primaryAvailabilityZone;
            return this;
        }
        @CustomType.Setter
        public Builder primaryExtendedLocation(@Nullable ExtendedLocationResponse primaryExtendedLocation) {

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

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

            this.recoveryAvailabilityZone = recoveryAvailabilityZone;
            return this;
        }
        @CustomType.Setter
        public Builder recoveryExtendedLocation(@Nullable ExtendedLocationResponse recoveryExtendedLocation) {

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

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

            this.rpoInSeconds = rpoInSeconds;
            return this;
        }
        public A2AReplicationProtectionClusterDetailsResponse build() {
            final var _resultValue = new A2AReplicationProtectionClusterDetailsResponse();
            _resultValue.clusterManagementId = clusterManagementId;
            _resultValue.failoverRecoveryPointId = failoverRecoveryPointId;
            _resultValue.initialPrimaryExtendedLocation = initialPrimaryExtendedLocation;
            _resultValue.initialPrimaryFabricLocation = initialPrimaryFabricLocation;
            _resultValue.initialPrimaryZone = initialPrimaryZone;
            _resultValue.initialRecoveryExtendedLocation = initialRecoveryExtendedLocation;
            _resultValue.initialRecoveryFabricLocation = initialRecoveryFabricLocation;
            _resultValue.initialRecoveryZone = initialRecoveryZone;
            _resultValue.instanceType = instanceType;
            _resultValue.lastRpoCalculatedTime = lastRpoCalculatedTime;
            _resultValue.lifecycleId = lifecycleId;
            _resultValue.multiVmGroupCreateOption = multiVmGroupCreateOption;
            _resultValue.multiVmGroupId = multiVmGroupId;
            _resultValue.multiVmGroupName = multiVmGroupName;
            _resultValue.primaryAvailabilityZone = primaryAvailabilityZone;
            _resultValue.primaryExtendedLocation = primaryExtendedLocation;
            _resultValue.primaryFabricLocation = primaryFabricLocation;
            _resultValue.recoveryAvailabilityZone = recoveryAvailabilityZone;
            _resultValue.recoveryExtendedLocation = recoveryExtendedLocation;
            _resultValue.recoveryFabricLocation = recoveryFabricLocation;
            _resultValue.rpoInSeconds = rpoInSeconds;
            return _resultValue;
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy