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

com.amazonaws.services.cognitoidp.model.CreateUserPoolRequest Maven / Gradle / Ivy

Go to download

The AWS Java SDK for Amazon Cognito Identity Provider Service module holds the client classes that are used for communicating with Amazon Cognito Identity Provider Service.

There is a newer version: 1.12.772
Show newest version
/*
 * Copyright 2019-2024 Amazon.com, Inc. or its affiliates. All Rights Reserved.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
 * the License. A copy of the License is located at
 * 
 * http://aws.amazon.com/apache2.0
 * 
 * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
 * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
 * and limitations under the License.
 */
package com.amazonaws.services.cognitoidp.model;

import java.io.Serializable;
import javax.annotation.Generated;

import com.amazonaws.AmazonWebServiceRequest;

/**
 * 

* Represents the request to create a user pool. *

* * @see AWS API * Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class CreateUserPoolRequest extends com.amazonaws.AmazonWebServiceRequest implements Serializable, Cloneable { /** *

* A string used to name the user pool. *

*/ private String poolName; /** *

* The policies associated with the new user pool. *

*/ private UserPoolPolicyType policies; /** *

* When active, DeletionProtection prevents accidental deletion of your user pool. Before you can * delete a user pool that you have protected against deletion, you must deactivate this feature. *

*

* When you try to delete a protected user pool in a DeleteUserPool API request, Amazon Cognito returns * an InvalidParameterException error. To delete a protected user pool, send a new * DeleteUserPool request after you deactivate deletion protection in an UpdateUserPool * API request. *

*/ private String deletionProtection; /** *

* The Lambda trigger configuration information for the new user pool. *

* *

* In a push model, event sources (such as Amazon S3 and custom applications) need permission to invoke a function. * So you must make an extra call to add permission for these event sources to invoke your Lambda function. *

*

*

* For more information on using the Lambda API to add permission, see AddPermission . *

*

* For adding permission using the CLI, see add-permission . *

*
*/ private LambdaConfigType lambdaConfig; /** *

* The attributes to be auto-verified. Possible values: email, phone_number. *

*/ private java.util.List autoVerifiedAttributes; /** *

* Attributes supported as an alias for this user pool. Possible values: phone_number, email, or * preferred_username. *

*/ private java.util.List aliasAttributes; /** *

* Specifies whether a user can use an email address or phone number as a username when they sign up. *

*/ private java.util.List usernameAttributes; /** *

* This parameter is no longer used. See VerificationMessageTemplateType. *

*/ private String smsVerificationMessage; /** *

* This parameter is no longer used. See VerificationMessageTemplateType. *

*/ private String emailVerificationMessage; /** *

* This parameter is no longer used. See VerificationMessageTemplateType. *

*/ private String emailVerificationSubject; /** *

* The template for the verification message that the user sees when the app requests permission to access the * user's information. *

*/ private VerificationMessageTemplateType verificationMessageTemplate; /** *

* A string representing the SMS authentication message. *

*/ private String smsAuthenticationMessage; /** *

* Specifies MFA configuration details. *

*/ private String mfaConfiguration; /** *

* The settings for updates to user attributes. These settings include the property * AttributesRequireVerificationBeforeUpdate, a user-pool setting that tells Amazon Cognito how to * handle changes to the value of your users' email address and phone number attributes. For more information, see * Verifying updates to email addresses and phone numbers. *

*/ private UserAttributeUpdateSettingsType userAttributeUpdateSettings; /** *

* The device-remembering configuration for a user pool. A null value indicates that you have deactivated device * remembering in your user pool. *

* *

* When you provide a value for any DeviceConfiguration field, you activate the Amazon Cognito * device-remembering feature. *

*
*/ private DeviceConfigurationType deviceConfiguration; /** *

* The email configuration of your user pool. The email configuration type sets your preferred sending method, * Amazon Web Services Region, and sender for messages from your user pool. *

*/ private EmailConfigurationType emailConfiguration; /** *

* The SMS configuration with the settings that your Amazon Cognito user pool must use to send an SMS message from * your Amazon Web Services account through Amazon Simple Notification Service. To send SMS messages with Amazon SNS * in the Amazon Web Services Region that you want, the Amazon Cognito user pool uses an Identity and Access * Management (IAM) role in your Amazon Web Services account. *

*/ private SmsConfigurationType smsConfiguration; /** *

* The tag keys and values to assign to the user pool. A tag is a label that you can use to categorize and manage * user pools in different ways, such as by purpose, owner, environment, or other criteria. *

*/ private java.util.Map userPoolTags; /** *

* The configuration for AdminCreateUser requests. *

*/ private AdminCreateUserConfigType adminCreateUserConfig; /** *

* An array of schema attributes for the new user pool. These attributes can be standard or custom attributes. *

*/ private java.util.List schema; /** *

* User pool add-ons. Contains settings for activation of advanced security features. To log user security * information but take no action, set to AUDIT. To configure automatic security responses to risky * traffic to your user pool, set to ENFORCED. *

*

* For more information, see Adding advanced security to a user pool. *

*/ private UserPoolAddOnsType userPoolAddOns; /** *

* Case sensitivity on the username input for the selected sign-in option. When case sensitivity is set to * False (case insensitive), users can sign in with any combination of capital and lowercase letters. * For example, username, USERNAME, or UserName, or for email, * [email protected] or [email protected]. For most use cases, set case sensitivity to * False (case insensitive) as a best practice. When usernames and email addresses are case * insensitive, Amazon Cognito treats any variation in case as the same user, and prevents a case variation from * being assigned to the same attribute for a different user. *

*

* This configuration is immutable after you set it. For more information, see UsernameConfigurationType. *

*/ private UsernameConfigurationType usernameConfiguration; /** *

* The available verified method a user can use to recover their password when they call ForgotPassword * . You can use this setting to define a preferred method when a user has more than one method available. With this * setting, SMS doesn't qualify for a valid password recovery mechanism if the user also has SMS multi-factor * authentication (MFA) activated. In the absence of this setting, Amazon Cognito uses the legacy behavior to * determine the recovery method where SMS is preferred through email. *

*/ private AccountRecoverySettingType accountRecoverySetting; /** *

* A string used to name the user pool. *

* * @param poolName * A string used to name the user pool. */ public void setPoolName(String poolName) { this.poolName = poolName; } /** *

* A string used to name the user pool. *

* * @return A string used to name the user pool. */ public String getPoolName() { return this.poolName; } /** *

* A string used to name the user pool. *

* * @param poolName * A string used to name the user pool. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateUserPoolRequest withPoolName(String poolName) { setPoolName(poolName); return this; } /** *

* The policies associated with the new user pool. *

* * @param policies * The policies associated with the new user pool. */ public void setPolicies(UserPoolPolicyType policies) { this.policies = policies; } /** *

* The policies associated with the new user pool. *

* * @return The policies associated with the new user pool. */ public UserPoolPolicyType getPolicies() { return this.policies; } /** *

* The policies associated with the new user pool. *

* * @param policies * The policies associated with the new user pool. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateUserPoolRequest withPolicies(UserPoolPolicyType policies) { setPolicies(policies); return this; } /** *

* When active, DeletionProtection prevents accidental deletion of your user pool. Before you can * delete a user pool that you have protected against deletion, you must deactivate this feature. *

*

* When you try to delete a protected user pool in a DeleteUserPool API request, Amazon Cognito returns * an InvalidParameterException error. To delete a protected user pool, send a new * DeleteUserPool request after you deactivate deletion protection in an UpdateUserPool * API request. *

* * @param deletionProtection * When active, DeletionProtection prevents accidental deletion of your user pool. Before you * can delete a user pool that you have protected against deletion, you must deactivate this feature.

*

* When you try to delete a protected user pool in a DeleteUserPool API request, Amazon Cognito * returns an InvalidParameterException error. To delete a protected user pool, send a new * DeleteUserPool request after you deactivate deletion protection in an * UpdateUserPool API request. * @see DeletionProtectionType */ public void setDeletionProtection(String deletionProtection) { this.deletionProtection = deletionProtection; } /** *

* When active, DeletionProtection prevents accidental deletion of your user pool. Before you can * delete a user pool that you have protected against deletion, you must deactivate this feature. *

*

* When you try to delete a protected user pool in a DeleteUserPool API request, Amazon Cognito returns * an InvalidParameterException error. To delete a protected user pool, send a new * DeleteUserPool request after you deactivate deletion protection in an UpdateUserPool * API request. *

* * @return When active, DeletionProtection prevents accidental deletion of your user pool. Before you * can delete a user pool that you have protected against deletion, you must deactivate this feature.

*

* When you try to delete a protected user pool in a DeleteUserPool API request, Amazon Cognito * returns an InvalidParameterException error. To delete a protected user pool, send a new * DeleteUserPool request after you deactivate deletion protection in an * UpdateUserPool API request. * @see DeletionProtectionType */ public String getDeletionProtection() { return this.deletionProtection; } /** *

* When active, DeletionProtection prevents accidental deletion of your user pool. Before you can * delete a user pool that you have protected against deletion, you must deactivate this feature. *

*

* When you try to delete a protected user pool in a DeleteUserPool API request, Amazon Cognito returns * an InvalidParameterException error. To delete a protected user pool, send a new * DeleteUserPool request after you deactivate deletion protection in an UpdateUserPool * API request. *

* * @param deletionProtection * When active, DeletionProtection prevents accidental deletion of your user pool. Before you * can delete a user pool that you have protected against deletion, you must deactivate this feature.

*

* When you try to delete a protected user pool in a DeleteUserPool API request, Amazon Cognito * returns an InvalidParameterException error. To delete a protected user pool, send a new * DeleteUserPool request after you deactivate deletion protection in an * UpdateUserPool API request. * @return Returns a reference to this object so that method calls can be chained together. * @see DeletionProtectionType */ public CreateUserPoolRequest withDeletionProtection(String deletionProtection) { setDeletionProtection(deletionProtection); return this; } /** *

* When active, DeletionProtection prevents accidental deletion of your user pool. Before you can * delete a user pool that you have protected against deletion, you must deactivate this feature. *

*

* When you try to delete a protected user pool in a DeleteUserPool API request, Amazon Cognito returns * an InvalidParameterException error. To delete a protected user pool, send a new * DeleteUserPool request after you deactivate deletion protection in an UpdateUserPool * API request. *

* * @param deletionProtection * When active, DeletionProtection prevents accidental deletion of your user pool. Before you * can delete a user pool that you have protected against deletion, you must deactivate this feature.

*

* When you try to delete a protected user pool in a DeleteUserPool API request, Amazon Cognito * returns an InvalidParameterException error. To delete a protected user pool, send a new * DeleteUserPool request after you deactivate deletion protection in an * UpdateUserPool API request. * @see DeletionProtectionType */ public void setDeletionProtection(DeletionProtectionType deletionProtection) { withDeletionProtection(deletionProtection); } /** *

* When active, DeletionProtection prevents accidental deletion of your user pool. Before you can * delete a user pool that you have protected against deletion, you must deactivate this feature. *

*

* When you try to delete a protected user pool in a DeleteUserPool API request, Amazon Cognito returns * an InvalidParameterException error. To delete a protected user pool, send a new * DeleteUserPool request after you deactivate deletion protection in an UpdateUserPool * API request. *

* * @param deletionProtection * When active, DeletionProtection prevents accidental deletion of your user pool. Before you * can delete a user pool that you have protected against deletion, you must deactivate this feature.

*

* When you try to delete a protected user pool in a DeleteUserPool API request, Amazon Cognito * returns an InvalidParameterException error. To delete a protected user pool, send a new * DeleteUserPool request after you deactivate deletion protection in an * UpdateUserPool API request. * @return Returns a reference to this object so that method calls can be chained together. * @see DeletionProtectionType */ public CreateUserPoolRequest withDeletionProtection(DeletionProtectionType deletionProtection) { this.deletionProtection = deletionProtection.toString(); return this; } /** *

* The Lambda trigger configuration information for the new user pool. *

* *

* In a push model, event sources (such as Amazon S3 and custom applications) need permission to invoke a function. * So you must make an extra call to add permission for these event sources to invoke your Lambda function. *

*

*

* For more information on using the Lambda API to add permission, see AddPermission . *

*

* For adding permission using the CLI, see add-permission . *

*
* * @param lambdaConfig * The Lambda trigger configuration information for the new user pool.

*

* In a push model, event sources (such as Amazon S3 and custom applications) need permission to invoke a * function. So you must make an extra call to add permission for these event sources to invoke your Lambda * function. *

*

*

* For more information on using the Lambda API to add permission, see AddPermission . *

*

* For adding permission using the CLI, see add-permission . *

*/ public void setLambdaConfig(LambdaConfigType lambdaConfig) { this.lambdaConfig = lambdaConfig; } /** *

* The Lambda trigger configuration information for the new user pool. *

* *

* In a push model, event sources (such as Amazon S3 and custom applications) need permission to invoke a function. * So you must make an extra call to add permission for these event sources to invoke your Lambda function. *

*

*

* For more information on using the Lambda API to add permission, see AddPermission . *

*

* For adding permission using the CLI, see add-permission . *

*
* * @return The Lambda trigger configuration information for the new user pool.

*

* In a push model, event sources (such as Amazon S3 and custom applications) need permission to invoke a * function. So you must make an extra call to add permission for these event sources to invoke your Lambda * function. *

*

*

* For more information on using the Lambda API to add permission, see AddPermission . *

*

* For adding permission using the CLI, see add-permission . *

*/ public LambdaConfigType getLambdaConfig() { return this.lambdaConfig; } /** *

* The Lambda trigger configuration information for the new user pool. *

* *

* In a push model, event sources (such as Amazon S3 and custom applications) need permission to invoke a function. * So you must make an extra call to add permission for these event sources to invoke your Lambda function. *

*

*

* For more information on using the Lambda API to add permission, see AddPermission . *

*

* For adding permission using the CLI, see add-permission . *

*
* * @param lambdaConfig * The Lambda trigger configuration information for the new user pool.

*

* In a push model, event sources (such as Amazon S3 and custom applications) need permission to invoke a * function. So you must make an extra call to add permission for these event sources to invoke your Lambda * function. *

*

*

* For more information on using the Lambda API to add permission, see AddPermission . *

*

* For adding permission using the CLI, see add-permission . *

* @return Returns a reference to this object so that method calls can be chained together. */ public CreateUserPoolRequest withLambdaConfig(LambdaConfigType lambdaConfig) { setLambdaConfig(lambdaConfig); return this; } /** *

* The attributes to be auto-verified. Possible values: email, phone_number. *

* * @return The attributes to be auto-verified. Possible values: email, phone_number. * @see VerifiedAttributeType */ public java.util.List getAutoVerifiedAttributes() { return autoVerifiedAttributes; } /** *

* The attributes to be auto-verified. Possible values: email, phone_number. *

* * @param autoVerifiedAttributes * The attributes to be auto-verified. Possible values: email, phone_number. * @see VerifiedAttributeType */ public void setAutoVerifiedAttributes(java.util.Collection autoVerifiedAttributes) { if (autoVerifiedAttributes == null) { this.autoVerifiedAttributes = null; return; } this.autoVerifiedAttributes = new java.util.ArrayList(autoVerifiedAttributes); } /** *

* The attributes to be auto-verified. Possible values: email, phone_number. *

*

* NOTE: This method appends the values to the existing list (if any). Use * {@link #setAutoVerifiedAttributes(java.util.Collection)} or * {@link #withAutoVerifiedAttributes(java.util.Collection)} if you want to override the existing values. *

* * @param autoVerifiedAttributes * The attributes to be auto-verified. Possible values: email, phone_number. * @return Returns a reference to this object so that method calls can be chained together. * @see VerifiedAttributeType */ public CreateUserPoolRequest withAutoVerifiedAttributes(String... autoVerifiedAttributes) { if (this.autoVerifiedAttributes == null) { setAutoVerifiedAttributes(new java.util.ArrayList(autoVerifiedAttributes.length)); } for (String ele : autoVerifiedAttributes) { this.autoVerifiedAttributes.add(ele); } return this; } /** *

* The attributes to be auto-verified. Possible values: email, phone_number. *

* * @param autoVerifiedAttributes * The attributes to be auto-verified. Possible values: email, phone_number. * @return Returns a reference to this object so that method calls can be chained together. * @see VerifiedAttributeType */ public CreateUserPoolRequest withAutoVerifiedAttributes(java.util.Collection autoVerifiedAttributes) { setAutoVerifiedAttributes(autoVerifiedAttributes); return this; } /** *

* The attributes to be auto-verified. Possible values: email, phone_number. *

* * @param autoVerifiedAttributes * The attributes to be auto-verified. Possible values: email, phone_number. * @return Returns a reference to this object so that method calls can be chained together. * @see VerifiedAttributeType */ public CreateUserPoolRequest withAutoVerifiedAttributes(VerifiedAttributeType... autoVerifiedAttributes) { java.util.ArrayList autoVerifiedAttributesCopy = new java.util.ArrayList(autoVerifiedAttributes.length); for (VerifiedAttributeType value : autoVerifiedAttributes) { autoVerifiedAttributesCopy.add(value.toString()); } if (getAutoVerifiedAttributes() == null) { setAutoVerifiedAttributes(autoVerifiedAttributesCopy); } else { getAutoVerifiedAttributes().addAll(autoVerifiedAttributesCopy); } return this; } /** *

* Attributes supported as an alias for this user pool. Possible values: phone_number, email, or * preferred_username. *

* * @return Attributes supported as an alias for this user pool. Possible values: phone_number, email, * or preferred_username. * @see AliasAttributeType */ public java.util.List getAliasAttributes() { return aliasAttributes; } /** *

* Attributes supported as an alias for this user pool. Possible values: phone_number, email, or * preferred_username. *

* * @param aliasAttributes * Attributes supported as an alias for this user pool. Possible values: phone_number, email, * or preferred_username. * @see AliasAttributeType */ public void setAliasAttributes(java.util.Collection aliasAttributes) { if (aliasAttributes == null) { this.aliasAttributes = null; return; } this.aliasAttributes = new java.util.ArrayList(aliasAttributes); } /** *

* Attributes supported as an alias for this user pool. Possible values: phone_number, email, or * preferred_username. *

*

* NOTE: This method appends the values to the existing list (if any). Use * {@link #setAliasAttributes(java.util.Collection)} or {@link #withAliasAttributes(java.util.Collection)} if you * want to override the existing values. *

* * @param aliasAttributes * Attributes supported as an alias for this user pool. Possible values: phone_number, email, * or preferred_username. * @return Returns a reference to this object so that method calls can be chained together. * @see AliasAttributeType */ public CreateUserPoolRequest withAliasAttributes(String... aliasAttributes) { if (this.aliasAttributes == null) { setAliasAttributes(new java.util.ArrayList(aliasAttributes.length)); } for (String ele : aliasAttributes) { this.aliasAttributes.add(ele); } return this; } /** *

* Attributes supported as an alias for this user pool. Possible values: phone_number, email, or * preferred_username. *

* * @param aliasAttributes * Attributes supported as an alias for this user pool. Possible values: phone_number, email, * or preferred_username. * @return Returns a reference to this object so that method calls can be chained together. * @see AliasAttributeType */ public CreateUserPoolRequest withAliasAttributes(java.util.Collection aliasAttributes) { setAliasAttributes(aliasAttributes); return this; } /** *

* Attributes supported as an alias for this user pool. Possible values: phone_number, email, or * preferred_username. *

* * @param aliasAttributes * Attributes supported as an alias for this user pool. Possible values: phone_number, email, * or preferred_username. * @return Returns a reference to this object so that method calls can be chained together. * @see AliasAttributeType */ public CreateUserPoolRequest withAliasAttributes(AliasAttributeType... aliasAttributes) { java.util.ArrayList aliasAttributesCopy = new java.util.ArrayList(aliasAttributes.length); for (AliasAttributeType value : aliasAttributes) { aliasAttributesCopy.add(value.toString()); } if (getAliasAttributes() == null) { setAliasAttributes(aliasAttributesCopy); } else { getAliasAttributes().addAll(aliasAttributesCopy); } return this; } /** *

* Specifies whether a user can use an email address or phone number as a username when they sign up. *

* * @return Specifies whether a user can use an email address or phone number as a username when they sign up. * @see UsernameAttributeType */ public java.util.List getUsernameAttributes() { return usernameAttributes; } /** *

* Specifies whether a user can use an email address or phone number as a username when they sign up. *

* * @param usernameAttributes * Specifies whether a user can use an email address or phone number as a username when they sign up. * @see UsernameAttributeType */ public void setUsernameAttributes(java.util.Collection usernameAttributes) { if (usernameAttributes == null) { this.usernameAttributes = null; return; } this.usernameAttributes = new java.util.ArrayList(usernameAttributes); } /** *

* Specifies whether a user can use an email address or phone number as a username when they sign up. *

*

* NOTE: This method appends the values to the existing list (if any). Use * {@link #setUsernameAttributes(java.util.Collection)} or {@link #withUsernameAttributes(java.util.Collection)} if * you want to override the existing values. *

* * @param usernameAttributes * Specifies whether a user can use an email address or phone number as a username when they sign up. * @return Returns a reference to this object so that method calls can be chained together. * @see UsernameAttributeType */ public CreateUserPoolRequest withUsernameAttributes(String... usernameAttributes) { if (this.usernameAttributes == null) { setUsernameAttributes(new java.util.ArrayList(usernameAttributes.length)); } for (String ele : usernameAttributes) { this.usernameAttributes.add(ele); } return this; } /** *

* Specifies whether a user can use an email address or phone number as a username when they sign up. *

* * @param usernameAttributes * Specifies whether a user can use an email address or phone number as a username when they sign up. * @return Returns a reference to this object so that method calls can be chained together. * @see UsernameAttributeType */ public CreateUserPoolRequest withUsernameAttributes(java.util.Collection usernameAttributes) { setUsernameAttributes(usernameAttributes); return this; } /** *

* Specifies whether a user can use an email address or phone number as a username when they sign up. *

* * @param usernameAttributes * Specifies whether a user can use an email address or phone number as a username when they sign up. * @return Returns a reference to this object so that method calls can be chained together. * @see UsernameAttributeType */ public CreateUserPoolRequest withUsernameAttributes(UsernameAttributeType... usernameAttributes) { java.util.ArrayList usernameAttributesCopy = new java.util.ArrayList(usernameAttributes.length); for (UsernameAttributeType value : usernameAttributes) { usernameAttributesCopy.add(value.toString()); } if (getUsernameAttributes() == null) { setUsernameAttributes(usernameAttributesCopy); } else { getUsernameAttributes().addAll(usernameAttributesCopy); } return this; } /** *

* This parameter is no longer used. See VerificationMessageTemplateType. *

* * @param smsVerificationMessage * This parameter is no longer used. See VerificationMessageTemplateType. */ public void setSmsVerificationMessage(String smsVerificationMessage) { this.smsVerificationMessage = smsVerificationMessage; } /** *

* This parameter is no longer used. See VerificationMessageTemplateType. *

* * @return This parameter is no longer used. See VerificationMessageTemplateType. */ public String getSmsVerificationMessage() { return this.smsVerificationMessage; } /** *

* This parameter is no longer used. See VerificationMessageTemplateType. *

* * @param smsVerificationMessage * This parameter is no longer used. See VerificationMessageTemplateType. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateUserPoolRequest withSmsVerificationMessage(String smsVerificationMessage) { setSmsVerificationMessage(smsVerificationMessage); return this; } /** *

* This parameter is no longer used. See VerificationMessageTemplateType. *

* * @param emailVerificationMessage * This parameter is no longer used. See VerificationMessageTemplateType. */ public void setEmailVerificationMessage(String emailVerificationMessage) { this.emailVerificationMessage = emailVerificationMessage; } /** *

* This parameter is no longer used. See VerificationMessageTemplateType. *

* * @return This parameter is no longer used. See VerificationMessageTemplateType. */ public String getEmailVerificationMessage() { return this.emailVerificationMessage; } /** *

* This parameter is no longer used. See VerificationMessageTemplateType. *

* * @param emailVerificationMessage * This parameter is no longer used. See VerificationMessageTemplateType. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateUserPoolRequest withEmailVerificationMessage(String emailVerificationMessage) { setEmailVerificationMessage(emailVerificationMessage); return this; } /** *

* This parameter is no longer used. See VerificationMessageTemplateType. *

* * @param emailVerificationSubject * This parameter is no longer used. See VerificationMessageTemplateType. */ public void setEmailVerificationSubject(String emailVerificationSubject) { this.emailVerificationSubject = emailVerificationSubject; } /** *

* This parameter is no longer used. See VerificationMessageTemplateType. *

* * @return This parameter is no longer used. See VerificationMessageTemplateType. */ public String getEmailVerificationSubject() { return this.emailVerificationSubject; } /** *

* This parameter is no longer used. See VerificationMessageTemplateType. *

* * @param emailVerificationSubject * This parameter is no longer used. See VerificationMessageTemplateType. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateUserPoolRequest withEmailVerificationSubject(String emailVerificationSubject) { setEmailVerificationSubject(emailVerificationSubject); return this; } /** *

* The template for the verification message that the user sees when the app requests permission to access the * user's information. *

* * @param verificationMessageTemplate * The template for the verification message that the user sees when the app requests permission to access * the user's information. */ public void setVerificationMessageTemplate(VerificationMessageTemplateType verificationMessageTemplate) { this.verificationMessageTemplate = verificationMessageTemplate; } /** *

* The template for the verification message that the user sees when the app requests permission to access the * user's information. *

* * @return The template for the verification message that the user sees when the app requests permission to access * the user's information. */ public VerificationMessageTemplateType getVerificationMessageTemplate() { return this.verificationMessageTemplate; } /** *

* The template for the verification message that the user sees when the app requests permission to access the * user's information. *

* * @param verificationMessageTemplate * The template for the verification message that the user sees when the app requests permission to access * the user's information. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateUserPoolRequest withVerificationMessageTemplate(VerificationMessageTemplateType verificationMessageTemplate) { setVerificationMessageTemplate(verificationMessageTemplate); return this; } /** *

* A string representing the SMS authentication message. *

* * @param smsAuthenticationMessage * A string representing the SMS authentication message. */ public void setSmsAuthenticationMessage(String smsAuthenticationMessage) { this.smsAuthenticationMessage = smsAuthenticationMessage; } /** *

* A string representing the SMS authentication message. *

* * @return A string representing the SMS authentication message. */ public String getSmsAuthenticationMessage() { return this.smsAuthenticationMessage; } /** *

* A string representing the SMS authentication message. *

* * @param smsAuthenticationMessage * A string representing the SMS authentication message. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateUserPoolRequest withSmsAuthenticationMessage(String smsAuthenticationMessage) { setSmsAuthenticationMessage(smsAuthenticationMessage); return this; } /** *

* Specifies MFA configuration details. *

* * @param mfaConfiguration * Specifies MFA configuration details. * @see UserPoolMfaType */ public void setMfaConfiguration(String mfaConfiguration) { this.mfaConfiguration = mfaConfiguration; } /** *

* Specifies MFA configuration details. *

* * @return Specifies MFA configuration details. * @see UserPoolMfaType */ public String getMfaConfiguration() { return this.mfaConfiguration; } /** *

* Specifies MFA configuration details. *

* * @param mfaConfiguration * Specifies MFA configuration details. * @return Returns a reference to this object so that method calls can be chained together. * @see UserPoolMfaType */ public CreateUserPoolRequest withMfaConfiguration(String mfaConfiguration) { setMfaConfiguration(mfaConfiguration); return this; } /** *

* Specifies MFA configuration details. *

* * @param mfaConfiguration * Specifies MFA configuration details. * @see UserPoolMfaType */ public void setMfaConfiguration(UserPoolMfaType mfaConfiguration) { withMfaConfiguration(mfaConfiguration); } /** *

* Specifies MFA configuration details. *

* * @param mfaConfiguration * Specifies MFA configuration details. * @return Returns a reference to this object so that method calls can be chained together. * @see UserPoolMfaType */ public CreateUserPoolRequest withMfaConfiguration(UserPoolMfaType mfaConfiguration) { this.mfaConfiguration = mfaConfiguration.toString(); return this; } /** *

* The settings for updates to user attributes. These settings include the property * AttributesRequireVerificationBeforeUpdate, a user-pool setting that tells Amazon Cognito how to * handle changes to the value of your users' email address and phone number attributes. For more information, see * Verifying updates to email addresses and phone numbers. *

* * @param userAttributeUpdateSettings * The settings for updates to user attributes. These settings include the property * AttributesRequireVerificationBeforeUpdate, a user-pool setting that tells Amazon Cognito how * to handle changes to the value of your users' email address and phone number attributes. For more * information, see Verifying updates to email addresses and phone numbers. */ public void setUserAttributeUpdateSettings(UserAttributeUpdateSettingsType userAttributeUpdateSettings) { this.userAttributeUpdateSettings = userAttributeUpdateSettings; } /** *

* The settings for updates to user attributes. These settings include the property * AttributesRequireVerificationBeforeUpdate, a user-pool setting that tells Amazon Cognito how to * handle changes to the value of your users' email address and phone number attributes. For more information, see * Verifying updates to email addresses and phone numbers. *

* * @return The settings for updates to user attributes. These settings include the property * AttributesRequireVerificationBeforeUpdate, a user-pool setting that tells Amazon Cognito how * to handle changes to the value of your users' email address and phone number attributes. For more * information, see Verifying updates to email addresses and phone numbers. */ public UserAttributeUpdateSettingsType getUserAttributeUpdateSettings() { return this.userAttributeUpdateSettings; } /** *

* The settings for updates to user attributes. These settings include the property * AttributesRequireVerificationBeforeUpdate, a user-pool setting that tells Amazon Cognito how to * handle changes to the value of your users' email address and phone number attributes. For more information, see * Verifying updates to email addresses and phone numbers. *

* * @param userAttributeUpdateSettings * The settings for updates to user attributes. These settings include the property * AttributesRequireVerificationBeforeUpdate, a user-pool setting that tells Amazon Cognito how * to handle changes to the value of your users' email address and phone number attributes. For more * information, see Verifying updates to email addresses and phone numbers. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateUserPoolRequest withUserAttributeUpdateSettings(UserAttributeUpdateSettingsType userAttributeUpdateSettings) { setUserAttributeUpdateSettings(userAttributeUpdateSettings); return this; } /** *

* The device-remembering configuration for a user pool. A null value indicates that you have deactivated device * remembering in your user pool. *

* *

* When you provide a value for any DeviceConfiguration field, you activate the Amazon Cognito * device-remembering feature. *

*
* * @param deviceConfiguration * The device-remembering configuration for a user pool. A null value indicates that you have deactivated * device remembering in your user pool.

*

* When you provide a value for any DeviceConfiguration field, you activate the Amazon Cognito * device-remembering feature. *

*/ public void setDeviceConfiguration(DeviceConfigurationType deviceConfiguration) { this.deviceConfiguration = deviceConfiguration; } /** *

* The device-remembering configuration for a user pool. A null value indicates that you have deactivated device * remembering in your user pool. *

* *

* When you provide a value for any DeviceConfiguration field, you activate the Amazon Cognito * device-remembering feature. *

*
* * @return The device-remembering configuration for a user pool. A null value indicates that you have deactivated * device remembering in your user pool.

*

* When you provide a value for any DeviceConfiguration field, you activate the Amazon Cognito * device-remembering feature. *

*/ public DeviceConfigurationType getDeviceConfiguration() { return this.deviceConfiguration; } /** *

* The device-remembering configuration for a user pool. A null value indicates that you have deactivated device * remembering in your user pool. *

* *

* When you provide a value for any DeviceConfiguration field, you activate the Amazon Cognito * device-remembering feature. *

*
* * @param deviceConfiguration * The device-remembering configuration for a user pool. A null value indicates that you have deactivated * device remembering in your user pool.

*

* When you provide a value for any DeviceConfiguration field, you activate the Amazon Cognito * device-remembering feature. *

* @return Returns a reference to this object so that method calls can be chained together. */ public CreateUserPoolRequest withDeviceConfiguration(DeviceConfigurationType deviceConfiguration) { setDeviceConfiguration(deviceConfiguration); return this; } /** *

* The email configuration of your user pool. The email configuration type sets your preferred sending method, * Amazon Web Services Region, and sender for messages from your user pool. *

* * @param emailConfiguration * The email configuration of your user pool. The email configuration type sets your preferred sending * method, Amazon Web Services Region, and sender for messages from your user pool. */ public void setEmailConfiguration(EmailConfigurationType emailConfiguration) { this.emailConfiguration = emailConfiguration; } /** *

* The email configuration of your user pool. The email configuration type sets your preferred sending method, * Amazon Web Services Region, and sender for messages from your user pool. *

* * @return The email configuration of your user pool. The email configuration type sets your preferred sending * method, Amazon Web Services Region, and sender for messages from your user pool. */ public EmailConfigurationType getEmailConfiguration() { return this.emailConfiguration; } /** *

* The email configuration of your user pool. The email configuration type sets your preferred sending method, * Amazon Web Services Region, and sender for messages from your user pool. *

* * @param emailConfiguration * The email configuration of your user pool. The email configuration type sets your preferred sending * method, Amazon Web Services Region, and sender for messages from your user pool. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateUserPoolRequest withEmailConfiguration(EmailConfigurationType emailConfiguration) { setEmailConfiguration(emailConfiguration); return this; } /** *

* The SMS configuration with the settings that your Amazon Cognito user pool must use to send an SMS message from * your Amazon Web Services account through Amazon Simple Notification Service. To send SMS messages with Amazon SNS * in the Amazon Web Services Region that you want, the Amazon Cognito user pool uses an Identity and Access * Management (IAM) role in your Amazon Web Services account. *

* * @param smsConfiguration * The SMS configuration with the settings that your Amazon Cognito user pool must use to send an SMS message * from your Amazon Web Services account through Amazon Simple Notification Service. To send SMS messages * with Amazon SNS in the Amazon Web Services Region that you want, the Amazon Cognito user pool uses an * Identity and Access Management (IAM) role in your Amazon Web Services account. */ public void setSmsConfiguration(SmsConfigurationType smsConfiguration) { this.smsConfiguration = smsConfiguration; } /** *

* The SMS configuration with the settings that your Amazon Cognito user pool must use to send an SMS message from * your Amazon Web Services account through Amazon Simple Notification Service. To send SMS messages with Amazon SNS * in the Amazon Web Services Region that you want, the Amazon Cognito user pool uses an Identity and Access * Management (IAM) role in your Amazon Web Services account. *

* * @return The SMS configuration with the settings that your Amazon Cognito user pool must use to send an SMS * message from your Amazon Web Services account through Amazon Simple Notification Service. To send SMS * messages with Amazon SNS in the Amazon Web Services Region that you want, the Amazon Cognito user pool * uses an Identity and Access Management (IAM) role in your Amazon Web Services account. */ public SmsConfigurationType getSmsConfiguration() { return this.smsConfiguration; } /** *

* The SMS configuration with the settings that your Amazon Cognito user pool must use to send an SMS message from * your Amazon Web Services account through Amazon Simple Notification Service. To send SMS messages with Amazon SNS * in the Amazon Web Services Region that you want, the Amazon Cognito user pool uses an Identity and Access * Management (IAM) role in your Amazon Web Services account. *

* * @param smsConfiguration * The SMS configuration with the settings that your Amazon Cognito user pool must use to send an SMS message * from your Amazon Web Services account through Amazon Simple Notification Service. To send SMS messages * with Amazon SNS in the Amazon Web Services Region that you want, the Amazon Cognito user pool uses an * Identity and Access Management (IAM) role in your Amazon Web Services account. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateUserPoolRequest withSmsConfiguration(SmsConfigurationType smsConfiguration) { setSmsConfiguration(smsConfiguration); return this; } /** *

* The tag keys and values to assign to the user pool. A tag is a label that you can use to categorize and manage * user pools in different ways, such as by purpose, owner, environment, or other criteria. *

* * @return The tag keys and values to assign to the user pool. A tag is a label that you can use to categorize and * manage user pools in different ways, such as by purpose, owner, environment, or other criteria. */ public java.util.Map getUserPoolTags() { return userPoolTags; } /** *

* The tag keys and values to assign to the user pool. A tag is a label that you can use to categorize and manage * user pools in different ways, such as by purpose, owner, environment, or other criteria. *

* * @param userPoolTags * The tag keys and values to assign to the user pool. A tag is a label that you can use to categorize and * manage user pools in different ways, such as by purpose, owner, environment, or other criteria. */ public void setUserPoolTags(java.util.Map userPoolTags) { this.userPoolTags = userPoolTags; } /** *

* The tag keys and values to assign to the user pool. A tag is a label that you can use to categorize and manage * user pools in different ways, such as by purpose, owner, environment, or other criteria. *

* * @param userPoolTags * The tag keys and values to assign to the user pool. A tag is a label that you can use to categorize and * manage user pools in different ways, such as by purpose, owner, environment, or other criteria. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateUserPoolRequest withUserPoolTags(java.util.Map userPoolTags) { setUserPoolTags(userPoolTags); return this; } /** * Add a single UserPoolTags entry * * @see CreateUserPoolRequest#withUserPoolTags * @returns a reference to this object so that method calls can be chained together. */ public CreateUserPoolRequest addUserPoolTagsEntry(String key, String value) { if (null == this.userPoolTags) { this.userPoolTags = new java.util.HashMap(); } if (this.userPoolTags.containsKey(key)) throw new IllegalArgumentException("Duplicated keys (" + key.toString() + ") are provided."); this.userPoolTags.put(key, value); return this; } /** * Removes all the entries added into UserPoolTags. * * @return Returns a reference to this object so that method calls can be chained together. */ public CreateUserPoolRequest clearUserPoolTagsEntries() { this.userPoolTags = null; return this; } /** *

* The configuration for AdminCreateUser requests. *

* * @param adminCreateUserConfig * The configuration for AdminCreateUser requests. */ public void setAdminCreateUserConfig(AdminCreateUserConfigType adminCreateUserConfig) { this.adminCreateUserConfig = adminCreateUserConfig; } /** *

* The configuration for AdminCreateUser requests. *

* * @return The configuration for AdminCreateUser requests. */ public AdminCreateUserConfigType getAdminCreateUserConfig() { return this.adminCreateUserConfig; } /** *

* The configuration for AdminCreateUser requests. *

* * @param adminCreateUserConfig * The configuration for AdminCreateUser requests. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateUserPoolRequest withAdminCreateUserConfig(AdminCreateUserConfigType adminCreateUserConfig) { setAdminCreateUserConfig(adminCreateUserConfig); return this; } /** *

* An array of schema attributes for the new user pool. These attributes can be standard or custom attributes. *

* * @return An array of schema attributes for the new user pool. These attributes can be standard or custom * attributes. */ public java.util.List getSchema() { return schema; } /** *

* An array of schema attributes for the new user pool. These attributes can be standard or custom attributes. *

* * @param schema * An array of schema attributes for the new user pool. These attributes can be standard or custom * attributes. */ public void setSchema(java.util.Collection schema) { if (schema == null) { this.schema = null; return; } this.schema = new java.util.ArrayList(schema); } /** *

* An array of schema attributes for the new user pool. These attributes can be standard or custom attributes. *

*

* NOTE: This method appends the values to the existing list (if any). Use * {@link #setSchema(java.util.Collection)} or {@link #withSchema(java.util.Collection)} if you want to override the * existing values. *

* * @param schema * An array of schema attributes for the new user pool. These attributes can be standard or custom * attributes. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateUserPoolRequest withSchema(SchemaAttributeType... schema) { if (this.schema == null) { setSchema(new java.util.ArrayList(schema.length)); } for (SchemaAttributeType ele : schema) { this.schema.add(ele); } return this; } /** *

* An array of schema attributes for the new user pool. These attributes can be standard or custom attributes. *

* * @param schema * An array of schema attributes for the new user pool. These attributes can be standard or custom * attributes. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateUserPoolRequest withSchema(java.util.Collection schema) { setSchema(schema); return this; } /** *

* User pool add-ons. Contains settings for activation of advanced security features. To log user security * information but take no action, set to AUDIT. To configure automatic security responses to risky * traffic to your user pool, set to ENFORCED. *

*

* For more information, see Adding advanced security to a user pool. *

* * @param userPoolAddOns * User pool add-ons. Contains settings for activation of advanced security features. To log user security * information but take no action, set to AUDIT. To configure automatic security responses to * risky traffic to your user pool, set to ENFORCED.

*

* For more information, see Adding advanced security to a user pool. */ public void setUserPoolAddOns(UserPoolAddOnsType userPoolAddOns) { this.userPoolAddOns = userPoolAddOns; } /** *

* User pool add-ons. Contains settings for activation of advanced security features. To log user security * information but take no action, set to AUDIT. To configure automatic security responses to risky * traffic to your user pool, set to ENFORCED. *

*

* For more information, see Adding advanced security to a user pool. *

* * @return User pool add-ons. Contains settings for activation of advanced security features. To log user security * information but take no action, set to AUDIT. To configure automatic security responses to * risky traffic to your user pool, set to ENFORCED.

*

* For more information, see Adding advanced security to a user pool. */ public UserPoolAddOnsType getUserPoolAddOns() { return this.userPoolAddOns; } /** *

* User pool add-ons. Contains settings for activation of advanced security features. To log user security * information but take no action, set to AUDIT. To configure automatic security responses to risky * traffic to your user pool, set to ENFORCED. *

*

* For more information, see Adding advanced security to a user pool. *

* * @param userPoolAddOns * User pool add-ons. Contains settings for activation of advanced security features. To log user security * information but take no action, set to AUDIT. To configure automatic security responses to * risky traffic to your user pool, set to ENFORCED.

*

* For more information, see Adding advanced security to a user pool. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateUserPoolRequest withUserPoolAddOns(UserPoolAddOnsType userPoolAddOns) { setUserPoolAddOns(userPoolAddOns); return this; } /** *

* Case sensitivity on the username input for the selected sign-in option. When case sensitivity is set to * False (case insensitive), users can sign in with any combination of capital and lowercase letters. * For example, username, USERNAME, or UserName, or for email, * [email protected] or [email protected]. For most use cases, set case sensitivity to * False (case insensitive) as a best practice. When usernames and email addresses are case * insensitive, Amazon Cognito treats any variation in case as the same user, and prevents a case variation from * being assigned to the same attribute for a different user. *

*

* This configuration is immutable after you set it. For more information, see UsernameConfigurationType. *

* * @param usernameConfiguration * Case sensitivity on the username input for the selected sign-in option. When case sensitivity is set to * False (case insensitive), users can sign in with any combination of capital and lowercase * letters. For example, username, USERNAME, or UserName, or for * email, [email protected] or [email protected]. For most use cases, set case * sensitivity to False (case insensitive) as a best practice. When usernames and email * addresses are case insensitive, Amazon Cognito treats any variation in case as the same user, and prevents * a case variation from being assigned to the same attribute for a different user.

*

* This configuration is immutable after you set it. For more information, see UsernameConfigurationType. */ public void setUsernameConfiguration(UsernameConfigurationType usernameConfiguration) { this.usernameConfiguration = usernameConfiguration; } /** *

* Case sensitivity on the username input for the selected sign-in option. When case sensitivity is set to * False (case insensitive), users can sign in with any combination of capital and lowercase letters. * For example, username, USERNAME, or UserName, or for email, * [email protected] or [email protected]. For most use cases, set case sensitivity to * False (case insensitive) as a best practice. When usernames and email addresses are case * insensitive, Amazon Cognito treats any variation in case as the same user, and prevents a case variation from * being assigned to the same attribute for a different user. *

*

* This configuration is immutable after you set it. For more information, see UsernameConfigurationType. *

* * @return Case sensitivity on the username input for the selected sign-in option. When case sensitivity is set to * False (case insensitive), users can sign in with any combination of capital and lowercase * letters. For example, username, USERNAME, or UserName, or for * email, [email protected] or [email protected]. For most use cases, set case * sensitivity to False (case insensitive) as a best practice. When usernames and email * addresses are case insensitive, Amazon Cognito treats any variation in case as the same user, and * prevents a case variation from being assigned to the same attribute for a different user.

*

* This configuration is immutable after you set it. For more information, see UsernameConfigurationType. */ public UsernameConfigurationType getUsernameConfiguration() { return this.usernameConfiguration; } /** *

* Case sensitivity on the username input for the selected sign-in option. When case sensitivity is set to * False (case insensitive), users can sign in with any combination of capital and lowercase letters. * For example, username, USERNAME, or UserName, or for email, * [email protected] or [email protected]. For most use cases, set case sensitivity to * False (case insensitive) as a best practice. When usernames and email addresses are case * insensitive, Amazon Cognito treats any variation in case as the same user, and prevents a case variation from * being assigned to the same attribute for a different user. *

*

* This configuration is immutable after you set it. For more information, see UsernameConfigurationType. *

* * @param usernameConfiguration * Case sensitivity on the username input for the selected sign-in option. When case sensitivity is set to * False (case insensitive), users can sign in with any combination of capital and lowercase * letters. For example, username, USERNAME, or UserName, or for * email, [email protected] or [email protected]. For most use cases, set case * sensitivity to False (case insensitive) as a best practice. When usernames and email * addresses are case insensitive, Amazon Cognito treats any variation in case as the same user, and prevents * a case variation from being assigned to the same attribute for a different user.

*

* This configuration is immutable after you set it. For more information, see UsernameConfigurationType. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateUserPoolRequest withUsernameConfiguration(UsernameConfigurationType usernameConfiguration) { setUsernameConfiguration(usernameConfiguration); return this; } /** *

* The available verified method a user can use to recover their password when they call ForgotPassword * . You can use this setting to define a preferred method when a user has more than one method available. With this * setting, SMS doesn't qualify for a valid password recovery mechanism if the user also has SMS multi-factor * authentication (MFA) activated. In the absence of this setting, Amazon Cognito uses the legacy behavior to * determine the recovery method where SMS is preferred through email. *

* * @param accountRecoverySetting * The available verified method a user can use to recover their password when they call * ForgotPassword. You can use this setting to define a preferred method when a user has more * than one method available. With this setting, SMS doesn't qualify for a valid password recovery mechanism * if the user also has SMS multi-factor authentication (MFA) activated. In the absence of this setting, * Amazon Cognito uses the legacy behavior to determine the recovery method where SMS is preferred through * email. */ public void setAccountRecoverySetting(AccountRecoverySettingType accountRecoverySetting) { this.accountRecoverySetting = accountRecoverySetting; } /** *

* The available verified method a user can use to recover their password when they call ForgotPassword * . You can use this setting to define a preferred method when a user has more than one method available. With this * setting, SMS doesn't qualify for a valid password recovery mechanism if the user also has SMS multi-factor * authentication (MFA) activated. In the absence of this setting, Amazon Cognito uses the legacy behavior to * determine the recovery method where SMS is preferred through email. *

* * @return The available verified method a user can use to recover their password when they call * ForgotPassword. You can use this setting to define a preferred method when a user has more * than one method available. With this setting, SMS doesn't qualify for a valid password recovery mechanism * if the user also has SMS multi-factor authentication (MFA) activated. In the absence of this setting, * Amazon Cognito uses the legacy behavior to determine the recovery method where SMS is preferred through * email. */ public AccountRecoverySettingType getAccountRecoverySetting() { return this.accountRecoverySetting; } /** *

* The available verified method a user can use to recover their password when they call ForgotPassword * . You can use this setting to define a preferred method when a user has more than one method available. With this * setting, SMS doesn't qualify for a valid password recovery mechanism if the user also has SMS multi-factor * authentication (MFA) activated. In the absence of this setting, Amazon Cognito uses the legacy behavior to * determine the recovery method where SMS is preferred through email. *

* * @param accountRecoverySetting * The available verified method a user can use to recover their password when they call * ForgotPassword. You can use this setting to define a preferred method when a user has more * than one method available. With this setting, SMS doesn't qualify for a valid password recovery mechanism * if the user also has SMS multi-factor authentication (MFA) activated. In the absence of this setting, * Amazon Cognito uses the legacy behavior to determine the recovery method where SMS is preferred through * email. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateUserPoolRequest withAccountRecoverySetting(AccountRecoverySettingType accountRecoverySetting) { setAccountRecoverySetting(accountRecoverySetting); return this; } /** * Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be * redacted from this string using a placeholder value. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getPoolName() != null) sb.append("PoolName: ").append(getPoolName()).append(","); if (getPolicies() != null) sb.append("Policies: ").append(getPolicies()).append(","); if (getDeletionProtection() != null) sb.append("DeletionProtection: ").append(getDeletionProtection()).append(","); if (getLambdaConfig() != null) sb.append("LambdaConfig: ").append(getLambdaConfig()).append(","); if (getAutoVerifiedAttributes() != null) sb.append("AutoVerifiedAttributes: ").append(getAutoVerifiedAttributes()).append(","); if (getAliasAttributes() != null) sb.append("AliasAttributes: ").append(getAliasAttributes()).append(","); if (getUsernameAttributes() != null) sb.append("UsernameAttributes: ").append(getUsernameAttributes()).append(","); if (getSmsVerificationMessage() != null) sb.append("SmsVerificationMessage: ").append(getSmsVerificationMessage()).append(","); if (getEmailVerificationMessage() != null) sb.append("EmailVerificationMessage: ").append(getEmailVerificationMessage()).append(","); if (getEmailVerificationSubject() != null) sb.append("EmailVerificationSubject: ").append(getEmailVerificationSubject()).append(","); if (getVerificationMessageTemplate() != null) sb.append("VerificationMessageTemplate: ").append(getVerificationMessageTemplate()).append(","); if (getSmsAuthenticationMessage() != null) sb.append("SmsAuthenticationMessage: ").append(getSmsAuthenticationMessage()).append(","); if (getMfaConfiguration() != null) sb.append("MfaConfiguration: ").append(getMfaConfiguration()).append(","); if (getUserAttributeUpdateSettings() != null) sb.append("UserAttributeUpdateSettings: ").append(getUserAttributeUpdateSettings()).append(","); if (getDeviceConfiguration() != null) sb.append("DeviceConfiguration: ").append(getDeviceConfiguration()).append(","); if (getEmailConfiguration() != null) sb.append("EmailConfiguration: ").append(getEmailConfiguration()).append(","); if (getSmsConfiguration() != null) sb.append("SmsConfiguration: ").append(getSmsConfiguration()).append(","); if (getUserPoolTags() != null) sb.append("UserPoolTags: ").append(getUserPoolTags()).append(","); if (getAdminCreateUserConfig() != null) sb.append("AdminCreateUserConfig: ").append(getAdminCreateUserConfig()).append(","); if (getSchema() != null) sb.append("Schema: ").append(getSchema()).append(","); if (getUserPoolAddOns() != null) sb.append("UserPoolAddOns: ").append(getUserPoolAddOns()).append(","); if (getUsernameConfiguration() != null) sb.append("UsernameConfiguration: ").append(getUsernameConfiguration()).append(","); if (getAccountRecoverySetting() != null) sb.append("AccountRecoverySetting: ").append(getAccountRecoverySetting()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof CreateUserPoolRequest == false) return false; CreateUserPoolRequest other = (CreateUserPoolRequest) obj; if (other.getPoolName() == null ^ this.getPoolName() == null) return false; if (other.getPoolName() != null && other.getPoolName().equals(this.getPoolName()) == false) return false; if (other.getPolicies() == null ^ this.getPolicies() == null) return false; if (other.getPolicies() != null && other.getPolicies().equals(this.getPolicies()) == false) return false; if (other.getDeletionProtection() == null ^ this.getDeletionProtection() == null) return false; if (other.getDeletionProtection() != null && other.getDeletionProtection().equals(this.getDeletionProtection()) == false) return false; if (other.getLambdaConfig() == null ^ this.getLambdaConfig() == null) return false; if (other.getLambdaConfig() != null && other.getLambdaConfig().equals(this.getLambdaConfig()) == false) return false; if (other.getAutoVerifiedAttributes() == null ^ this.getAutoVerifiedAttributes() == null) return false; if (other.getAutoVerifiedAttributes() != null && other.getAutoVerifiedAttributes().equals(this.getAutoVerifiedAttributes()) == false) return false; if (other.getAliasAttributes() == null ^ this.getAliasAttributes() == null) return false; if (other.getAliasAttributes() != null && other.getAliasAttributes().equals(this.getAliasAttributes()) == false) return false; if (other.getUsernameAttributes() == null ^ this.getUsernameAttributes() == null) return false; if (other.getUsernameAttributes() != null && other.getUsernameAttributes().equals(this.getUsernameAttributes()) == false) return false; if (other.getSmsVerificationMessage() == null ^ this.getSmsVerificationMessage() == null) return false; if (other.getSmsVerificationMessage() != null && other.getSmsVerificationMessage().equals(this.getSmsVerificationMessage()) == false) return false; if (other.getEmailVerificationMessage() == null ^ this.getEmailVerificationMessage() == null) return false; if (other.getEmailVerificationMessage() != null && other.getEmailVerificationMessage().equals(this.getEmailVerificationMessage()) == false) return false; if (other.getEmailVerificationSubject() == null ^ this.getEmailVerificationSubject() == null) return false; if (other.getEmailVerificationSubject() != null && other.getEmailVerificationSubject().equals(this.getEmailVerificationSubject()) == false) return false; if (other.getVerificationMessageTemplate() == null ^ this.getVerificationMessageTemplate() == null) return false; if (other.getVerificationMessageTemplate() != null && other.getVerificationMessageTemplate().equals(this.getVerificationMessageTemplate()) == false) return false; if (other.getSmsAuthenticationMessage() == null ^ this.getSmsAuthenticationMessage() == null) return false; if (other.getSmsAuthenticationMessage() != null && other.getSmsAuthenticationMessage().equals(this.getSmsAuthenticationMessage()) == false) return false; if (other.getMfaConfiguration() == null ^ this.getMfaConfiguration() == null) return false; if (other.getMfaConfiguration() != null && other.getMfaConfiguration().equals(this.getMfaConfiguration()) == false) return false; if (other.getUserAttributeUpdateSettings() == null ^ this.getUserAttributeUpdateSettings() == null) return false; if (other.getUserAttributeUpdateSettings() != null && other.getUserAttributeUpdateSettings().equals(this.getUserAttributeUpdateSettings()) == false) return false; if (other.getDeviceConfiguration() == null ^ this.getDeviceConfiguration() == null) return false; if (other.getDeviceConfiguration() != null && other.getDeviceConfiguration().equals(this.getDeviceConfiguration()) == false) return false; if (other.getEmailConfiguration() == null ^ this.getEmailConfiguration() == null) return false; if (other.getEmailConfiguration() != null && other.getEmailConfiguration().equals(this.getEmailConfiguration()) == false) return false; if (other.getSmsConfiguration() == null ^ this.getSmsConfiguration() == null) return false; if (other.getSmsConfiguration() != null && other.getSmsConfiguration().equals(this.getSmsConfiguration()) == false) return false; if (other.getUserPoolTags() == null ^ this.getUserPoolTags() == null) return false; if (other.getUserPoolTags() != null && other.getUserPoolTags().equals(this.getUserPoolTags()) == false) return false; if (other.getAdminCreateUserConfig() == null ^ this.getAdminCreateUserConfig() == null) return false; if (other.getAdminCreateUserConfig() != null && other.getAdminCreateUserConfig().equals(this.getAdminCreateUserConfig()) == false) return false; if (other.getSchema() == null ^ this.getSchema() == null) return false; if (other.getSchema() != null && other.getSchema().equals(this.getSchema()) == false) return false; if (other.getUserPoolAddOns() == null ^ this.getUserPoolAddOns() == null) return false; if (other.getUserPoolAddOns() != null && other.getUserPoolAddOns().equals(this.getUserPoolAddOns()) == false) return false; if (other.getUsernameConfiguration() == null ^ this.getUsernameConfiguration() == null) return false; if (other.getUsernameConfiguration() != null && other.getUsernameConfiguration().equals(this.getUsernameConfiguration()) == false) return false; if (other.getAccountRecoverySetting() == null ^ this.getAccountRecoverySetting() == null) return false; if (other.getAccountRecoverySetting() != null && other.getAccountRecoverySetting().equals(this.getAccountRecoverySetting()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getPoolName() == null) ? 0 : getPoolName().hashCode()); hashCode = prime * hashCode + ((getPolicies() == null) ? 0 : getPolicies().hashCode()); hashCode = prime * hashCode + ((getDeletionProtection() == null) ? 0 : getDeletionProtection().hashCode()); hashCode = prime * hashCode + ((getLambdaConfig() == null) ? 0 : getLambdaConfig().hashCode()); hashCode = prime * hashCode + ((getAutoVerifiedAttributes() == null) ? 0 : getAutoVerifiedAttributes().hashCode()); hashCode = prime * hashCode + ((getAliasAttributes() == null) ? 0 : getAliasAttributes().hashCode()); hashCode = prime * hashCode + ((getUsernameAttributes() == null) ? 0 : getUsernameAttributes().hashCode()); hashCode = prime * hashCode + ((getSmsVerificationMessage() == null) ? 0 : getSmsVerificationMessage().hashCode()); hashCode = prime * hashCode + ((getEmailVerificationMessage() == null) ? 0 : getEmailVerificationMessage().hashCode()); hashCode = prime * hashCode + ((getEmailVerificationSubject() == null) ? 0 : getEmailVerificationSubject().hashCode()); hashCode = prime * hashCode + ((getVerificationMessageTemplate() == null) ? 0 : getVerificationMessageTemplate().hashCode()); hashCode = prime * hashCode + ((getSmsAuthenticationMessage() == null) ? 0 : getSmsAuthenticationMessage().hashCode()); hashCode = prime * hashCode + ((getMfaConfiguration() == null) ? 0 : getMfaConfiguration().hashCode()); hashCode = prime * hashCode + ((getUserAttributeUpdateSettings() == null) ? 0 : getUserAttributeUpdateSettings().hashCode()); hashCode = prime * hashCode + ((getDeviceConfiguration() == null) ? 0 : getDeviceConfiguration().hashCode()); hashCode = prime * hashCode + ((getEmailConfiguration() == null) ? 0 : getEmailConfiguration().hashCode()); hashCode = prime * hashCode + ((getSmsConfiguration() == null) ? 0 : getSmsConfiguration().hashCode()); hashCode = prime * hashCode + ((getUserPoolTags() == null) ? 0 : getUserPoolTags().hashCode()); hashCode = prime * hashCode + ((getAdminCreateUserConfig() == null) ? 0 : getAdminCreateUserConfig().hashCode()); hashCode = prime * hashCode + ((getSchema() == null) ? 0 : getSchema().hashCode()); hashCode = prime * hashCode + ((getUserPoolAddOns() == null) ? 0 : getUserPoolAddOns().hashCode()); hashCode = prime * hashCode + ((getUsernameConfiguration() == null) ? 0 : getUsernameConfiguration().hashCode()); hashCode = prime * hashCode + ((getAccountRecoverySetting() == null) ? 0 : getAccountRecoverySetting().hashCode()); return hashCode; } @Override public CreateUserPoolRequest clone() { return (CreateUserPoolRequest) super.clone(); } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy