/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include
#include
#include
#include
#include
#include
namespace Aws
{
template
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace CognitoIdentityProvider
{
namespace Model
{
/**
* Represents the response from the server from the request to get information
* about the user.
See Also:
AWS
* API Reference
*/
class GetUserResult
{
public:
AWS_COGNITOIDENTITYPROVIDER_API GetUserResult();
AWS_COGNITOIDENTITYPROVIDER_API GetUserResult(const Aws::AmazonWebServiceResult& result);
AWS_COGNITOIDENTITYPROVIDER_API GetUserResult& operator=(const Aws::AmazonWebServiceResult& result);
///@{
/**
* The username of the user that you requested.
*/
inline const Aws::String& GetUsername() const{ return m_username; }
inline void SetUsername(const Aws::String& value) { m_username = value; }
inline void SetUsername(Aws::String&& value) { m_username = std::move(value); }
inline void SetUsername(const char* value) { m_username.assign(value); }
inline GetUserResult& WithUsername(const Aws::String& value) { SetUsername(value); return *this;}
inline GetUserResult& WithUsername(Aws::String&& value) { SetUsername(std::move(value)); return *this;}
inline GetUserResult& WithUsername(const char* value) { SetUsername(value); return *this;}
///@}
///@{
/**
* An array of name-value pairs representing user attributes.
For custom
* attributes, you must prepend the custom: prefix to the attribute
* name.
*/
inline const Aws::Vector& GetUserAttributes() const{ return m_userAttributes; }
inline void SetUserAttributes(const Aws::Vector& value) { m_userAttributes = value; }
inline void SetUserAttributes(Aws::Vector&& value) { m_userAttributes = std::move(value); }
inline GetUserResult& WithUserAttributes(const Aws::Vector& value) { SetUserAttributes(value); return *this;}
inline GetUserResult& WithUserAttributes(Aws::Vector&& value) { SetUserAttributes(std::move(value)); return *this;}
inline GetUserResult& AddUserAttributes(const AttributeType& value) { m_userAttributes.push_back(value); return *this; }
inline GetUserResult& AddUserAttributes(AttributeType&& value) { m_userAttributes.push_back(std::move(value)); return *this; }
///@}
///@{
/**
* This response parameter is no longer supported. It provides
* information only about SMS MFA configurations. It doesn't provide information
* about time-based one-time password (TOTP) software token MFA configurations. To
* look up information about either type of MFA configuration, use
* UserMFASettingList instead.
*/
inline const Aws::Vector& GetMFAOptions() const{ return m_mFAOptions; }
inline void SetMFAOptions(const Aws::Vector& value) { m_mFAOptions = value; }
inline void SetMFAOptions(Aws::Vector&& value) { m_mFAOptions = std::move(value); }
inline GetUserResult& WithMFAOptions(const Aws::Vector& value) { SetMFAOptions(value); return *this;}
inline GetUserResult& WithMFAOptions(Aws::Vector&& value) { SetMFAOptions(std::move(value)); return *this;}
inline GetUserResult& AddMFAOptions(const MFAOptionType& value) { m_mFAOptions.push_back(value); return *this; }
inline GetUserResult& AddMFAOptions(MFAOptionType&& value) { m_mFAOptions.push_back(std::move(value)); return *this; }
///@}
///@{
/**
* The user's preferred MFA setting.
*/
inline const Aws::String& GetPreferredMfaSetting() const{ return m_preferredMfaSetting; }
inline void SetPreferredMfaSetting(const Aws::String& value) { m_preferredMfaSetting = value; }
inline void SetPreferredMfaSetting(Aws::String&& value) { m_preferredMfaSetting = std::move(value); }
inline void SetPreferredMfaSetting(const char* value) { m_preferredMfaSetting.assign(value); }
inline GetUserResult& WithPreferredMfaSetting(const Aws::String& value) { SetPreferredMfaSetting(value); return *this;}
inline GetUserResult& WithPreferredMfaSetting(Aws::String&& value) { SetPreferredMfaSetting(std::move(value)); return *this;}
inline GetUserResult& WithPreferredMfaSetting(const char* value) { SetPreferredMfaSetting(value); return *this;}
///@}
///@{
/**
* The MFA options that are activated for the user. The possible values in this
* list are SMS_MFA, EMAIL_OTP, and
* SOFTWARE_TOKEN_MFA.
*/
inline const Aws::Vector& GetUserMFASettingList() const{ return m_userMFASettingList; }
inline void SetUserMFASettingList(const Aws::Vector& value) { m_userMFASettingList = value; }
inline void SetUserMFASettingList(Aws::Vector&& value) { m_userMFASettingList = std::move(value); }
inline GetUserResult& WithUserMFASettingList(const Aws::Vector& value) { SetUserMFASettingList(value); return *this;}
inline GetUserResult& WithUserMFASettingList(Aws::Vector&& value) { SetUserMFASettingList(std::move(value)); return *this;}
inline GetUserResult& AddUserMFASettingList(const Aws::String& value) { m_userMFASettingList.push_back(value); return *this; }
inline GetUserResult& AddUserMFASettingList(Aws::String&& value) { m_userMFASettingList.push_back(std::move(value)); return *this; }
inline GetUserResult& AddUserMFASettingList(const char* value) { m_userMFASettingList.push_back(value); return *this; }
///@}
///@{
inline const Aws::String& GetRequestId() const{ return m_requestId; }
inline void SetRequestId(const Aws::String& value) { m_requestId = value; }
inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); }
inline void SetRequestId(const char* value) { m_requestId.assign(value); }
inline GetUserResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;}
inline GetUserResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;}
inline GetUserResult& WithRequestId(const char* value) { SetRequestId(value); return *this;}
///@}
private:
Aws::String m_username;
Aws::Vector m_userAttributes;
Aws::Vector m_mFAOptions;
Aws::String m_preferredMfaSetting;
Aws::Vector m_userMFASettingList;
Aws::String m_requestId;
};
} // namespace Model
} // namespace CognitoIdentityProvider
} // namespace Aws