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

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

/*
 * Copyright 2015-2020 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;

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

    /**
     * 

* The user pool ID. *

*/ private String userPoolId; /** *

* The identity provider name. *

*/ private String providerName; /** *

* The identity provider type. *

*/ private String providerType; /** *

* The identity provider details. The following list describes the provider detail keys for each identity provider * type. *

*
    *
  • *

    * For Google, Facebook and Login with Amazon: *

    *
      *
    • *

      * client_id *

      *
    • *
    • *

      * client_secret *

      *
    • *
    • *

      * authorize_scopes *

      *
    • *
    *
  • *
  • *

    * For Sign in with Apple: *

    *
      *
    • *

      * client_id *

      *
    • *
    • *

      * team_id *

      *
    • *
    • *

      * key_id *

      *
    • *
    • *

      * private_key *

      *
    • *
    • *

      * authorize_scopes *

      *
    • *
    *
  • *
  • *

    * For OIDC providers: *

    *
      *
    • *

      * client_id *

      *
    • *
    • *

      * client_secret *

      *
    • *
    • *

      * attributes_request_method *

      *
    • *
    • *

      * oidc_issuer *

      *
    • *
    • *

      * authorize_scopes *

      *
    • *
    • *

      * authorize_url if not available from discovery URL specified by oidc_issuer key *

      *
    • *
    • *

      * token_url if not available from discovery URL specified by oidc_issuer key *

      *
    • *
    • *

      * attributes_url if not available from discovery URL specified by oidc_issuer key *

      *
    • *
    • *

      * jwks_uri if not available from discovery URL specified by oidc_issuer key *

      *
    • *
    • *

      * authorize_scopes *

      *
    • *
    *
  • *
  • *

    * For SAML providers: *

    *
      *
    • *

      * MetadataFile OR MetadataURL *

      *
    • *
    • *

      * IDPSignout optional *

      *
    • *
    *
  • *
*/ private java.util.Map providerDetails; /** *

* A mapping of identity provider attributes to standard and custom user pool attributes. *

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

* A list of identity provider identifiers. *

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

* The user pool ID. *

* * @param userPoolId * The user pool ID. */ public void setUserPoolId(String userPoolId) { this.userPoolId = userPoolId; } /** *

* The user pool ID. *

* * @return The user pool ID. */ public String getUserPoolId() { return this.userPoolId; } /** *

* The user pool ID. *

* * @param userPoolId * The user pool ID. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateIdentityProviderRequest withUserPoolId(String userPoolId) { setUserPoolId(userPoolId); return this; } /** *

* The identity provider name. *

* * @param providerName * The identity provider name. */ public void setProviderName(String providerName) { this.providerName = providerName; } /** *

* The identity provider name. *

* * @return The identity provider name. */ public String getProviderName() { return this.providerName; } /** *

* The identity provider name. *

* * @param providerName * The identity provider name. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateIdentityProviderRequest withProviderName(String providerName) { setProviderName(providerName); return this; } /** *

* The identity provider type. *

* * @param providerType * The identity provider type. * @see IdentityProviderTypeType */ public void setProviderType(String providerType) { this.providerType = providerType; } /** *

* The identity provider type. *

* * @return The identity provider type. * @see IdentityProviderTypeType */ public String getProviderType() { return this.providerType; } /** *

* The identity provider type. *

* * @param providerType * The identity provider type. * @return Returns a reference to this object so that method calls can be chained together. * @see IdentityProviderTypeType */ public CreateIdentityProviderRequest withProviderType(String providerType) { setProviderType(providerType); return this; } /** *

* The identity provider type. *

* * @param providerType * The identity provider type. * @see IdentityProviderTypeType */ public void setProviderType(IdentityProviderTypeType providerType) { withProviderType(providerType); } /** *

* The identity provider type. *

* * @param providerType * The identity provider type. * @return Returns a reference to this object so that method calls can be chained together. * @see IdentityProviderTypeType */ public CreateIdentityProviderRequest withProviderType(IdentityProviderTypeType providerType) { this.providerType = providerType.toString(); return this; } /** *

* The identity provider details. The following list describes the provider detail keys for each identity provider * type. *

*
    *
  • *

    * For Google, Facebook and Login with Amazon: *

    *
      *
    • *

      * client_id *

      *
    • *
    • *

      * client_secret *

      *
    • *
    • *

      * authorize_scopes *

      *
    • *
    *
  • *
  • *

    * For Sign in with Apple: *

    *
      *
    • *

      * client_id *

      *
    • *
    • *

      * team_id *

      *
    • *
    • *

      * key_id *

      *
    • *
    • *

      * private_key *

      *
    • *
    • *

      * authorize_scopes *

      *
    • *
    *
  • *
  • *

    * For OIDC providers: *

    *
      *
    • *

      * client_id *

      *
    • *
    • *

      * client_secret *

      *
    • *
    • *

      * attributes_request_method *

      *
    • *
    • *

      * oidc_issuer *

      *
    • *
    • *

      * authorize_scopes *

      *
    • *
    • *

      * authorize_url if not available from discovery URL specified by oidc_issuer key *

      *
    • *
    • *

      * token_url if not available from discovery URL specified by oidc_issuer key *

      *
    • *
    • *

      * attributes_url if not available from discovery URL specified by oidc_issuer key *

      *
    • *
    • *

      * jwks_uri if not available from discovery URL specified by oidc_issuer key *

      *
    • *
    • *

      * authorize_scopes *

      *
    • *
    *
  • *
  • *

    * For SAML providers: *

    *
      *
    • *

      * MetadataFile OR MetadataURL *

      *
    • *
    • *

      * IDPSignout optional *

      *
    • *
    *
  • *
* * @return The identity provider details. The following list describes the provider detail keys for each identity * provider type.

*
    *
  • *

    * For Google, Facebook and Login with Amazon: *

    *
      *
    • *

      * client_id *

      *
    • *
    • *

      * client_secret *

      *
    • *
    • *

      * authorize_scopes *

      *
    • *
    *
  • *
  • *

    * For Sign in with Apple: *

    *
      *
    • *

      * client_id *

      *
    • *
    • *

      * team_id *

      *
    • *
    • *

      * key_id *

      *
    • *
    • *

      * private_key *

      *
    • *
    • *

      * authorize_scopes *

      *
    • *
    *
  • *
  • *

    * For OIDC providers: *

    *
      *
    • *

      * client_id *

      *
    • *
    • *

      * client_secret *

      *
    • *
    • *

      * attributes_request_method *

      *
    • *
    • *

      * oidc_issuer *

      *
    • *
    • *

      * authorize_scopes *

      *
    • *
    • *

      * authorize_url if not available from discovery URL specified by oidc_issuer key *

      *
    • *
    • *

      * token_url if not available from discovery URL specified by oidc_issuer key *

      *
    • *
    • *

      * attributes_url if not available from discovery URL specified by oidc_issuer key *

      *
    • *
    • *

      * jwks_uri if not available from discovery URL specified by oidc_issuer key *

      *
    • *
    • *

      * authorize_scopes *

      *
    • *
    *
  • *
  • *

    * For SAML providers: *

    *
      *
    • *

      * MetadataFile OR MetadataURL *

      *
    • *
    • *

      * IDPSignout optional *

      *
    • *
    *
  • */ public java.util.Map getProviderDetails() { return providerDetails; } /** *

    * The identity provider details. The following list describes the provider detail keys for each identity provider * type. *

    *
      *
    • *

      * For Google, Facebook and Login with Amazon: *

      *
        *
      • *

        * client_id *

        *
      • *
      • *

        * client_secret *

        *
      • *
      • *

        * authorize_scopes *

        *
      • *
      *
    • *
    • *

      * For Sign in with Apple: *

      *
        *
      • *

        * client_id *

        *
      • *
      • *

        * team_id *

        *
      • *
      • *

        * key_id *

        *
      • *
      • *

        * private_key *

        *
      • *
      • *

        * authorize_scopes *

        *
      • *
      *
    • *
    • *

      * For OIDC providers: *

      *
        *
      • *

        * client_id *

        *
      • *
      • *

        * client_secret *

        *
      • *
      • *

        * attributes_request_method *

        *
      • *
      • *

        * oidc_issuer *

        *
      • *
      • *

        * authorize_scopes *

        *
      • *
      • *

        * authorize_url if not available from discovery URL specified by oidc_issuer key *

        *
      • *
      • *

        * token_url if not available from discovery URL specified by oidc_issuer key *

        *
      • *
      • *

        * attributes_url if not available from discovery URL specified by oidc_issuer key *

        *
      • *
      • *

        * jwks_uri if not available from discovery URL specified by oidc_issuer key *

        *
      • *
      • *

        * authorize_scopes *

        *
      • *
      *
    • *
    • *

      * For SAML providers: *

      *
        *
      • *

        * MetadataFile OR MetadataURL *

        *
      • *
      • *

        * IDPSignout optional *

        *
      • *
      *
    • *
    * * @param providerDetails * The identity provider details. The following list describes the provider detail keys for each identity * provider type.

    *
      *
    • *

      * For Google, Facebook and Login with Amazon: *

      *
        *
      • *

        * client_id *

        *
      • *
      • *

        * client_secret *

        *
      • *
      • *

        * authorize_scopes *

        *
      • *
      *
    • *
    • *

      * For Sign in with Apple: *

      *
        *
      • *

        * client_id *

        *
      • *
      • *

        * team_id *

        *
      • *
      • *

        * key_id *

        *
      • *
      • *

        * private_key *

        *
      • *
      • *

        * authorize_scopes *

        *
      • *
      *
    • *
    • *

      * For OIDC providers: *

      *
        *
      • *

        * client_id *

        *
      • *
      • *

        * client_secret *

        *
      • *
      • *

        * attributes_request_method *

        *
      • *
      • *

        * oidc_issuer *

        *
      • *
      • *

        * authorize_scopes *

        *
      • *
      • *

        * authorize_url if not available from discovery URL specified by oidc_issuer key *

        *
      • *
      • *

        * token_url if not available from discovery URL specified by oidc_issuer key *

        *
      • *
      • *

        * attributes_url if not available from discovery URL specified by oidc_issuer key *

        *
      • *
      • *

        * jwks_uri if not available from discovery URL specified by oidc_issuer key *

        *
      • *
      • *

        * authorize_scopes *

        *
      • *
      *
    • *
    • *

      * For SAML providers: *

      *
        *
      • *

        * MetadataFile OR MetadataURL *

        *
      • *
      • *

        * IDPSignout optional *

        *
      • *
      *
    • */ public void setProviderDetails(java.util.Map providerDetails) { this.providerDetails = providerDetails; } /** *

      * The identity provider details. The following list describes the provider detail keys for each identity provider * type. *

      *
        *
      • *

        * For Google, Facebook and Login with Amazon: *

        *
          *
        • *

          * client_id *

          *
        • *
        • *

          * client_secret *

          *
        • *
        • *

          * authorize_scopes *

          *
        • *
        *
      • *
      • *

        * For Sign in with Apple: *

        *
          *
        • *

          * client_id *

          *
        • *
        • *

          * team_id *

          *
        • *
        • *

          * key_id *

          *
        • *
        • *

          * private_key *

          *
        • *
        • *

          * authorize_scopes *

          *
        • *
        *
      • *
      • *

        * For OIDC providers: *

        *
          *
        • *

          * client_id *

          *
        • *
        • *

          * client_secret *

          *
        • *
        • *

          * attributes_request_method *

          *
        • *
        • *

          * oidc_issuer *

          *
        • *
        • *

          * authorize_scopes *

          *
        • *
        • *

          * authorize_url if not available from discovery URL specified by oidc_issuer key *

          *
        • *
        • *

          * token_url if not available from discovery URL specified by oidc_issuer key *

          *
        • *
        • *

          * attributes_url if not available from discovery URL specified by oidc_issuer key *

          *
        • *
        • *

          * jwks_uri if not available from discovery URL specified by oidc_issuer key *

          *
        • *
        • *

          * authorize_scopes *

          *
        • *
        *
      • *
      • *

        * For SAML providers: *

        *
          *
        • *

          * MetadataFile OR MetadataURL *

          *
        • *
        • *

          * IDPSignout optional *

          *
        • *
        *
      • *
      * * @param providerDetails * The identity provider details. The following list describes the provider detail keys for each identity * provider type.

      *
        *
      • *

        * For Google, Facebook and Login with Amazon: *

        *
          *
        • *

          * client_id *

          *
        • *
        • *

          * client_secret *

          *
        • *
        • *

          * authorize_scopes *

          *
        • *
        *
      • *
      • *

        * For Sign in with Apple: *

        *
          *
        • *

          * client_id *

          *
        • *
        • *

          * team_id *

          *
        • *
        • *

          * key_id *

          *
        • *
        • *

          * private_key *

          *
        • *
        • *

          * authorize_scopes *

          *
        • *
        *
      • *
      • *

        * For OIDC providers: *

        *
          *
        • *

          * client_id *

          *
        • *
        • *

          * client_secret *

          *
        • *
        • *

          * attributes_request_method *

          *
        • *
        • *

          * oidc_issuer *

          *
        • *
        • *

          * authorize_scopes *

          *
        • *
        • *

          * authorize_url if not available from discovery URL specified by oidc_issuer key *

          *
        • *
        • *

          * token_url if not available from discovery URL specified by oidc_issuer key *

          *
        • *
        • *

          * attributes_url if not available from discovery URL specified by oidc_issuer key *

          *
        • *
        • *

          * jwks_uri if not available from discovery URL specified by oidc_issuer key *

          *
        • *
        • *

          * authorize_scopes *

          *
        • *
        *
      • *
      • *

        * For SAML providers: *

        *
          *
        • *

          * MetadataFile OR MetadataURL *

          *
        • *
        • *

          * IDPSignout optional *

          *
        • *
        *
      • * @return Returns a reference to this object so that method calls can be chained together. */ public CreateIdentityProviderRequest withProviderDetails(java.util.Map providerDetails) { setProviderDetails(providerDetails); return this; } /** * Add a single ProviderDetails entry * * @see CreateIdentityProviderRequest#withProviderDetails * @returns a reference to this object so that method calls can be chained together. */ public CreateIdentityProviderRequest addProviderDetailsEntry(String key, String value) { if (null == this.providerDetails) { this.providerDetails = new java.util.HashMap(); } if (this.providerDetails.containsKey(key)) throw new IllegalArgumentException("Duplicated keys (" + key.toString() + ") are provided."); this.providerDetails.put(key, value); return this; } /** * Removes all the entries added into ProviderDetails. * * @return Returns a reference to this object so that method calls can be chained together. */ public CreateIdentityProviderRequest clearProviderDetailsEntries() { this.providerDetails = null; return this; } /** *

        * A mapping of identity provider attributes to standard and custom user pool attributes. *

        * * @return A mapping of identity provider attributes to standard and custom user pool attributes. */ public java.util.Map getAttributeMapping() { return attributeMapping; } /** *

        * A mapping of identity provider attributes to standard and custom user pool attributes. *

        * * @param attributeMapping * A mapping of identity provider attributes to standard and custom user pool attributes. */ public void setAttributeMapping(java.util.Map attributeMapping) { this.attributeMapping = attributeMapping; } /** *

        * A mapping of identity provider attributes to standard and custom user pool attributes. *

        * * @param attributeMapping * A mapping of identity provider attributes to standard and custom user pool attributes. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateIdentityProviderRequest withAttributeMapping(java.util.Map attributeMapping) { setAttributeMapping(attributeMapping); return this; } /** * Add a single AttributeMapping entry * * @see CreateIdentityProviderRequest#withAttributeMapping * @returns a reference to this object so that method calls can be chained together. */ public CreateIdentityProviderRequest addAttributeMappingEntry(String key, String value) { if (null == this.attributeMapping) { this.attributeMapping = new java.util.HashMap(); } if (this.attributeMapping.containsKey(key)) throw new IllegalArgumentException("Duplicated keys (" + key.toString() + ") are provided."); this.attributeMapping.put(key, value); return this; } /** * Removes all the entries added into AttributeMapping. * * @return Returns a reference to this object so that method calls can be chained together. */ public CreateIdentityProviderRequest clearAttributeMappingEntries() { this.attributeMapping = null; return this; } /** *

        * A list of identity provider identifiers. *

        * * @return A list of identity provider identifiers. */ public java.util.List getIdpIdentifiers() { return idpIdentifiers; } /** *

        * A list of identity provider identifiers. *

        * * @param idpIdentifiers * A list of identity provider identifiers. */ public void setIdpIdentifiers(java.util.Collection idpIdentifiers) { if (idpIdentifiers == null) { this.idpIdentifiers = null; return; } this.idpIdentifiers = new java.util.ArrayList(idpIdentifiers); } /** *

        * A list of identity provider identifiers. *

        *

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

        * * @param idpIdentifiers * A list of identity provider identifiers. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateIdentityProviderRequest withIdpIdentifiers(String... idpIdentifiers) { if (this.idpIdentifiers == null) { setIdpIdentifiers(new java.util.ArrayList(idpIdentifiers.length)); } for (String ele : idpIdentifiers) { this.idpIdentifiers.add(ele); } return this; } /** *

        * A list of identity provider identifiers. *

        * * @param idpIdentifiers * A list of identity provider identifiers. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateIdentityProviderRequest withIdpIdentifiers(java.util.Collection idpIdentifiers) { setIdpIdentifiers(idpIdentifiers); 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 (getUserPoolId() != null) sb.append("UserPoolId: ").append(getUserPoolId()).append(","); if (getProviderName() != null) sb.append("ProviderName: ").append(getProviderName()).append(","); if (getProviderType() != null) sb.append("ProviderType: ").append(getProviderType()).append(","); if (getProviderDetails() != null) sb.append("ProviderDetails: ").append(getProviderDetails()).append(","); if (getAttributeMapping() != null) sb.append("AttributeMapping: ").append(getAttributeMapping()).append(","); if (getIdpIdentifiers() != null) sb.append("IdpIdentifiers: ").append(getIdpIdentifiers()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof CreateIdentityProviderRequest == false) return false; CreateIdentityProviderRequest other = (CreateIdentityProviderRequest) obj; if (other.getUserPoolId() == null ^ this.getUserPoolId() == null) return false; if (other.getUserPoolId() != null && other.getUserPoolId().equals(this.getUserPoolId()) == false) return false; if (other.getProviderName() == null ^ this.getProviderName() == null) return false; if (other.getProviderName() != null && other.getProviderName().equals(this.getProviderName()) == false) return false; if (other.getProviderType() == null ^ this.getProviderType() == null) return false; if (other.getProviderType() != null && other.getProviderType().equals(this.getProviderType()) == false) return false; if (other.getProviderDetails() == null ^ this.getProviderDetails() == null) return false; if (other.getProviderDetails() != null && other.getProviderDetails().equals(this.getProviderDetails()) == false) return false; if (other.getAttributeMapping() == null ^ this.getAttributeMapping() == null) return false; if (other.getAttributeMapping() != null && other.getAttributeMapping().equals(this.getAttributeMapping()) == false) return false; if (other.getIdpIdentifiers() == null ^ this.getIdpIdentifiers() == null) return false; if (other.getIdpIdentifiers() != null && other.getIdpIdentifiers().equals(this.getIdpIdentifiers()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getUserPoolId() == null) ? 0 : getUserPoolId().hashCode()); hashCode = prime * hashCode + ((getProviderName() == null) ? 0 : getProviderName().hashCode()); hashCode = prime * hashCode + ((getProviderType() == null) ? 0 : getProviderType().hashCode()); hashCode = prime * hashCode + ((getProviderDetails() == null) ? 0 : getProviderDetails().hashCode()); hashCode = prime * hashCode + ((getAttributeMapping() == null) ? 0 : getAttributeMapping().hashCode()); hashCode = prime * hashCode + ((getIdpIdentifiers() == null) ? 0 : getIdpIdentifiers().hashCode()); return hashCode; } @Override public CreateIdentityProviderRequest clone() { return (CreateIdentityProviderRequest) super.clone(); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy