/** * 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 QuickSight { namespace Model { class UpdateIAMPolicyAssignmentResult { public: AWS_QUICKSIGHT_API UpdateIAMPolicyAssignmentResult(); AWS_QUICKSIGHT_API UpdateIAMPolicyAssignmentResult(const Aws::AmazonWebServiceResult& result); AWS_QUICKSIGHT_API UpdateIAMPolicyAssignmentResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

The name of the assignment or rule.

*/ inline const Aws::String& GetAssignmentName() const{ return m_assignmentName; } /** *

The name of the assignment or rule.

*/ inline void SetAssignmentName(const Aws::String& value) { m_assignmentName = value; } /** *

The name of the assignment or rule.

*/ inline void SetAssignmentName(Aws::String&& value) { m_assignmentName = std::move(value); } /** *

The name of the assignment or rule.

*/ inline void SetAssignmentName(const char* value) { m_assignmentName.assign(value); } /** *

The name of the assignment or rule.

*/ inline UpdateIAMPolicyAssignmentResult& WithAssignmentName(const Aws::String& value) { SetAssignmentName(value); return *this;} /** *

The name of the assignment or rule.

*/ inline UpdateIAMPolicyAssignmentResult& WithAssignmentName(Aws::String&& value) { SetAssignmentName(std::move(value)); return *this;} /** *

The name of the assignment or rule.

*/ inline UpdateIAMPolicyAssignmentResult& WithAssignmentName(const char* value) { SetAssignmentName(value); return *this;} /** *

The ID of the assignment.

*/ inline const Aws::String& GetAssignmentId() const{ return m_assignmentId; } /** *

The ID of the assignment.

*/ inline void SetAssignmentId(const Aws::String& value) { m_assignmentId = value; } /** *

The ID of the assignment.

*/ inline void SetAssignmentId(Aws::String&& value) { m_assignmentId = std::move(value); } /** *

The ID of the assignment.

*/ inline void SetAssignmentId(const char* value) { m_assignmentId.assign(value); } /** *

The ID of the assignment.

*/ inline UpdateIAMPolicyAssignmentResult& WithAssignmentId(const Aws::String& value) { SetAssignmentId(value); return *this;} /** *

The ID of the assignment.

*/ inline UpdateIAMPolicyAssignmentResult& WithAssignmentId(Aws::String&& value) { SetAssignmentId(std::move(value)); return *this;} /** *

The ID of the assignment.

*/ inline UpdateIAMPolicyAssignmentResult& WithAssignmentId(const char* value) { SetAssignmentId(value); return *this;} /** *

The ARN for the IAM policy applied to the Amazon QuickSight users and groups * specified in this assignment.

*/ inline const Aws::String& GetPolicyArn() const{ return m_policyArn; } /** *

The ARN for the IAM policy applied to the Amazon QuickSight users and groups * specified in this assignment.

*/ inline void SetPolicyArn(const Aws::String& value) { m_policyArn = value; } /** *

The ARN for the IAM policy applied to the Amazon QuickSight users and groups * specified in this assignment.

*/ inline void SetPolicyArn(Aws::String&& value) { m_policyArn = std::move(value); } /** *

The ARN for the IAM policy applied to the Amazon QuickSight users and groups * specified in this assignment.

*/ inline void SetPolicyArn(const char* value) { m_policyArn.assign(value); } /** *

The ARN for the IAM policy applied to the Amazon QuickSight users and groups * specified in this assignment.

*/ inline UpdateIAMPolicyAssignmentResult& WithPolicyArn(const Aws::String& value) { SetPolicyArn(value); return *this;} /** *

The ARN for the IAM policy applied to the Amazon QuickSight users and groups * specified in this assignment.

*/ inline UpdateIAMPolicyAssignmentResult& WithPolicyArn(Aws::String&& value) { SetPolicyArn(std::move(value)); return *this;} /** *

The ARN for the IAM policy applied to the Amazon QuickSight users and groups * specified in this assignment.

*/ inline UpdateIAMPolicyAssignmentResult& WithPolicyArn(const char* value) { SetPolicyArn(value); return *this;} /** *

The Amazon QuickSight users, groups, or both that the IAM policy is assigned * to.

*/ inline const Aws::Map>& GetIdentities() const{ return m_identities; } /** *

The Amazon QuickSight users, groups, or both that the IAM policy is assigned * to.

*/ inline void SetIdentities(const Aws::Map>& value) { m_identities = value; } /** *

The Amazon QuickSight users, groups, or both that the IAM policy is assigned * to.

*/ inline void SetIdentities(Aws::Map>&& value) { m_identities = std::move(value); } /** *

The Amazon QuickSight users, groups, or both that the IAM policy is assigned * to.

*/ inline UpdateIAMPolicyAssignmentResult& WithIdentities(const Aws::Map>& value) { SetIdentities(value); return *this;} /** *

The Amazon QuickSight users, groups, or both that the IAM policy is assigned * to.

*/ inline UpdateIAMPolicyAssignmentResult& WithIdentities(Aws::Map>&& value) { SetIdentities(std::move(value)); return *this;} /** *

The Amazon QuickSight users, groups, or both that the IAM policy is assigned * to.

*/ inline UpdateIAMPolicyAssignmentResult& AddIdentities(const Aws::String& key, const Aws::Vector& value) { m_identities.emplace(key, value); return *this; } /** *

The Amazon QuickSight users, groups, or both that the IAM policy is assigned * to.

*/ inline UpdateIAMPolicyAssignmentResult& AddIdentities(Aws::String&& key, const Aws::Vector& value) { m_identities.emplace(std::move(key), value); return *this; } /** *

The Amazon QuickSight users, groups, or both that the IAM policy is assigned * to.

*/ inline UpdateIAMPolicyAssignmentResult& AddIdentities(const Aws::String& key, Aws::Vector&& value) { m_identities.emplace(key, std::move(value)); return *this; } /** *

The Amazon QuickSight users, groups, or both that the IAM policy is assigned * to.

*/ inline UpdateIAMPolicyAssignmentResult& AddIdentities(Aws::String&& key, Aws::Vector&& value) { m_identities.emplace(std::move(key), std::move(value)); return *this; } /** *

The Amazon QuickSight users, groups, or both that the IAM policy is assigned * to.

*/ inline UpdateIAMPolicyAssignmentResult& AddIdentities(const char* key, Aws::Vector&& value) { m_identities.emplace(key, std::move(value)); return *this; } /** *

The Amazon QuickSight users, groups, or both that the IAM policy is assigned * to.

*/ inline UpdateIAMPolicyAssignmentResult& AddIdentities(const char* key, const Aws::Vector& value) { m_identities.emplace(key, value); return *this; } /** *

The status of the assignment. Possible values are as follows:

  • *

    ENABLED - Anything specified in this assignment is used when * creating the data source.

  • DISABLED - This * assignment isn't used when creating the data source.

  • * DRAFT - This assignment is an unfinished draft and isn't used when * creating the data source.

*/ inline const AssignmentStatus& GetAssignmentStatus() const{ return m_assignmentStatus; } /** *

The status of the assignment. Possible values are as follows:

  • *

    ENABLED - Anything specified in this assignment is used when * creating the data source.

  • DISABLED - This * assignment isn't used when creating the data source.

  • * DRAFT - This assignment is an unfinished draft and isn't used when * creating the data source.

*/ inline void SetAssignmentStatus(const AssignmentStatus& value) { m_assignmentStatus = value; } /** *

The status of the assignment. Possible values are as follows:

  • *

    ENABLED - Anything specified in this assignment is used when * creating the data source.

  • DISABLED - This * assignment isn't used when creating the data source.

  • * DRAFT - This assignment is an unfinished draft and isn't used when * creating the data source.

*/ inline void SetAssignmentStatus(AssignmentStatus&& value) { m_assignmentStatus = std::move(value); } /** *

The status of the assignment. Possible values are as follows:

  • *

    ENABLED - Anything specified in this assignment is used when * creating the data source.

  • DISABLED - This * assignment isn't used when creating the data source.

  • * DRAFT - This assignment is an unfinished draft and isn't used when * creating the data source.

*/ inline UpdateIAMPolicyAssignmentResult& WithAssignmentStatus(const AssignmentStatus& value) { SetAssignmentStatus(value); return *this;} /** *

The status of the assignment. Possible values are as follows:

  • *

    ENABLED - Anything specified in this assignment is used when * creating the data source.

  • DISABLED - This * assignment isn't used when creating the data source.

  • * DRAFT - This assignment is an unfinished draft and isn't used when * creating the data source.

*/ inline UpdateIAMPolicyAssignmentResult& WithAssignmentStatus(AssignmentStatus&& value) { SetAssignmentStatus(std::move(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 UpdateIAMPolicyAssignmentResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline UpdateIAMPolicyAssignmentResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline UpdateIAMPolicyAssignmentResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} /** *

The HTTP status of the request.

*/ inline int GetStatus() const{ return m_status; } /** *

The HTTP status of the request.

*/ inline void SetStatus(int value) { m_status = value; } /** *

The HTTP status of the request.

*/ inline UpdateIAMPolicyAssignmentResult& WithStatus(int value) { SetStatus(value); return *this;} private: Aws::String m_assignmentName; Aws::String m_assignmentId; Aws::String m_policyArn; Aws::Map> m_identities; AssignmentStatus m_assignmentStatus; Aws::String m_requestId; int m_status; }; } // namespace Model } // namespace QuickSight } // namespace Aws