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

org.mongodb.awscdk.resources.mongodbatlas.ClusterProps Maven / Gradle / Ivy

There is a newer version: 3.9.0
Show newest version
package org.mongodb.awscdk.resources.mongodbatlas;

/**
 */
@javax.annotation.Generated(value = "jsii-pacmak/1.101.0 (build b95fe5d)", date = "2024-07-30T09:54:28.995Z")
@software.amazon.jsii.Jsii(module = org.mongodb.awscdk.resources.mongodbatlas.$Module.class, fqn = "awscdk-resources-mongodbatlas.ClusterProps")
@software.amazon.jsii.Jsii.Proxy(ClusterProps.Jsii$Proxy.class)
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public interface ClusterProps extends software.amazon.jsii.JsiiSerializable {

    /**
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
    default @org.jetbrains.annotations.Nullable org.mongodb.awscdk.resources.mongodbatlas.ProcessArgs getAdvancedSettings() {
        return null;
    }

    /**
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
    default @org.jetbrains.annotations.Nullable java.lang.Boolean getBackupEnabled() {
        return null;
    }

    /**
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
    default @org.jetbrains.annotations.Nullable org.mongodb.awscdk.resources.mongodbatlas.CfnClusterPropsBiConnector getBiConnector() {
        return null;
    }

    /**
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
    default @org.jetbrains.annotations.Nullable java.lang.String getClusterType() {
        return null;
    }

    /**
     * Default: REPLICASET
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
    default @org.jetbrains.annotations.Nullable org.mongodb.awscdk.resources.mongodbatlas.ConnectionStrings getConnectionStrings() {
        return null;
    }

    /**
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
    default @org.jetbrains.annotations.Nullable java.lang.Number getDiskSizeGb() {
        return null;
    }

    /**
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
    default @org.jetbrains.annotations.Nullable org.mongodb.awscdk.resources.mongodbatlas.CfnClusterPropsEncryptionAtRestProvider getEncryptionAtRestProvider() {
        return null;
    }

    /**
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
    default @org.jetbrains.annotations.Nullable java.util.List getLabels() {
        return null;
    }

    /**
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
    default @org.jetbrains.annotations.Nullable java.lang.String getMongoDbMajorVersion() {
        return null;
    }

    /**
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
    default @org.jetbrains.annotations.Nullable java.lang.String getName() {
        return null;
    }

    /**
     * Default: auto-generated
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
    default @org.jetbrains.annotations.Nullable java.lang.Boolean getPaused() {
        return null;
    }

    /**
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
    default @org.jetbrains.annotations.Nullable java.lang.Boolean getPitEnabled() {
        return null;
    }

    /**
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
    default @org.jetbrains.annotations.Nullable java.lang.String getProjectId() {
        return null;
    }

    /**
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
    default @org.jetbrains.annotations.Nullable java.util.List getReplicationSpecs() {
        return null;
    }

    /**
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
    default @org.jetbrains.annotations.Nullable java.lang.String getRootCertType() {
        return null;
    }

    /**
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
    default @org.jetbrains.annotations.Nullable java.lang.Boolean getTerminationProtectionEnabled() {
        return null;
    }

    /**
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
    default @org.jetbrains.annotations.Nullable java.lang.String getVersionReleaseSystem() {
        return null;
    }

    /**
     * @return a {@link Builder} of {@link ClusterProps}
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
    static Builder builder() {
        return new Builder();
    }
    /**
     * A builder for {@link ClusterProps}
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
    public static final class Builder implements software.amazon.jsii.Builder {
        org.mongodb.awscdk.resources.mongodbatlas.ProcessArgs advancedSettings;
        java.lang.Boolean backupEnabled;
        org.mongodb.awscdk.resources.mongodbatlas.CfnClusterPropsBiConnector biConnector;
        java.lang.String clusterType;
        org.mongodb.awscdk.resources.mongodbatlas.ConnectionStrings connectionStrings;
        java.lang.Number diskSizeGb;
        org.mongodb.awscdk.resources.mongodbatlas.CfnClusterPropsEncryptionAtRestProvider encryptionAtRestProvider;
        java.util.List labels;
        java.lang.String mongoDbMajorVersion;
        java.lang.String name;
        java.lang.Boolean paused;
        java.lang.Boolean pitEnabled;
        java.lang.String projectId;
        java.util.List replicationSpecs;
        java.lang.String rootCertType;
        java.lang.Boolean terminationProtectionEnabled;
        java.lang.String versionReleaseSystem;

        /**
         * Sets the value of {@link ClusterProps#getAdvancedSettings}
         * @param advancedSettings the value to be set.
         * @return {@code this}
         */
        @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
        public Builder advancedSettings(org.mongodb.awscdk.resources.mongodbatlas.ProcessArgs advancedSettings) {
            this.advancedSettings = advancedSettings;
            return this;
        }

        /**
         * Sets the value of {@link ClusterProps#getBackupEnabled}
         * @param backupEnabled the value to be set.
         * @return {@code this}
         */
        @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
        public Builder backupEnabled(java.lang.Boolean backupEnabled) {
            this.backupEnabled = backupEnabled;
            return this;
        }

        /**
         * Sets the value of {@link ClusterProps#getBiConnector}
         * @param biConnector the value to be set.
         * @return {@code this}
         */
        @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
        public Builder biConnector(org.mongodb.awscdk.resources.mongodbatlas.CfnClusterPropsBiConnector biConnector) {
            this.biConnector = biConnector;
            return this;
        }

        /**
         * Sets the value of {@link ClusterProps#getClusterType}
         * @param clusterType the value to be set.
         * @return {@code this}
         */
        @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
        public Builder clusterType(java.lang.String clusterType) {
            this.clusterType = clusterType;
            return this;
        }

        /**
         * Sets the value of {@link ClusterProps#getConnectionStrings}
         * @param connectionStrings the value to be set.
         * @return {@code this}
         */
        @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
        public Builder connectionStrings(org.mongodb.awscdk.resources.mongodbatlas.ConnectionStrings connectionStrings) {
            this.connectionStrings = connectionStrings;
            return this;
        }

        /**
         * Sets the value of {@link ClusterProps#getDiskSizeGb}
         * @param diskSizeGb the value to be set.
         * @return {@code this}
         */
        @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
        public Builder diskSizeGb(java.lang.Number diskSizeGb) {
            this.diskSizeGb = diskSizeGb;
            return this;
        }

        /**
         * Sets the value of {@link ClusterProps#getEncryptionAtRestProvider}
         * @param encryptionAtRestProvider the value to be set.
         * @return {@code this}
         */
        @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
        public Builder encryptionAtRestProvider(org.mongodb.awscdk.resources.mongodbatlas.CfnClusterPropsEncryptionAtRestProvider encryptionAtRestProvider) {
            this.encryptionAtRestProvider = encryptionAtRestProvider;
            return this;
        }

        /**
         * Sets the value of {@link ClusterProps#getLabels}
         * @param labels the value to be set.
         * @return {@code this}
         */
        @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
        @SuppressWarnings("unchecked")
        public Builder labels(java.util.List labels) {
            this.labels = (java.util.List)labels;
            return this;
        }

        /**
         * Sets the value of {@link ClusterProps#getMongoDbMajorVersion}
         * @param mongoDbMajorVersion the value to be set.
         * @return {@code this}
         */
        @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
        public Builder mongoDbMajorVersion(java.lang.String mongoDbMajorVersion) {
            this.mongoDbMajorVersion = mongoDbMajorVersion;
            return this;
        }

        /**
         * Sets the value of {@link ClusterProps#getName}
         * @param name the value to be set.
         * @return {@code this}
         */
        @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
        public Builder name(java.lang.String name) {
            this.name = name;
            return this;
        }

        /**
         * Sets the value of {@link ClusterProps#getPaused}
         * @param paused the value to be set.
         * @return {@code this}
         */
        @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
        public Builder paused(java.lang.Boolean paused) {
            this.paused = paused;
            return this;
        }

        /**
         * Sets the value of {@link ClusterProps#getPitEnabled}
         * @param pitEnabled the value to be set.
         * @return {@code this}
         */
        @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
        public Builder pitEnabled(java.lang.Boolean pitEnabled) {
            this.pitEnabled = pitEnabled;
            return this;
        }

        /**
         * Sets the value of {@link ClusterProps#getProjectId}
         * @param projectId the value to be set.
         * @return {@code this}
         */
        @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
        public Builder projectId(java.lang.String projectId) {
            this.projectId = projectId;
            return this;
        }

        /**
         * Sets the value of {@link ClusterProps#getReplicationSpecs}
         * @param replicationSpecs the value to be set.
         * @return {@code this}
         */
        @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
        @SuppressWarnings("unchecked")
        public Builder replicationSpecs(java.util.List replicationSpecs) {
            this.replicationSpecs = (java.util.List)replicationSpecs;
            return this;
        }

        /**
         * Sets the value of {@link ClusterProps#getRootCertType}
         * @param rootCertType the value to be set.
         * @return {@code this}
         */
        @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
        public Builder rootCertType(java.lang.String rootCertType) {
            this.rootCertType = rootCertType;
            return this;
        }

        /**
         * Sets the value of {@link ClusterProps#getTerminationProtectionEnabled}
         * @param terminationProtectionEnabled the value to be set.
         * @return {@code this}
         */
        @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
        public Builder terminationProtectionEnabled(java.lang.Boolean terminationProtectionEnabled) {
            this.terminationProtectionEnabled = terminationProtectionEnabled;
            return this;
        }

        /**
         * Sets the value of {@link ClusterProps#getVersionReleaseSystem}
         * @param versionReleaseSystem the value to be set.
         * @return {@code this}
         */
        @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
        public Builder versionReleaseSystem(java.lang.String versionReleaseSystem) {
            this.versionReleaseSystem = versionReleaseSystem;
            return this;
        }

        /**
         * Builds the configured instance.
         * @return a new instance of {@link ClusterProps}
         * @throws NullPointerException if any required attribute was not provided
         */
        @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
        @Override
        public ClusterProps build() {
            return new Jsii$Proxy(this);
        }
    }

    /**
     * An implementation for {@link ClusterProps}
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
    @software.amazon.jsii.Internal
    final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements ClusterProps {
        private final org.mongodb.awscdk.resources.mongodbatlas.ProcessArgs advancedSettings;
        private final java.lang.Boolean backupEnabled;
        private final org.mongodb.awscdk.resources.mongodbatlas.CfnClusterPropsBiConnector biConnector;
        private final java.lang.String clusterType;
        private final org.mongodb.awscdk.resources.mongodbatlas.ConnectionStrings connectionStrings;
        private final java.lang.Number diskSizeGb;
        private final org.mongodb.awscdk.resources.mongodbatlas.CfnClusterPropsEncryptionAtRestProvider encryptionAtRestProvider;
        private final java.util.List labels;
        private final java.lang.String mongoDbMajorVersion;
        private final java.lang.String name;
        private final java.lang.Boolean paused;
        private final java.lang.Boolean pitEnabled;
        private final java.lang.String projectId;
        private final java.util.List replicationSpecs;
        private final java.lang.String rootCertType;
        private final java.lang.Boolean terminationProtectionEnabled;
        private final java.lang.String versionReleaseSystem;

        /**
         * Constructor that initializes the object based on values retrieved from the JsiiObject.
         * @param objRef Reference to the JSII managed object.
         */
        protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) {
            super(objRef);
            this.advancedSettings = software.amazon.jsii.Kernel.get(this, "advancedSettings", software.amazon.jsii.NativeType.forClass(org.mongodb.awscdk.resources.mongodbatlas.ProcessArgs.class));
            this.backupEnabled = software.amazon.jsii.Kernel.get(this, "backupEnabled", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class));
            this.biConnector = software.amazon.jsii.Kernel.get(this, "biConnector", software.amazon.jsii.NativeType.forClass(org.mongodb.awscdk.resources.mongodbatlas.CfnClusterPropsBiConnector.class));
            this.clusterType = software.amazon.jsii.Kernel.get(this, "clusterType", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
            this.connectionStrings = software.amazon.jsii.Kernel.get(this, "connectionStrings", software.amazon.jsii.NativeType.forClass(org.mongodb.awscdk.resources.mongodbatlas.ConnectionStrings.class));
            this.diskSizeGb = software.amazon.jsii.Kernel.get(this, "diskSizeGb", software.amazon.jsii.NativeType.forClass(java.lang.Number.class));
            this.encryptionAtRestProvider = software.amazon.jsii.Kernel.get(this, "encryptionAtRestProvider", software.amazon.jsii.NativeType.forClass(org.mongodb.awscdk.resources.mongodbatlas.CfnClusterPropsEncryptionAtRestProvider.class));
            this.labels = software.amazon.jsii.Kernel.get(this, "labels", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(org.mongodb.awscdk.resources.mongodbatlas.CfnClusterPropsLabels.class)));
            this.mongoDbMajorVersion = software.amazon.jsii.Kernel.get(this, "mongoDbMajorVersion", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
            this.name = software.amazon.jsii.Kernel.get(this, "name", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
            this.paused = software.amazon.jsii.Kernel.get(this, "paused", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class));
            this.pitEnabled = software.amazon.jsii.Kernel.get(this, "pitEnabled", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class));
            this.projectId = software.amazon.jsii.Kernel.get(this, "projectId", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
            this.replicationSpecs = software.amazon.jsii.Kernel.get(this, "replicationSpecs", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(org.mongodb.awscdk.resources.mongodbatlas.AdvancedReplicationSpec.class)));
            this.rootCertType = software.amazon.jsii.Kernel.get(this, "rootCertType", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
            this.terminationProtectionEnabled = software.amazon.jsii.Kernel.get(this, "terminationProtectionEnabled", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class));
            this.versionReleaseSystem = software.amazon.jsii.Kernel.get(this, "versionReleaseSystem", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
        }

        /**
         * Constructor that initializes the object based on literal property values passed by the {@link Builder}.
         */
        @SuppressWarnings("unchecked")
        protected Jsii$Proxy(final Builder builder) {
            super(software.amazon.jsii.JsiiObject.InitializationMode.JSII);
            this.advancedSettings = builder.advancedSettings;
            this.backupEnabled = builder.backupEnabled;
            this.biConnector = builder.biConnector;
            this.clusterType = builder.clusterType;
            this.connectionStrings = builder.connectionStrings;
            this.diskSizeGb = builder.diskSizeGb;
            this.encryptionAtRestProvider = builder.encryptionAtRestProvider;
            this.labels = (java.util.List)builder.labels;
            this.mongoDbMajorVersion = builder.mongoDbMajorVersion;
            this.name = builder.name;
            this.paused = builder.paused;
            this.pitEnabled = builder.pitEnabled;
            this.projectId = builder.projectId;
            this.replicationSpecs = (java.util.List)builder.replicationSpecs;
            this.rootCertType = builder.rootCertType;
            this.terminationProtectionEnabled = builder.terminationProtectionEnabled;
            this.versionReleaseSystem = builder.versionReleaseSystem;
        }

        @Override
        public final org.mongodb.awscdk.resources.mongodbatlas.ProcessArgs getAdvancedSettings() {
            return this.advancedSettings;
        }

        @Override
        public final java.lang.Boolean getBackupEnabled() {
            return this.backupEnabled;
        }

        @Override
        public final org.mongodb.awscdk.resources.mongodbatlas.CfnClusterPropsBiConnector getBiConnector() {
            return this.biConnector;
        }

        @Override
        public final java.lang.String getClusterType() {
            return this.clusterType;
        }

        @Override
        public final org.mongodb.awscdk.resources.mongodbatlas.ConnectionStrings getConnectionStrings() {
            return this.connectionStrings;
        }

        @Override
        public final java.lang.Number getDiskSizeGb() {
            return this.diskSizeGb;
        }

        @Override
        public final org.mongodb.awscdk.resources.mongodbatlas.CfnClusterPropsEncryptionAtRestProvider getEncryptionAtRestProvider() {
            return this.encryptionAtRestProvider;
        }

        @Override
        public final java.util.List getLabels() {
            return this.labels;
        }

        @Override
        public final java.lang.String getMongoDbMajorVersion() {
            return this.mongoDbMajorVersion;
        }

        @Override
        public final java.lang.String getName() {
            return this.name;
        }

        @Override
        public final java.lang.Boolean getPaused() {
            return this.paused;
        }

        @Override
        public final java.lang.Boolean getPitEnabled() {
            return this.pitEnabled;
        }

        @Override
        public final java.lang.String getProjectId() {
            return this.projectId;
        }

        @Override
        public final java.util.List getReplicationSpecs() {
            return this.replicationSpecs;
        }

        @Override
        public final java.lang.String getRootCertType() {
            return this.rootCertType;
        }

        @Override
        public final java.lang.Boolean getTerminationProtectionEnabled() {
            return this.terminationProtectionEnabled;
        }

        @Override
        public final java.lang.String getVersionReleaseSystem() {
            return this.versionReleaseSystem;
        }

        @Override
        @software.amazon.jsii.Internal
        public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() {
            final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE;
            final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();

            if (this.getAdvancedSettings() != null) {
                data.set("advancedSettings", om.valueToTree(this.getAdvancedSettings()));
            }
            if (this.getBackupEnabled() != null) {
                data.set("backupEnabled", om.valueToTree(this.getBackupEnabled()));
            }
            if (this.getBiConnector() != null) {
                data.set("biConnector", om.valueToTree(this.getBiConnector()));
            }
            if (this.getClusterType() != null) {
                data.set("clusterType", om.valueToTree(this.getClusterType()));
            }
            if (this.getConnectionStrings() != null) {
                data.set("connectionStrings", om.valueToTree(this.getConnectionStrings()));
            }
            if (this.getDiskSizeGb() != null) {
                data.set("diskSizeGb", om.valueToTree(this.getDiskSizeGb()));
            }
            if (this.getEncryptionAtRestProvider() != null) {
                data.set("encryptionAtRestProvider", om.valueToTree(this.getEncryptionAtRestProvider()));
            }
            if (this.getLabels() != null) {
                data.set("labels", om.valueToTree(this.getLabels()));
            }
            if (this.getMongoDbMajorVersion() != null) {
                data.set("mongoDbMajorVersion", om.valueToTree(this.getMongoDbMajorVersion()));
            }
            if (this.getName() != null) {
                data.set("name", om.valueToTree(this.getName()));
            }
            if (this.getPaused() != null) {
                data.set("paused", om.valueToTree(this.getPaused()));
            }
            if (this.getPitEnabled() != null) {
                data.set("pitEnabled", om.valueToTree(this.getPitEnabled()));
            }
            if (this.getProjectId() != null) {
                data.set("projectId", om.valueToTree(this.getProjectId()));
            }
            if (this.getReplicationSpecs() != null) {
                data.set("replicationSpecs", om.valueToTree(this.getReplicationSpecs()));
            }
            if (this.getRootCertType() != null) {
                data.set("rootCertType", om.valueToTree(this.getRootCertType()));
            }
            if (this.getTerminationProtectionEnabled() != null) {
                data.set("terminationProtectionEnabled", om.valueToTree(this.getTerminationProtectionEnabled()));
            }
            if (this.getVersionReleaseSystem() != null) {
                data.set("versionReleaseSystem", om.valueToTree(this.getVersionReleaseSystem()));
            }

            final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
            struct.set("fqn", om.valueToTree("awscdk-resources-mongodbatlas.ClusterProps"));
            struct.set("data", data);

            final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
            obj.set("$jsii.struct", struct);

            return obj;
        }

        @Override
        public final boolean equals(final Object o) {
            if (this == o) return true;
            if (o == null || getClass() != o.getClass()) return false;

            ClusterProps.Jsii$Proxy that = (ClusterProps.Jsii$Proxy) o;

            if (this.advancedSettings != null ? !this.advancedSettings.equals(that.advancedSettings) : that.advancedSettings != null) return false;
            if (this.backupEnabled != null ? !this.backupEnabled.equals(that.backupEnabled) : that.backupEnabled != null) return false;
            if (this.biConnector != null ? !this.biConnector.equals(that.biConnector) : that.biConnector != null) return false;
            if (this.clusterType != null ? !this.clusterType.equals(that.clusterType) : that.clusterType != null) return false;
            if (this.connectionStrings != null ? !this.connectionStrings.equals(that.connectionStrings) : that.connectionStrings != null) return false;
            if (this.diskSizeGb != null ? !this.diskSizeGb.equals(that.diskSizeGb) : that.diskSizeGb != null) return false;
            if (this.encryptionAtRestProvider != null ? !this.encryptionAtRestProvider.equals(that.encryptionAtRestProvider) : that.encryptionAtRestProvider != null) return false;
            if (this.labels != null ? !this.labels.equals(that.labels) : that.labels != null) return false;
            if (this.mongoDbMajorVersion != null ? !this.mongoDbMajorVersion.equals(that.mongoDbMajorVersion) : that.mongoDbMajorVersion != null) return false;
            if (this.name != null ? !this.name.equals(that.name) : that.name != null) return false;
            if (this.paused != null ? !this.paused.equals(that.paused) : that.paused != null) return false;
            if (this.pitEnabled != null ? !this.pitEnabled.equals(that.pitEnabled) : that.pitEnabled != null) return false;
            if (this.projectId != null ? !this.projectId.equals(that.projectId) : that.projectId != null) return false;
            if (this.replicationSpecs != null ? !this.replicationSpecs.equals(that.replicationSpecs) : that.replicationSpecs != null) return false;
            if (this.rootCertType != null ? !this.rootCertType.equals(that.rootCertType) : that.rootCertType != null) return false;
            if (this.terminationProtectionEnabled != null ? !this.terminationProtectionEnabled.equals(that.terminationProtectionEnabled) : that.terminationProtectionEnabled != null) return false;
            return this.versionReleaseSystem != null ? this.versionReleaseSystem.equals(that.versionReleaseSystem) : that.versionReleaseSystem == null;
        }

        @Override
        public final int hashCode() {
            int result = this.advancedSettings != null ? this.advancedSettings.hashCode() : 0;
            result = 31 * result + (this.backupEnabled != null ? this.backupEnabled.hashCode() : 0);
            result = 31 * result + (this.biConnector != null ? this.biConnector.hashCode() : 0);
            result = 31 * result + (this.clusterType != null ? this.clusterType.hashCode() : 0);
            result = 31 * result + (this.connectionStrings != null ? this.connectionStrings.hashCode() : 0);
            result = 31 * result + (this.diskSizeGb != null ? this.diskSizeGb.hashCode() : 0);
            result = 31 * result + (this.encryptionAtRestProvider != null ? this.encryptionAtRestProvider.hashCode() : 0);
            result = 31 * result + (this.labels != null ? this.labels.hashCode() : 0);
            result = 31 * result + (this.mongoDbMajorVersion != null ? this.mongoDbMajorVersion.hashCode() : 0);
            result = 31 * result + (this.name != null ? this.name.hashCode() : 0);
            result = 31 * result + (this.paused != null ? this.paused.hashCode() : 0);
            result = 31 * result + (this.pitEnabled != null ? this.pitEnabled.hashCode() : 0);
            result = 31 * result + (this.projectId != null ? this.projectId.hashCode() : 0);
            result = 31 * result + (this.replicationSpecs != null ? this.replicationSpecs.hashCode() : 0);
            result = 31 * result + (this.rootCertType != null ? this.rootCertType.hashCode() : 0);
            result = 31 * result + (this.terminationProtectionEnabled != null ? this.terminationProtectionEnabled.hashCode() : 0);
            result = 31 * result + (this.versionReleaseSystem != null ? this.versionReleaseSystem.hashCode() : 0);
            return result;
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy