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

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

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

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

    /**
     * Collection of Uniform Resource Locators that point to the MongoDB database.
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
    default @org.jetbrains.annotations.Nullable org.mongodb.awscdk.resources.mongodbatlas.ServerlessInstanceConnectionStrings getConnectionStrings() {
        return null;
    }

    /**
     * Flag that indicates whether the serverless instances uses Serverless Continuous Backup.
     * 

* If this parameter is false, the serverless instance uses Basic Backup. | Option | Description | |---|---| | Serverless Continuous Backup | Atlas takes incremental snapshots of the data in your serverless instance every six hours and lets you restore the data from a selected point in time within the last 72 hours. Atlas also takes daily snapshots and retains these daily snapshots for 35 days. To learn more, see Serverless Instance Costs. | | Basic Backup | Atlas takes incremental snapshots of the data in your serverless instance every six hours and retains only the two most recent snapshots. You can use this option for free. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Boolean getContinuousBackupEnabled() { return null; } /** * Flag that indicates whether the response returns the total number of items (totalCount) in the response. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Boolean getIncludeCount() { return null; } /** * Number of items that the response returns per page. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Number getItemsPerPage() { return null; } /** * Human-readable label that identifies the serverless instance. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getName() { return null; } /** * Number of the page that displays the current set of the total objects that the response returns. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Number getPageNum() { return null; } /** * Profile used to provide credentials information, (a secret with the cfn/atlas/profile/{Profile}, is required), if not provided default is used. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getProfile() { return null; } /** * Unique 24-hexadecimal digit string that identifies your project. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getProjectId() { return null; } /** * Group of settings that configure the provisioned MongoDB serverless instance. *

* The options available relate to the cloud service provider. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable org.mongodb.awscdk.resources.mongodbatlas.ServerlessInstanceProviderSettings getProviderSettings() { return null; } /** * Flag that indicates whether termination protection is enabled on the serverless instance. *

* If set to true, MongoDB Cloud won't delete the serverless instance. If set to false, MongoDB cloud will delete the serverless instance." */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Boolean getTerminationProtectionEnabled() { return null; } /** * @return a {@link Builder} of {@link CfnServerlessInstanceProps} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) static Builder builder() { return new Builder(); } /** * A builder for {@link CfnServerlessInstanceProps} */ @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.ServerlessInstanceConnectionStrings connectionStrings; java.lang.Boolean continuousBackupEnabled; java.lang.Boolean includeCount; java.lang.Number itemsPerPage; java.lang.String name; java.lang.Number pageNum; java.lang.String profile; java.lang.String projectId; org.mongodb.awscdk.resources.mongodbatlas.ServerlessInstanceProviderSettings providerSettings; java.lang.Boolean terminationProtectionEnabled; /** * Sets the value of {@link CfnServerlessInstanceProps#getConnectionStrings} * @param connectionStrings Collection of Uniform Resource Locators that point to the MongoDB database. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder connectionStrings(org.mongodb.awscdk.resources.mongodbatlas.ServerlessInstanceConnectionStrings connectionStrings) { this.connectionStrings = connectionStrings; return this; } /** * Sets the value of {@link CfnServerlessInstanceProps#getContinuousBackupEnabled} * @param continuousBackupEnabled Flag that indicates whether the serverless instances uses Serverless Continuous Backup. * If this parameter is false, the serverless instance uses Basic Backup. | Option | Description | |---|---| | Serverless Continuous Backup | Atlas takes incremental snapshots of the data in your serverless instance every six hours and lets you restore the data from a selected point in time within the last 72 hours. Atlas also takes daily snapshots and retains these daily snapshots for 35 days. To learn more, see Serverless Instance Costs. | | Basic Backup | Atlas takes incremental snapshots of the data in your serverless instance every six hours and retains only the two most recent snapshots. You can use this option for free. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder continuousBackupEnabled(java.lang.Boolean continuousBackupEnabled) { this.continuousBackupEnabled = continuousBackupEnabled; return this; } /** * Sets the value of {@link CfnServerlessInstanceProps#getIncludeCount} * @param includeCount Flag that indicates whether the response returns the total number of items (totalCount) in the response. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder includeCount(java.lang.Boolean includeCount) { this.includeCount = includeCount; return this; } /** * Sets the value of {@link CfnServerlessInstanceProps#getItemsPerPage} * @param itemsPerPage Number of items that the response returns per page. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder itemsPerPage(java.lang.Number itemsPerPage) { this.itemsPerPage = itemsPerPage; return this; } /** * Sets the value of {@link CfnServerlessInstanceProps#getName} * @param name Human-readable label that identifies the serverless instance. * @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 CfnServerlessInstanceProps#getPageNum} * @param pageNum Number of the page that displays the current set of the total objects that the response returns. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder pageNum(java.lang.Number pageNum) { this.pageNum = pageNum; return this; } /** * Sets the value of {@link CfnServerlessInstanceProps#getProfile} * @param profile Profile used to provide credentials information, (a secret with the cfn/atlas/profile/{Profile}, is required), if not provided default is used. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder profile(java.lang.String profile) { this.profile = profile; return this; } /** * Sets the value of {@link CfnServerlessInstanceProps#getProjectId} * @param projectId Unique 24-hexadecimal digit string that identifies your project. * @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 CfnServerlessInstanceProps#getProviderSettings} * @param providerSettings Group of settings that configure the provisioned MongoDB serverless instance. * The options available relate to the cloud service provider. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder providerSettings(org.mongodb.awscdk.resources.mongodbatlas.ServerlessInstanceProviderSettings providerSettings) { this.providerSettings = providerSettings; return this; } /** * Sets the value of {@link CfnServerlessInstanceProps#getTerminationProtectionEnabled} * @param terminationProtectionEnabled Flag that indicates whether termination protection is enabled on the serverless instance. * If set to true, MongoDB Cloud won't delete the serverless instance. If set to false, MongoDB cloud will delete the serverless instance." * @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; } /** * Builds the configured instance. * @return a new instance of {@link CfnServerlessInstanceProps} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public CfnServerlessInstanceProps build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link CfnServerlessInstanceProps} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements CfnServerlessInstanceProps { private final org.mongodb.awscdk.resources.mongodbatlas.ServerlessInstanceConnectionStrings connectionStrings; private final java.lang.Boolean continuousBackupEnabled; private final java.lang.Boolean includeCount; private final java.lang.Number itemsPerPage; private final java.lang.String name; private final java.lang.Number pageNum; private final java.lang.String profile; private final java.lang.String projectId; private final org.mongodb.awscdk.resources.mongodbatlas.ServerlessInstanceProviderSettings providerSettings; private final java.lang.Boolean terminationProtectionEnabled; /** * 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.connectionStrings = software.amazon.jsii.Kernel.get(this, "connectionStrings", software.amazon.jsii.NativeType.forClass(org.mongodb.awscdk.resources.mongodbatlas.ServerlessInstanceConnectionStrings.class)); this.continuousBackupEnabled = software.amazon.jsii.Kernel.get(this, "continuousBackupEnabled", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class)); this.includeCount = software.amazon.jsii.Kernel.get(this, "includeCount", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class)); this.itemsPerPage = software.amazon.jsii.Kernel.get(this, "itemsPerPage", software.amazon.jsii.NativeType.forClass(java.lang.Number.class)); this.name = software.amazon.jsii.Kernel.get(this, "name", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.pageNum = software.amazon.jsii.Kernel.get(this, "pageNum", software.amazon.jsii.NativeType.forClass(java.lang.Number.class)); this.profile = software.amazon.jsii.Kernel.get(this, "profile", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.projectId = software.amazon.jsii.Kernel.get(this, "projectId", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.providerSettings = software.amazon.jsii.Kernel.get(this, "providerSettings", software.amazon.jsii.NativeType.forClass(org.mongodb.awscdk.resources.mongodbatlas.ServerlessInstanceProviderSettings.class)); this.terminationProtectionEnabled = software.amazon.jsii.Kernel.get(this, "terminationProtectionEnabled", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class)); } /** * Constructor that initializes the object based on literal property values passed by the {@link Builder}. */ protected Jsii$Proxy(final Builder builder) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); this.connectionStrings = builder.connectionStrings; this.continuousBackupEnabled = builder.continuousBackupEnabled; this.includeCount = builder.includeCount; this.itemsPerPage = builder.itemsPerPage; this.name = builder.name; this.pageNum = builder.pageNum; this.profile = builder.profile; this.projectId = builder.projectId; this.providerSettings = builder.providerSettings; this.terminationProtectionEnabled = builder.terminationProtectionEnabled; } @Override public final org.mongodb.awscdk.resources.mongodbatlas.ServerlessInstanceConnectionStrings getConnectionStrings() { return this.connectionStrings; } @Override public final java.lang.Boolean getContinuousBackupEnabled() { return this.continuousBackupEnabled; } @Override public final java.lang.Boolean getIncludeCount() { return this.includeCount; } @Override public final java.lang.Number getItemsPerPage() { return this.itemsPerPage; } @Override public final java.lang.String getName() { return this.name; } @Override public final java.lang.Number getPageNum() { return this.pageNum; } @Override public final java.lang.String getProfile() { return this.profile; } @Override public final java.lang.String getProjectId() { return this.projectId; } @Override public final org.mongodb.awscdk.resources.mongodbatlas.ServerlessInstanceProviderSettings getProviderSettings() { return this.providerSettings; } @Override public final java.lang.Boolean getTerminationProtectionEnabled() { return this.terminationProtectionEnabled; } @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.getConnectionStrings() != null) { data.set("connectionStrings", om.valueToTree(this.getConnectionStrings())); } if (this.getContinuousBackupEnabled() != null) { data.set("continuousBackupEnabled", om.valueToTree(this.getContinuousBackupEnabled())); } if (this.getIncludeCount() != null) { data.set("includeCount", om.valueToTree(this.getIncludeCount())); } if (this.getItemsPerPage() != null) { data.set("itemsPerPage", om.valueToTree(this.getItemsPerPage())); } if (this.getName() != null) { data.set("name", om.valueToTree(this.getName())); } if (this.getPageNum() != null) { data.set("pageNum", om.valueToTree(this.getPageNum())); } if (this.getProfile() != null) { data.set("profile", om.valueToTree(this.getProfile())); } if (this.getProjectId() != null) { data.set("projectId", om.valueToTree(this.getProjectId())); } if (this.getProviderSettings() != null) { data.set("providerSettings", om.valueToTree(this.getProviderSettings())); } if (this.getTerminationProtectionEnabled() != null) { data.set("terminationProtectionEnabled", om.valueToTree(this.getTerminationProtectionEnabled())); } final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("awscdk-resources-mongodbatlas.CfnServerlessInstanceProps")); 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; CfnServerlessInstanceProps.Jsii$Proxy that = (CfnServerlessInstanceProps.Jsii$Proxy) o; if (this.connectionStrings != null ? !this.connectionStrings.equals(that.connectionStrings) : that.connectionStrings != null) return false; if (this.continuousBackupEnabled != null ? !this.continuousBackupEnabled.equals(that.continuousBackupEnabled) : that.continuousBackupEnabled != null) return false; if (this.includeCount != null ? !this.includeCount.equals(that.includeCount) : that.includeCount != null) return false; if (this.itemsPerPage != null ? !this.itemsPerPage.equals(that.itemsPerPage) : that.itemsPerPage != null) return false; if (this.name != null ? !this.name.equals(that.name) : that.name != null) return false; if (this.pageNum != null ? !this.pageNum.equals(that.pageNum) : that.pageNum != null) return false; if (this.profile != null ? !this.profile.equals(that.profile) : that.profile != null) return false; if (this.projectId != null ? !this.projectId.equals(that.projectId) : that.projectId != null) return false; if (this.providerSettings != null ? !this.providerSettings.equals(that.providerSettings) : that.providerSettings != null) return false; return this.terminationProtectionEnabled != null ? this.terminationProtectionEnabled.equals(that.terminationProtectionEnabled) : that.terminationProtectionEnabled == null; } @Override public final int hashCode() { int result = this.connectionStrings != null ? this.connectionStrings.hashCode() : 0; result = 31 * result + (this.continuousBackupEnabled != null ? this.continuousBackupEnabled.hashCode() : 0); result = 31 * result + (this.includeCount != null ? this.includeCount.hashCode() : 0); result = 31 * result + (this.itemsPerPage != null ? this.itemsPerPage.hashCode() : 0); result = 31 * result + (this.name != null ? this.name.hashCode() : 0); result = 31 * result + (this.pageNum != null ? this.pageNum.hashCode() : 0); result = 31 * result + (this.profile != null ? this.profile.hashCode() : 0); result = 31 * result + (this.projectId != null ? this.projectId.hashCode() : 0); result = 31 * result + (this.providerSettings != null ? this.providerSettings.hashCode() : 0); result = 31 * result + (this.terminationProtectionEnabled != null ? this.terminationProtectionEnabled.hashCode() : 0); return result; } } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy