/** * 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 CognitoIdentityProvider { namespace Model { /** *

A container for IdP details.

See Also:

AWS * API Reference

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

The IdP name.

*/ inline const Aws::String& GetProviderName() const{ return m_providerName; } inline bool ProviderNameHasBeenSet() const { return m_providerNameHasBeenSet; } inline void SetProviderName(const Aws::String& value) { m_providerNameHasBeenSet = true; m_providerName = value; } inline void SetProviderName(Aws::String&& value) { m_providerNameHasBeenSet = true; m_providerName = std::move(value); } inline void SetProviderName(const char* value) { m_providerNameHasBeenSet = true; m_providerName.assign(value); } inline ProviderDescription& WithProviderName(const Aws::String& value) { SetProviderName(value); return *this;} inline ProviderDescription& WithProviderName(Aws::String&& value) { SetProviderName(std::move(value)); return *this;} inline ProviderDescription& WithProviderName(const char* value) { SetProviderName(value); return *this;} ///@} ///@{ /** *

The IdP type.

*/ inline const IdentityProviderTypeType& GetProviderType() const{ return m_providerType; } inline bool ProviderTypeHasBeenSet() const { return m_providerTypeHasBeenSet; } inline void SetProviderType(const IdentityProviderTypeType& value) { m_providerTypeHasBeenSet = true; m_providerType = value; } inline void SetProviderType(IdentityProviderTypeType&& value) { m_providerTypeHasBeenSet = true; m_providerType = std::move(value); } inline ProviderDescription& WithProviderType(const IdentityProviderTypeType& value) { SetProviderType(value); return *this;} inline ProviderDescription& WithProviderType(IdentityProviderTypeType&& value) { SetProviderType(std::move(value)); return *this;} ///@} ///@{ /** *

The date the provider was last modified.

*/ inline const Aws::Utils::DateTime& GetLastModifiedDate() const{ return m_lastModifiedDate; } inline bool LastModifiedDateHasBeenSet() const { return m_lastModifiedDateHasBeenSet; } inline void SetLastModifiedDate(const Aws::Utils::DateTime& value) { m_lastModifiedDateHasBeenSet = true; m_lastModifiedDate = value; } inline void SetLastModifiedDate(Aws::Utils::DateTime&& value) { m_lastModifiedDateHasBeenSet = true; m_lastModifiedDate = std::move(value); } inline ProviderDescription& WithLastModifiedDate(const Aws::Utils::DateTime& value) { SetLastModifiedDate(value); return *this;} inline ProviderDescription& WithLastModifiedDate(Aws::Utils::DateTime&& value) { SetLastModifiedDate(std::move(value)); return *this;} ///@} ///@{ /** *

The date and time when the item was created. Amazon Cognito returns this * timestamp in UNIX epoch time format. Your SDK might render the output in a * human-readable format like ISO 8601 or a Java Date object.

*/ inline const Aws::Utils::DateTime& GetCreationDate() const{ return m_creationDate; } inline bool CreationDateHasBeenSet() const { return m_creationDateHasBeenSet; } inline void SetCreationDate(const Aws::Utils::DateTime& value) { m_creationDateHasBeenSet = true; m_creationDate = value; } inline void SetCreationDate(Aws::Utils::DateTime&& value) { m_creationDateHasBeenSet = true; m_creationDate = std::move(value); } inline ProviderDescription& WithCreationDate(const Aws::Utils::DateTime& value) { SetCreationDate(value); return *this;} inline ProviderDescription& WithCreationDate(Aws::Utils::DateTime&& value) { SetCreationDate(std::move(value)); return *this;} ///@} private: Aws::String m_providerName; bool m_providerNameHasBeenSet = false; IdentityProviderTypeType m_providerType; bool m_providerTypeHasBeenSet = false; Aws::Utils::DateTime m_lastModifiedDate; bool m_lastModifiedDateHasBeenSet = false; Aws::Utils::DateTime m_creationDate; bool m_creationDateHasBeenSet = false; }; } // namespace Model } // namespace CognitoIdentityProvider } // namespace Aws