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

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

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

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

    /**
     * The instance name of the Serverless/Cluster whose snapshot you want to restore or you want to retrieve restore snapshot.
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
    @org.jetbrains.annotations.NotNull java.lang.String getInstanceName();

    /**
     * Type of instance specified on the Instance Name serverless or cluster.
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
    @org.jetbrains.annotations.NotNull org.mongodb.awscdk.resources.mongodbatlas.CfnCloudBackupSnapshotPropsInstanceType getInstanceType();

    /**
     * Unique 24-hexadecimal digit string that identifies your project.
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
    @org.jetbrains.annotations.NotNull java.lang.String getProjectId();

    /**
     * Human-readable phrase or sentence that explains the purpose of the snapshot.
     * 

* The resource returns this parameter when "status": "onDemand". */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getDescription() { return null; } /** * Human-readable label that identifies how often this snapshot triggers. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable org.mongodb.awscdk.resources.mongodbatlas.CfnCloudBackupSnapshotPropsFrequencyType getFrequencyType() { 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; } /** * List that includes the snapshots and the cloud provider that stores the snapshots. *

* The resource returns this parameter when "type" : "SHARDED_CLUSTER". */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.util.List getMembers() { 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; } /** * List that contains unique identifiers for the policy items. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.util.List getPolicyItems() { return null; } /** * The profile is defined in AWS Secret manager. *

* See Secret Manager Profile setup. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getProfile() { return null; } /** * List of returned documents that MongoDB Cloud provides when completing this request. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.util.List getResults() { return null; } /** * Number of days that MongoDB Cloud should retain the on-demand snapshot. *

* Must be at least 1 */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Number getRetentionInDays() { return null; } /** * Human-readable label that identifies when this snapshot triggers. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable org.mongodb.awscdk.resources.mongodbatlas.CfnCloudBackupSnapshotPropsSnapshotType getSnapshotType() { return null; } /** * Number of documents returned in this response. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Number getTotalCount() { return null; } /** * @return a {@link Builder} of {@link CfnCloudBackupSnapshotProps} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) static Builder builder() { return new Builder(); } /** * A builder for {@link CfnCloudBackupSnapshotProps} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static final class Builder implements software.amazon.jsii.Builder { java.lang.String instanceName; org.mongodb.awscdk.resources.mongodbatlas.CfnCloudBackupSnapshotPropsInstanceType instanceType; java.lang.String projectId; java.lang.String description; org.mongodb.awscdk.resources.mongodbatlas.CfnCloudBackupSnapshotPropsFrequencyType frequencyType; java.lang.Boolean includeCount; java.lang.Number itemsPerPage; java.util.List members; java.lang.Number pageNum; java.util.List policyItems; java.lang.String profile; java.util.List results; java.lang.Number retentionInDays; org.mongodb.awscdk.resources.mongodbatlas.CfnCloudBackupSnapshotPropsSnapshotType snapshotType; java.lang.Number totalCount; /** * Sets the value of {@link CfnCloudBackupSnapshotProps#getInstanceName} * @param instanceName The instance name of the Serverless/Cluster whose snapshot you want to restore or you want to retrieve restore snapshot. This parameter is required. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder instanceName(java.lang.String instanceName) { this.instanceName = instanceName; return this; } /** * Sets the value of {@link CfnCloudBackupSnapshotProps#getInstanceType} * @param instanceType Type of instance specified on the Instance Name serverless or cluster. This parameter is required. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder instanceType(org.mongodb.awscdk.resources.mongodbatlas.CfnCloudBackupSnapshotPropsInstanceType instanceType) { this.instanceType = instanceType; return this; } /** * Sets the value of {@link CfnCloudBackupSnapshotProps#getProjectId} * @param projectId Unique 24-hexadecimal digit string that identifies your project. This parameter is required. * @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 CfnCloudBackupSnapshotProps#getDescription} * @param description Human-readable phrase or sentence that explains the purpose of the snapshot. * The resource returns this parameter when "status": "onDemand". * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder description(java.lang.String description) { this.description = description; return this; } /** * Sets the value of {@link CfnCloudBackupSnapshotProps#getFrequencyType} * @param frequencyType Human-readable label that identifies how often this snapshot triggers. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder frequencyType(org.mongodb.awscdk.resources.mongodbatlas.CfnCloudBackupSnapshotPropsFrequencyType frequencyType) { this.frequencyType = frequencyType; return this; } /** * Sets the value of {@link CfnCloudBackupSnapshotProps#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 CfnCloudBackupSnapshotProps#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 CfnCloudBackupSnapshotProps#getMembers} * @param members List that includes the snapshots and the cloud provider that stores the snapshots. * The resource returns this parameter when "type" : "SHARDED_CLUSTER". * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @SuppressWarnings("unchecked") public Builder members(java.util.List members) { this.members = (java.util.List)members; return this; } /** * Sets the value of {@link CfnCloudBackupSnapshotProps#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 CfnCloudBackupSnapshotProps#getPolicyItems} * @param policyItems List that contains unique identifiers for the policy items. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder policyItems(java.util.List policyItems) { this.policyItems = policyItems; return this; } /** * Sets the value of {@link CfnCloudBackupSnapshotProps#getProfile} * @param profile The profile is defined in AWS Secret manager. * See Secret Manager Profile setup. * @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 CfnCloudBackupSnapshotProps#getResults} * @param results List of returned documents that MongoDB Cloud provides when completing this request. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @SuppressWarnings("unchecked") public Builder results(java.util.List results) { this.results = (java.util.List)results; return this; } /** * Sets the value of {@link CfnCloudBackupSnapshotProps#getRetentionInDays} * @param retentionInDays Number of days that MongoDB Cloud should retain the on-demand snapshot. * Must be at least 1 * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder retentionInDays(java.lang.Number retentionInDays) { this.retentionInDays = retentionInDays; return this; } /** * Sets the value of {@link CfnCloudBackupSnapshotProps#getSnapshotType} * @param snapshotType Human-readable label that identifies when this snapshot triggers. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder snapshotType(org.mongodb.awscdk.resources.mongodbatlas.CfnCloudBackupSnapshotPropsSnapshotType snapshotType) { this.snapshotType = snapshotType; return this; } /** * Sets the value of {@link CfnCloudBackupSnapshotProps#getTotalCount} * @param totalCount Number of documents returned in this response. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder totalCount(java.lang.Number totalCount) { this.totalCount = totalCount; return this; } /** * Builds the configured instance. * @return a new instance of {@link CfnCloudBackupSnapshotProps} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public CfnCloudBackupSnapshotProps build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link CfnCloudBackupSnapshotProps} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements CfnCloudBackupSnapshotProps { private final java.lang.String instanceName; private final org.mongodb.awscdk.resources.mongodbatlas.CfnCloudBackupSnapshotPropsInstanceType instanceType; private final java.lang.String projectId; private final java.lang.String description; private final org.mongodb.awscdk.resources.mongodbatlas.CfnCloudBackupSnapshotPropsFrequencyType frequencyType; private final java.lang.Boolean includeCount; private final java.lang.Number itemsPerPage; private final java.util.List members; private final java.lang.Number pageNum; private final java.util.List policyItems; private final java.lang.String profile; private final java.util.List results; private final java.lang.Number retentionInDays; private final org.mongodb.awscdk.resources.mongodbatlas.CfnCloudBackupSnapshotPropsSnapshotType snapshotType; private final java.lang.Number totalCount; /** * 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.instanceName = software.amazon.jsii.Kernel.get(this, "instanceName", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.instanceType = software.amazon.jsii.Kernel.get(this, "instanceType", software.amazon.jsii.NativeType.forClass(org.mongodb.awscdk.resources.mongodbatlas.CfnCloudBackupSnapshotPropsInstanceType.class)); this.projectId = software.amazon.jsii.Kernel.get(this, "projectId", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.description = software.amazon.jsii.Kernel.get(this, "description", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.frequencyType = software.amazon.jsii.Kernel.get(this, "frequencyType", software.amazon.jsii.NativeType.forClass(org.mongodb.awscdk.resources.mongodbatlas.CfnCloudBackupSnapshotPropsFrequencyType.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.members = software.amazon.jsii.Kernel.get(this, "members", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(org.mongodb.awscdk.resources.mongodbatlas.ApiAtlasDiskBackupShardedClusterSnapshotMemberView.class))); this.pageNum = software.amazon.jsii.Kernel.get(this, "pageNum", software.amazon.jsii.NativeType.forClass(java.lang.Number.class)); this.policyItems = software.amazon.jsii.Kernel.get(this, "policyItems", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(java.lang.String.class))); this.profile = software.amazon.jsii.Kernel.get(this, "profile", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.results = software.amazon.jsii.Kernel.get(this, "results", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(org.mongodb.awscdk.resources.mongodbatlas.ApiAtlasDiskBackupShardedClusterSnapshotView.class))); this.retentionInDays = software.amazon.jsii.Kernel.get(this, "retentionInDays", software.amazon.jsii.NativeType.forClass(java.lang.Number.class)); this.snapshotType = software.amazon.jsii.Kernel.get(this, "snapshotType", software.amazon.jsii.NativeType.forClass(org.mongodb.awscdk.resources.mongodbatlas.CfnCloudBackupSnapshotPropsSnapshotType.class)); this.totalCount = software.amazon.jsii.Kernel.get(this, "totalCount", software.amazon.jsii.NativeType.forClass(java.lang.Number.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.instanceName = java.util.Objects.requireNonNull(builder.instanceName, "instanceName is required"); this.instanceType = java.util.Objects.requireNonNull(builder.instanceType, "instanceType is required"); this.projectId = java.util.Objects.requireNonNull(builder.projectId, "projectId is required"); this.description = builder.description; this.frequencyType = builder.frequencyType; this.includeCount = builder.includeCount; this.itemsPerPage = builder.itemsPerPage; this.members = (java.util.List)builder.members; this.pageNum = builder.pageNum; this.policyItems = builder.policyItems; this.profile = builder.profile; this.results = (java.util.List)builder.results; this.retentionInDays = builder.retentionInDays; this.snapshotType = builder.snapshotType; this.totalCount = builder.totalCount; } @Override public final java.lang.String getInstanceName() { return this.instanceName; } @Override public final org.mongodb.awscdk.resources.mongodbatlas.CfnCloudBackupSnapshotPropsInstanceType getInstanceType() { return this.instanceType; } @Override public final java.lang.String getProjectId() { return this.projectId; } @Override public final java.lang.String getDescription() { return this.description; } @Override public final org.mongodb.awscdk.resources.mongodbatlas.CfnCloudBackupSnapshotPropsFrequencyType getFrequencyType() { return this.frequencyType; } @Override public final java.lang.Boolean getIncludeCount() { return this.includeCount; } @Override public final java.lang.Number getItemsPerPage() { return this.itemsPerPage; } @Override public final java.util.List getMembers() { return this.members; } @Override public final java.lang.Number getPageNum() { return this.pageNum; } @Override public final java.util.List getPolicyItems() { return this.policyItems; } @Override public final java.lang.String getProfile() { return this.profile; } @Override public final java.util.List getResults() { return this.results; } @Override public final java.lang.Number getRetentionInDays() { return this.retentionInDays; } @Override public final org.mongodb.awscdk.resources.mongodbatlas.CfnCloudBackupSnapshotPropsSnapshotType getSnapshotType() { return this.snapshotType; } @Override public final java.lang.Number getTotalCount() { return this.totalCount; } @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(); data.set("instanceName", om.valueToTree(this.getInstanceName())); data.set("instanceType", om.valueToTree(this.getInstanceType())); data.set("projectId", om.valueToTree(this.getProjectId())); if (this.getDescription() != null) { data.set("description", om.valueToTree(this.getDescription())); } if (this.getFrequencyType() != null) { data.set("frequencyType", om.valueToTree(this.getFrequencyType())); } if (this.getIncludeCount() != null) { data.set("includeCount", om.valueToTree(this.getIncludeCount())); } if (this.getItemsPerPage() != null) { data.set("itemsPerPage", om.valueToTree(this.getItemsPerPage())); } if (this.getMembers() != null) { data.set("members", om.valueToTree(this.getMembers())); } if (this.getPageNum() != null) { data.set("pageNum", om.valueToTree(this.getPageNum())); } if (this.getPolicyItems() != null) { data.set("policyItems", om.valueToTree(this.getPolicyItems())); } if (this.getProfile() != null) { data.set("profile", om.valueToTree(this.getProfile())); } if (this.getResults() != null) { data.set("results", om.valueToTree(this.getResults())); } if (this.getRetentionInDays() != null) { data.set("retentionInDays", om.valueToTree(this.getRetentionInDays())); } if (this.getSnapshotType() != null) { data.set("snapshotType", om.valueToTree(this.getSnapshotType())); } if (this.getTotalCount() != null) { data.set("totalCount", om.valueToTree(this.getTotalCount())); } final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("awscdk-resources-mongodbatlas.CfnCloudBackupSnapshotProps")); 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; CfnCloudBackupSnapshotProps.Jsii$Proxy that = (CfnCloudBackupSnapshotProps.Jsii$Proxy) o; if (!instanceName.equals(that.instanceName)) return false; if (!instanceType.equals(that.instanceType)) return false; if (!projectId.equals(that.projectId)) return false; if (this.description != null ? !this.description.equals(that.description) : that.description != null) return false; if (this.frequencyType != null ? !this.frequencyType.equals(that.frequencyType) : that.frequencyType != 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.members != null ? !this.members.equals(that.members) : that.members != null) return false; if (this.pageNum != null ? !this.pageNum.equals(that.pageNum) : that.pageNum != null) return false; if (this.policyItems != null ? !this.policyItems.equals(that.policyItems) : that.policyItems != null) return false; if (this.profile != null ? !this.profile.equals(that.profile) : that.profile != null) return false; if (this.results != null ? !this.results.equals(that.results) : that.results != null) return false; if (this.retentionInDays != null ? !this.retentionInDays.equals(that.retentionInDays) : that.retentionInDays != null) return false; if (this.snapshotType != null ? !this.snapshotType.equals(that.snapshotType) : that.snapshotType != null) return false; return this.totalCount != null ? this.totalCount.equals(that.totalCount) : that.totalCount == null; } @Override public final int hashCode() { int result = this.instanceName.hashCode(); result = 31 * result + (this.instanceType.hashCode()); result = 31 * result + (this.projectId.hashCode()); result = 31 * result + (this.description != null ? this.description.hashCode() : 0); result = 31 * result + (this.frequencyType != null ? this.frequencyType.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.members != null ? this.members.hashCode() : 0); result = 31 * result + (this.pageNum != null ? this.pageNum.hashCode() : 0); result = 31 * result + (this.policyItems != null ? this.policyItems.hashCode() : 0); result = 31 * result + (this.profile != null ? this.profile.hashCode() : 0); result = 31 * result + (this.results != null ? this.results.hashCode() : 0); result = 31 * result + (this.retentionInDays != null ? this.retentionInDays.hashCode() : 0); result = 31 * result + (this.snapshotType != null ? this.snapshotType.hashCode() : 0); result = 31 * result + (this.totalCount != null ? this.totalCount.hashCode() : 0); return result; } } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy