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

org.mongodb.awscdk.resources.mongodbatlas.CfnDataLakesProps 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 Federated Database Instances.
 */
@javax.annotation.Generated(value = "jsii-pacmak/1.101.0 (build b95fe5d)", date = "2024-07-30T09:54:28.920Z")
@software.amazon.jsii.Jsii(module = org.mongodb.awscdk.resources.mongodbatlas.$Module.class, fqn = "awscdk-resources-mongodbatlas.CfnDataLakesProps")
@software.amazon.jsii.Jsii.Proxy(CfnDataLakesProps.Jsii$Proxy.class)
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public interface CfnDataLakesProps extends software.amazon.jsii.JsiiSerializable {

    /**
     * Cloud provider linked to this data lake.
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
    default @org.jetbrains.annotations.Nullable org.mongodb.awscdk.resources.mongodbatlas.DataLakeCloudProviderConfigView getCloudProviderConfig() {
        return null;
    }

    /**
     * Information about the cloud provider region to which the data lake routes client connections.
     * 

* MongoDB Cloud supports AWS only. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable org.mongodb.awscdk.resources.mongodbatlas.DataLakeDataProcessRegionView getDataProcessRegion() { return null; } /** * Timestamp that specifies the end point for the range of log messages to download. *

* MongoDB Cloud expresses this timestamp in the number of seconds that have elapsed since the UNIX epoch. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Number getEndDate() { 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; } /** * 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; } /** * Flag that indicates whether this request should check if the requesting IAM role can read from the S3 bucket. *

* AWS checks if the role can list the objects in the bucket before writing to it. Some IAM roles only need write permissions. This flag allows you to skip that check. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Boolean getSkipRoleValidation() { return null; } /** * Configuration information for each data store and its mapping to MongoDB Cloud databases. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable org.mongodb.awscdk.resources.mongodbatlas.DataLakeStorageView getStorage() { return null; } /** * Human-readable label that identifies the Federated Database to remove. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getTenantName() { return null; } /** * @return a {@link Builder} of {@link CfnDataLakesProps} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) static Builder builder() { return new Builder(); } /** * A builder for {@link CfnDataLakesProps} */ @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.DataLakeCloudProviderConfigView cloudProviderConfig; org.mongodb.awscdk.resources.mongodbatlas.DataLakeDataProcessRegionView dataProcessRegion; java.lang.Number endDate; java.lang.String profile; java.lang.String projectId; java.lang.Boolean skipRoleValidation; org.mongodb.awscdk.resources.mongodbatlas.DataLakeStorageView storage; java.lang.String tenantName; /** * Sets the value of {@link CfnDataLakesProps#getCloudProviderConfig} * @param cloudProviderConfig Cloud provider linked to this data lake. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder cloudProviderConfig(org.mongodb.awscdk.resources.mongodbatlas.DataLakeCloudProviderConfigView cloudProviderConfig) { this.cloudProviderConfig = cloudProviderConfig; return this; } /** * Sets the value of {@link CfnDataLakesProps#getDataProcessRegion} * @param dataProcessRegion Information about the cloud provider region to which the data lake routes client connections. * MongoDB Cloud supports AWS only. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder dataProcessRegion(org.mongodb.awscdk.resources.mongodbatlas.DataLakeDataProcessRegionView dataProcessRegion) { this.dataProcessRegion = dataProcessRegion; return this; } /** * Sets the value of {@link CfnDataLakesProps#getEndDate} * @param endDate Timestamp that specifies the end point for the range of log messages to download. * MongoDB Cloud expresses this timestamp in the number of seconds that have elapsed since the UNIX epoch. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder endDate(java.lang.Number endDate) { this.endDate = endDate; return this; } /** * Sets the value of {@link CfnDataLakesProps#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 CfnDataLakesProps#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 CfnDataLakesProps#getSkipRoleValidation} * @param skipRoleValidation Flag that indicates whether this request should check if the requesting IAM role can read from the S3 bucket. * AWS checks if the role can list the objects in the bucket before writing to it. Some IAM roles only need write permissions. This flag allows you to skip that check. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder skipRoleValidation(java.lang.Boolean skipRoleValidation) { this.skipRoleValidation = skipRoleValidation; return this; } /** * Sets the value of {@link CfnDataLakesProps#getStorage} * @param storage Configuration information for each data store and its mapping to MongoDB Cloud databases. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder storage(org.mongodb.awscdk.resources.mongodbatlas.DataLakeStorageView storage) { this.storage = storage; return this; } /** * Sets the value of {@link CfnDataLakesProps#getTenantName} * @param tenantName Human-readable label that identifies the Federated Database to remove. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder tenantName(java.lang.String tenantName) { this.tenantName = tenantName; return this; } /** * Builds the configured instance. * @return a new instance of {@link CfnDataLakesProps} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public CfnDataLakesProps build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link CfnDataLakesProps} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements CfnDataLakesProps { private final org.mongodb.awscdk.resources.mongodbatlas.DataLakeCloudProviderConfigView cloudProviderConfig; private final org.mongodb.awscdk.resources.mongodbatlas.DataLakeDataProcessRegionView dataProcessRegion; private final java.lang.Number endDate; private final java.lang.String profile; private final java.lang.String projectId; private final java.lang.Boolean skipRoleValidation; private final org.mongodb.awscdk.resources.mongodbatlas.DataLakeStorageView storage; private final java.lang.String tenantName; /** * 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.cloudProviderConfig = software.amazon.jsii.Kernel.get(this, "cloudProviderConfig", software.amazon.jsii.NativeType.forClass(org.mongodb.awscdk.resources.mongodbatlas.DataLakeCloudProviderConfigView.class)); this.dataProcessRegion = software.amazon.jsii.Kernel.get(this, "dataProcessRegion", software.amazon.jsii.NativeType.forClass(org.mongodb.awscdk.resources.mongodbatlas.DataLakeDataProcessRegionView.class)); this.endDate = software.amazon.jsii.Kernel.get(this, "endDate", 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.skipRoleValidation = software.amazon.jsii.Kernel.get(this, "skipRoleValidation", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class)); this.storage = software.amazon.jsii.Kernel.get(this, "storage", software.amazon.jsii.NativeType.forClass(org.mongodb.awscdk.resources.mongodbatlas.DataLakeStorageView.class)); this.tenantName = software.amazon.jsii.Kernel.get(this, "tenantName", software.amazon.jsii.NativeType.forClass(java.lang.String.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.cloudProviderConfig = builder.cloudProviderConfig; this.dataProcessRegion = builder.dataProcessRegion; this.endDate = builder.endDate; this.profile = builder.profile; this.projectId = builder.projectId; this.skipRoleValidation = builder.skipRoleValidation; this.storage = builder.storage; this.tenantName = builder.tenantName; } @Override public final org.mongodb.awscdk.resources.mongodbatlas.DataLakeCloudProviderConfigView getCloudProviderConfig() { return this.cloudProviderConfig; } @Override public final org.mongodb.awscdk.resources.mongodbatlas.DataLakeDataProcessRegionView getDataProcessRegion() { return this.dataProcessRegion; } @Override public final java.lang.Number getEndDate() { return this.endDate; } @Override public final java.lang.String getProfile() { return this.profile; } @Override public final java.lang.String getProjectId() { return this.projectId; } @Override public final java.lang.Boolean getSkipRoleValidation() { return this.skipRoleValidation; } @Override public final org.mongodb.awscdk.resources.mongodbatlas.DataLakeStorageView getStorage() { return this.storage; } @Override public final java.lang.String getTenantName() { return this.tenantName; } @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.getCloudProviderConfig() != null) { data.set("cloudProviderConfig", om.valueToTree(this.getCloudProviderConfig())); } if (this.getDataProcessRegion() != null) { data.set("dataProcessRegion", om.valueToTree(this.getDataProcessRegion())); } if (this.getEndDate() != null) { data.set("endDate", om.valueToTree(this.getEndDate())); } if (this.getProfile() != null) { data.set("profile", om.valueToTree(this.getProfile())); } if (this.getProjectId() != null) { data.set("projectId", om.valueToTree(this.getProjectId())); } if (this.getSkipRoleValidation() != null) { data.set("skipRoleValidation", om.valueToTree(this.getSkipRoleValidation())); } if (this.getStorage() != null) { data.set("storage", om.valueToTree(this.getStorage())); } if (this.getTenantName() != null) { data.set("tenantName", om.valueToTree(this.getTenantName())); } final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("awscdk-resources-mongodbatlas.CfnDataLakesProps")); 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; CfnDataLakesProps.Jsii$Proxy that = (CfnDataLakesProps.Jsii$Proxy) o; if (this.cloudProviderConfig != null ? !this.cloudProviderConfig.equals(that.cloudProviderConfig) : that.cloudProviderConfig != null) return false; if (this.dataProcessRegion != null ? !this.dataProcessRegion.equals(that.dataProcessRegion) : that.dataProcessRegion != null) return false; if (this.endDate != null ? !this.endDate.equals(that.endDate) : that.endDate != 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.skipRoleValidation != null ? !this.skipRoleValidation.equals(that.skipRoleValidation) : that.skipRoleValidation != null) return false; if (this.storage != null ? !this.storage.equals(that.storage) : that.storage != null) return false; return this.tenantName != null ? this.tenantName.equals(that.tenantName) : that.tenantName == null; } @Override public final int hashCode() { int result = this.cloudProviderConfig != null ? this.cloudProviderConfig.hashCode() : 0; result = 31 * result + (this.dataProcessRegion != null ? this.dataProcessRegion.hashCode() : 0); result = 31 * result + (this.endDate != null ? this.endDate.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.skipRoleValidation != null ? this.skipRoleValidation.hashCode() : 0); result = 31 * result + (this.storage != null ? this.storage.hashCode() : 0); result = 31 * result + (this.tenantName != null ? this.tenantName.hashCode() : 0); return result; } } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy