org.mongodb.awscdk.resources.mongodbatlas.AtlasUser Maven / Gradle / Ivy
Show all versions of awscdk-resources-mongodbatlas Show documentation
package org.mongodb.awscdk.resources.mongodbatlas;
/**
*/
@javax.annotation.Generated(value = "jsii-pacmak/1.101.0 (build b95fe5d)", date = "2024-07-30T09:54:28.887Z")
@software.amazon.jsii.Jsii(module = org.mongodb.awscdk.resources.mongodbatlas.$Module.class, fqn = "awscdk-resources-mongodbatlas.AtlasUser")
@software.amazon.jsii.Jsii.Proxy(AtlasUser.Jsii$Proxy.class)
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public interface AtlasUser extends software.amazon.jsii.JsiiSerializable {
/**
* Two alphabet characters that identifies MongoDB Cloud user's geographic location.
*
* This parameter uses the ISO 3166-1a2 code format.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getCountry() {
return null;
}
/**
* Email address that belongs to the MongoDB Cloud user.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getEmailAddress() {
return null;
}
/**
* First or given name that belongs to the MongoDB Cloud user.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getFirstName() {
return null;
}
/**
* Unique 24-hexadecimal digit string that identifies the MongoDB Cloud user.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getId() {
return null;
}
/**
* Last name, family name, or surname that belongs to the MongoDB Cloud user.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getLastName() {
return null;
}
/**
* List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both.
*
* RFC 5988 outlines these relationships.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.util.List getLinks() {
return null;
}
/**
* Mobile phone number that belongs to the MongoDB Cloud user.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getMobileNumber() {
return null;
}
/**
* Password applied with the username to log in to MongoDB Cloud.
*
* MongoDB Cloud does not return this parameter except in response to creating a new MongoDB Cloud user. Only the MongoDB Cloud user can update their password after it has been set from the MongoDB Cloud console.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getPassword() {
return null;
}
/**
* List of objects that display the MongoDB Cloud user's roles and the corresponding organization or project to which that role applies.
*
* A role can apply to one organization or one project but not both.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.util.List getRoles() {
return null;
}
/**
* List of unique 24-hexadecimal digit strings that identifies the teams to which this MongoDB Cloud user belongs.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.util.List getTeamIds() {
return null;
}
/**
* Email address that represents the username of the MongoDB Cloud user.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getUsername() {
return null;
}
/**
* @return a {@link Builder} of {@link AtlasUser}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
static Builder builder() {
return new Builder();
}
/**
* A builder for {@link AtlasUser}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static final class Builder implements software.amazon.jsii.Builder {
java.lang.String country;
java.lang.String emailAddress;
java.lang.String firstName;
java.lang.String id;
java.lang.String lastName;
java.util.List links;
java.lang.String mobileNumber;
java.lang.String password;
java.util.List roles;
java.util.List teamIds;
java.lang.String username;
/**
* Sets the value of {@link AtlasUser#getCountry}
* @param country Two alphabet characters that identifies MongoDB Cloud user's geographic location.
* This parameter uses the ISO 3166-1a2 code format.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder country(java.lang.String country) {
this.country = country;
return this;
}
/**
* Sets the value of {@link AtlasUser#getEmailAddress}
* @param emailAddress Email address that belongs to the MongoDB Cloud user.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder emailAddress(java.lang.String emailAddress) {
this.emailAddress = emailAddress;
return this;
}
/**
* Sets the value of {@link AtlasUser#getFirstName}
* @param firstName First or given name that belongs to the MongoDB Cloud user.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder firstName(java.lang.String firstName) {
this.firstName = firstName;
return this;
}
/**
* Sets the value of {@link AtlasUser#getId}
* @param id Unique 24-hexadecimal digit string that identifies the MongoDB Cloud user.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder id(java.lang.String id) {
this.id = id;
return this;
}
/**
* Sets the value of {@link AtlasUser#getLastName}
* @param lastName Last name, family name, or surname that belongs to the MongoDB Cloud user.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder lastName(java.lang.String lastName) {
this.lastName = lastName;
return this;
}
/**
* Sets the value of {@link AtlasUser#getLinks}
* @param links List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both.
* RFC 5988 outlines these relationships.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@SuppressWarnings("unchecked")
public Builder links(java.util.List extends org.mongodb.awscdk.resources.mongodbatlas.Link> links) {
this.links = (java.util.List)links;
return this;
}
/**
* Sets the value of {@link AtlasUser#getMobileNumber}
* @param mobileNumber Mobile phone number that belongs to the MongoDB Cloud user.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder mobileNumber(java.lang.String mobileNumber) {
this.mobileNumber = mobileNumber;
return this;
}
/**
* Sets the value of {@link AtlasUser#getPassword}
* @param password Password applied with the username to log in to MongoDB Cloud.
* MongoDB Cloud does not return this parameter except in response to creating a new MongoDB Cloud user. Only the MongoDB Cloud user can update their password after it has been set from the MongoDB Cloud console.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder password(java.lang.String password) {
this.password = password;
return this;
}
/**
* Sets the value of {@link AtlasUser#getRoles}
* @param roles List of objects that display the MongoDB Cloud user's roles and the corresponding organization or project to which that role applies.
* A role can apply to one organization or one project but not both.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@SuppressWarnings("unchecked")
public Builder roles(java.util.List extends org.mongodb.awscdk.resources.mongodbatlas.AtlasRole> roles) {
this.roles = (java.util.List)roles;
return this;
}
/**
* Sets the value of {@link AtlasUser#getTeamIds}
* @param teamIds List of unique 24-hexadecimal digit strings that identifies the teams to which this MongoDB Cloud user belongs.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder teamIds(java.util.List teamIds) {
this.teamIds = teamIds;
return this;
}
/**
* Sets the value of {@link AtlasUser#getUsername}
* @param username Email address that represents the username of the MongoDB Cloud user.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder username(java.lang.String username) {
this.username = username;
return this;
}
/**
* Builds the configured instance.
* @return a new instance of {@link AtlasUser}
* @throws NullPointerException if any required attribute was not provided
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@Override
public AtlasUser build() {
return new Jsii$Proxy(this);
}
}
/**
* An implementation for {@link AtlasUser}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@software.amazon.jsii.Internal
final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements AtlasUser {
private final java.lang.String country;
private final java.lang.String emailAddress;
private final java.lang.String firstName;
private final java.lang.String id;
private final java.lang.String lastName;
private final java.util.List links;
private final java.lang.String mobileNumber;
private final java.lang.String password;
private final java.util.List roles;
private final java.util.List teamIds;
private final java.lang.String username;
/**
* 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.country = software.amazon.jsii.Kernel.get(this, "country", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.emailAddress = software.amazon.jsii.Kernel.get(this, "emailAddress", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.firstName = software.amazon.jsii.Kernel.get(this, "firstName", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.id = software.amazon.jsii.Kernel.get(this, "id", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.lastName = software.amazon.jsii.Kernel.get(this, "lastName", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.links = software.amazon.jsii.Kernel.get(this, "links", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(org.mongodb.awscdk.resources.mongodbatlas.Link.class)));
this.mobileNumber = software.amazon.jsii.Kernel.get(this, "mobileNumber", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.password = software.amazon.jsii.Kernel.get(this, "password", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.roles = software.amazon.jsii.Kernel.get(this, "roles", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(org.mongodb.awscdk.resources.mongodbatlas.AtlasRole.class)));
this.teamIds = software.amazon.jsii.Kernel.get(this, "teamIds", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(java.lang.String.class)));
this.username = software.amazon.jsii.Kernel.get(this, "username", 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.country = builder.country;
this.emailAddress = builder.emailAddress;
this.firstName = builder.firstName;
this.id = builder.id;
this.lastName = builder.lastName;
this.links = (java.util.List)builder.links;
this.mobileNumber = builder.mobileNumber;
this.password = builder.password;
this.roles = (java.util.List)builder.roles;
this.teamIds = builder.teamIds;
this.username = builder.username;
}
@Override
public final java.lang.String getCountry() {
return this.country;
}
@Override
public final java.lang.String getEmailAddress() {
return this.emailAddress;
}
@Override
public final java.lang.String getFirstName() {
return this.firstName;
}
@Override
public final java.lang.String getId() {
return this.id;
}
@Override
public final java.lang.String getLastName() {
return this.lastName;
}
@Override
public final java.util.List getLinks() {
return this.links;
}
@Override
public final java.lang.String getMobileNumber() {
return this.mobileNumber;
}
@Override
public final java.lang.String getPassword() {
return this.password;
}
@Override
public final java.util.List getRoles() {
return this.roles;
}
@Override
public final java.util.List getTeamIds() {
return this.teamIds;
}
@Override
public final java.lang.String getUsername() {
return this.username;
}
@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.getCountry() != null) {
data.set("country", om.valueToTree(this.getCountry()));
}
if (this.getEmailAddress() != null) {
data.set("emailAddress", om.valueToTree(this.getEmailAddress()));
}
if (this.getFirstName() != null) {
data.set("firstName", om.valueToTree(this.getFirstName()));
}
if (this.getId() != null) {
data.set("id", om.valueToTree(this.getId()));
}
if (this.getLastName() != null) {
data.set("lastName", om.valueToTree(this.getLastName()));
}
if (this.getLinks() != null) {
data.set("links", om.valueToTree(this.getLinks()));
}
if (this.getMobileNumber() != null) {
data.set("mobileNumber", om.valueToTree(this.getMobileNumber()));
}
if (this.getPassword() != null) {
data.set("password", om.valueToTree(this.getPassword()));
}
if (this.getRoles() != null) {
data.set("roles", om.valueToTree(this.getRoles()));
}
if (this.getTeamIds() != null) {
data.set("teamIds", om.valueToTree(this.getTeamIds()));
}
if (this.getUsername() != null) {
data.set("username", om.valueToTree(this.getUsername()));
}
final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
struct.set("fqn", om.valueToTree("awscdk-resources-mongodbatlas.AtlasUser"));
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;
AtlasUser.Jsii$Proxy that = (AtlasUser.Jsii$Proxy) o;
if (this.country != null ? !this.country.equals(that.country) : that.country != null) return false;
if (this.emailAddress != null ? !this.emailAddress.equals(that.emailAddress) : that.emailAddress != null) return false;
if (this.firstName != null ? !this.firstName.equals(that.firstName) : that.firstName != null) return false;
if (this.id != null ? !this.id.equals(that.id) : that.id != null) return false;
if (this.lastName != null ? !this.lastName.equals(that.lastName) : that.lastName != null) return false;
if (this.links != null ? !this.links.equals(that.links) : that.links != null) return false;
if (this.mobileNumber != null ? !this.mobileNumber.equals(that.mobileNumber) : that.mobileNumber != null) return false;
if (this.password != null ? !this.password.equals(that.password) : that.password != null) return false;
if (this.roles != null ? !this.roles.equals(that.roles) : that.roles != null) return false;
if (this.teamIds != null ? !this.teamIds.equals(that.teamIds) : that.teamIds != null) return false;
return this.username != null ? this.username.equals(that.username) : that.username == null;
}
@Override
public final int hashCode() {
int result = this.country != null ? this.country.hashCode() : 0;
result = 31 * result + (this.emailAddress != null ? this.emailAddress.hashCode() : 0);
result = 31 * result + (this.firstName != null ? this.firstName.hashCode() : 0);
result = 31 * result + (this.id != null ? this.id.hashCode() : 0);
result = 31 * result + (this.lastName != null ? this.lastName.hashCode() : 0);
result = 31 * result + (this.links != null ? this.links.hashCode() : 0);
result = 31 * result + (this.mobileNumber != null ? this.mobileNumber.hashCode() : 0);
result = 31 * result + (this.password != null ? this.password.hashCode() : 0);
result = 31 * result + (this.roles != null ? this.roles.hashCode() : 0);
result = 31 * result + (this.teamIds != null ? this.teamIds.hashCode() : 0);
result = 31 * result + (this.username != null ? this.username.hashCode() : 0);
return result;
}
}
}