/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace VerifiedPermissions { namespace Model { /** *

A structure that contains configuration of the identity source.

This * data type is used as a response parameter for the CreateIdentitySource * operation.

See Also:

AWS * API Reference

*/ class IdentitySourceItemDetails { public: AWS_VERIFIEDPERMISSIONS_API IdentitySourceItemDetails(); AWS_VERIFIEDPERMISSIONS_API IdentitySourceItemDetails(Aws::Utils::Json::JsonView jsonValue); AWS_VERIFIEDPERMISSIONS_API IdentitySourceItemDetails& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_VERIFIEDPERMISSIONS_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The application client IDs associated with the specified Amazon Cognito user * pool that are enabled for this identity source.

*/ inline const Aws::Vector& GetClientIds() const{ return m_clientIds; } /** *

The application client IDs associated with the specified Amazon Cognito user * pool that are enabled for this identity source.

*/ inline bool ClientIdsHasBeenSet() const { return m_clientIdsHasBeenSet; } /** *

The application client IDs associated with the specified Amazon Cognito user * pool that are enabled for this identity source.

*/ inline void SetClientIds(const Aws::Vector& value) { m_clientIdsHasBeenSet = true; m_clientIds = value; } /** *

The application client IDs associated with the specified Amazon Cognito user * pool that are enabled for this identity source.

*/ inline void SetClientIds(Aws::Vector&& value) { m_clientIdsHasBeenSet = true; m_clientIds = std::move(value); } /** *

The application client IDs associated with the specified Amazon Cognito user * pool that are enabled for this identity source.

*/ inline IdentitySourceItemDetails& WithClientIds(const Aws::Vector& value) { SetClientIds(value); return *this;} /** *

The application client IDs associated with the specified Amazon Cognito user * pool that are enabled for this identity source.

*/ inline IdentitySourceItemDetails& WithClientIds(Aws::Vector&& value) { SetClientIds(std::move(value)); return *this;} /** *

The application client IDs associated with the specified Amazon Cognito user * pool that are enabled for this identity source.

*/ inline IdentitySourceItemDetails& AddClientIds(const Aws::String& value) { m_clientIdsHasBeenSet = true; m_clientIds.push_back(value); return *this; } /** *

The application client IDs associated with the specified Amazon Cognito user * pool that are enabled for this identity source.

*/ inline IdentitySourceItemDetails& AddClientIds(Aws::String&& value) { m_clientIdsHasBeenSet = true; m_clientIds.push_back(std::move(value)); return *this; } /** *

The application client IDs associated with the specified Amazon Cognito user * pool that are enabled for this identity source.

*/ inline IdentitySourceItemDetails& AddClientIds(const char* value) { m_clientIdsHasBeenSet = true; m_clientIds.push_back(value); return *this; } /** *

The Amazon Cognito user pool whose identities are accessible to this Verified * Permissions policy store.

*/ inline const Aws::String& GetUserPoolArn() const{ return m_userPoolArn; } /** *

The Amazon Cognito user pool whose identities are accessible to this Verified * Permissions policy store.

*/ inline bool UserPoolArnHasBeenSet() const { return m_userPoolArnHasBeenSet; } /** *

The Amazon Cognito user pool whose identities are accessible to this Verified * Permissions policy store.

*/ inline void SetUserPoolArn(const Aws::String& value) { m_userPoolArnHasBeenSet = true; m_userPoolArn = value; } /** *

The Amazon Cognito user pool whose identities are accessible to this Verified * Permissions policy store.

*/ inline void SetUserPoolArn(Aws::String&& value) { m_userPoolArnHasBeenSet = true; m_userPoolArn = std::move(value); } /** *

The Amazon Cognito user pool whose identities are accessible to this Verified * Permissions policy store.

*/ inline void SetUserPoolArn(const char* value) { m_userPoolArnHasBeenSet = true; m_userPoolArn.assign(value); } /** *

The Amazon Cognito user pool whose identities are accessible to this Verified * Permissions policy store.

*/ inline IdentitySourceItemDetails& WithUserPoolArn(const Aws::String& value) { SetUserPoolArn(value); return *this;} /** *

The Amazon Cognito user pool whose identities are accessible to this Verified * Permissions policy store.

*/ inline IdentitySourceItemDetails& WithUserPoolArn(Aws::String&& value) { SetUserPoolArn(std::move(value)); return *this;} /** *

The Amazon Cognito user pool whose identities are accessible to this Verified * Permissions policy store.

*/ inline IdentitySourceItemDetails& WithUserPoolArn(const char* value) { SetUserPoolArn(value); return *this;} /** *

The well-known URL that points to this user pool's OIDC discovery endpoint. * This is a URL string in the following format. This URL replaces the placeholders * for both the Amazon Web Services Region and the user pool identifier with those * appropriate for this user pool.

* https://cognito-idp.<region>.amazonaws.com/<user-pool-id>/.well-known/openid-configuration *

*/ inline const Aws::String& GetDiscoveryUrl() const{ return m_discoveryUrl; } /** *

The well-known URL that points to this user pool's OIDC discovery endpoint. * This is a URL string in the following format. This URL replaces the placeholders * for both the Amazon Web Services Region and the user pool identifier with those * appropriate for this user pool.

* https://cognito-idp.<region>.amazonaws.com/<user-pool-id>/.well-known/openid-configuration *

*/ inline bool DiscoveryUrlHasBeenSet() const { return m_discoveryUrlHasBeenSet; } /** *

The well-known URL that points to this user pool's OIDC discovery endpoint. * This is a URL string in the following format. This URL replaces the placeholders * for both the Amazon Web Services Region and the user pool identifier with those * appropriate for this user pool.

* https://cognito-idp.<region>.amazonaws.com/<user-pool-id>/.well-known/openid-configuration *

*/ inline void SetDiscoveryUrl(const Aws::String& value) { m_discoveryUrlHasBeenSet = true; m_discoveryUrl = value; } /** *

The well-known URL that points to this user pool's OIDC discovery endpoint. * This is a URL string in the following format. This URL replaces the placeholders * for both the Amazon Web Services Region and the user pool identifier with those * appropriate for this user pool.

* https://cognito-idp.<region>.amazonaws.com/<user-pool-id>/.well-known/openid-configuration *

*/ inline void SetDiscoveryUrl(Aws::String&& value) { m_discoveryUrlHasBeenSet = true; m_discoveryUrl = std::move(value); } /** *

The well-known URL that points to this user pool's OIDC discovery endpoint. * This is a URL string in the following format. This URL replaces the placeholders * for both the Amazon Web Services Region and the user pool identifier with those * appropriate for this user pool.

* https://cognito-idp.<region>.amazonaws.com/<user-pool-id>/.well-known/openid-configuration *

*/ inline void SetDiscoveryUrl(const char* value) { m_discoveryUrlHasBeenSet = true; m_discoveryUrl.assign(value); } /** *

The well-known URL that points to this user pool's OIDC discovery endpoint. * This is a URL string in the following format. This URL replaces the placeholders * for both the Amazon Web Services Region and the user pool identifier with those * appropriate for this user pool.

* https://cognito-idp.<region>.amazonaws.com/<user-pool-id>/.well-known/openid-configuration *

*/ inline IdentitySourceItemDetails& WithDiscoveryUrl(const Aws::String& value) { SetDiscoveryUrl(value); return *this;} /** *

The well-known URL that points to this user pool's OIDC discovery endpoint. * This is a URL string in the following format. This URL replaces the placeholders * for both the Amazon Web Services Region and the user pool identifier with those * appropriate for this user pool.

* https://cognito-idp.<region>.amazonaws.com/<user-pool-id>/.well-known/openid-configuration *

*/ inline IdentitySourceItemDetails& WithDiscoveryUrl(Aws::String&& value) { SetDiscoveryUrl(std::move(value)); return *this;} /** *

The well-known URL that points to this user pool's OIDC discovery endpoint. * This is a URL string in the following format. This URL replaces the placeholders * for both the Amazon Web Services Region and the user pool identifier with those * appropriate for this user pool.

* https://cognito-idp.<region>.amazonaws.com/<user-pool-id>/.well-known/openid-configuration *

*/ inline IdentitySourceItemDetails& WithDiscoveryUrl(const char* value) { SetDiscoveryUrl(value); return *this;} /** *

A string that identifies the type of OIDC service represented by this * identity source.

At this time, the only valid value is * cognito.

*/ inline const OpenIdIssuer& GetOpenIdIssuer() const{ return m_openIdIssuer; } /** *

A string that identifies the type of OIDC service represented by this * identity source.

At this time, the only valid value is * cognito.

*/ inline bool OpenIdIssuerHasBeenSet() const { return m_openIdIssuerHasBeenSet; } /** *

A string that identifies the type of OIDC service represented by this * identity source.

At this time, the only valid value is * cognito.

*/ inline void SetOpenIdIssuer(const OpenIdIssuer& value) { m_openIdIssuerHasBeenSet = true; m_openIdIssuer = value; } /** *

A string that identifies the type of OIDC service represented by this * identity source.

At this time, the only valid value is * cognito.

*/ inline void SetOpenIdIssuer(OpenIdIssuer&& value) { m_openIdIssuerHasBeenSet = true; m_openIdIssuer = std::move(value); } /** *

A string that identifies the type of OIDC service represented by this * identity source.

At this time, the only valid value is * cognito.

*/ inline IdentitySourceItemDetails& WithOpenIdIssuer(const OpenIdIssuer& value) { SetOpenIdIssuer(value); return *this;} /** *

A string that identifies the type of OIDC service represented by this * identity source.

At this time, the only valid value is * cognito.

*/ inline IdentitySourceItemDetails& WithOpenIdIssuer(OpenIdIssuer&& value) { SetOpenIdIssuer(std::move(value)); return *this;} private: Aws::Vector m_clientIds; bool m_clientIdsHasBeenSet = false; Aws::String m_userPoolArn; bool m_userPoolArnHasBeenSet = false; Aws::String m_discoveryUrl; bool m_discoveryUrlHasBeenSet = false; OpenIdIssuer m_openIdIssuer; bool m_openIdIssuerHasBeenSet = false; }; } // namespace Model } // namespace VerifiedPermissions } // namespace Aws