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

Information about the reaction values provided by users on a * comment.

See Also:

AWS * API Reference

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

The reaction for a specified comment.

*/ inline const ReactionValueFormats& GetReaction() const{ return m_reaction; } /** *

The reaction for a specified comment.

*/ inline bool ReactionHasBeenSet() const { return m_reactionHasBeenSet; } /** *

The reaction for a specified comment.

*/ inline void SetReaction(const ReactionValueFormats& value) { m_reactionHasBeenSet = true; m_reaction = value; } /** *

The reaction for a specified comment.

*/ inline void SetReaction(ReactionValueFormats&& value) { m_reactionHasBeenSet = true; m_reaction = std::move(value); } /** *

The reaction for a specified comment.

*/ inline ReactionForComment& WithReaction(const ReactionValueFormats& value) { SetReaction(value); return *this;} /** *

The reaction for a specified comment.

*/ inline ReactionForComment& WithReaction(ReactionValueFormats&& value) { SetReaction(std::move(value)); return *this;} /** *

The Amazon Resource Names (ARNs) of users who have provided reactions to the * comment.

*/ inline const Aws::Vector& GetReactionUsers() const{ return m_reactionUsers; } /** *

The Amazon Resource Names (ARNs) of users who have provided reactions to the * comment.

*/ inline bool ReactionUsersHasBeenSet() const { return m_reactionUsersHasBeenSet; } /** *

The Amazon Resource Names (ARNs) of users who have provided reactions to the * comment.

*/ inline void SetReactionUsers(const Aws::Vector& value) { m_reactionUsersHasBeenSet = true; m_reactionUsers = value; } /** *

The Amazon Resource Names (ARNs) of users who have provided reactions to the * comment.

*/ inline void SetReactionUsers(Aws::Vector&& value) { m_reactionUsersHasBeenSet = true; m_reactionUsers = std::move(value); } /** *

The Amazon Resource Names (ARNs) of users who have provided reactions to the * comment.

*/ inline ReactionForComment& WithReactionUsers(const Aws::Vector& value) { SetReactionUsers(value); return *this;} /** *

The Amazon Resource Names (ARNs) of users who have provided reactions to the * comment.

*/ inline ReactionForComment& WithReactionUsers(Aws::Vector&& value) { SetReactionUsers(std::move(value)); return *this;} /** *

The Amazon Resource Names (ARNs) of users who have provided reactions to the * comment.

*/ inline ReactionForComment& AddReactionUsers(const Aws::String& value) { m_reactionUsersHasBeenSet = true; m_reactionUsers.push_back(value); return *this; } /** *

The Amazon Resource Names (ARNs) of users who have provided reactions to the * comment.

*/ inline ReactionForComment& AddReactionUsers(Aws::String&& value) { m_reactionUsersHasBeenSet = true; m_reactionUsers.push_back(std::move(value)); return *this; } /** *

The Amazon Resource Names (ARNs) of users who have provided reactions to the * comment.

*/ inline ReactionForComment& AddReactionUsers(const char* value) { m_reactionUsersHasBeenSet = true; m_reactionUsers.push_back(value); return *this; } /** *

A numerical count of users who reacted with the specified emoji whose * identities have been subsequently deleted from IAM. While these IAM users or * roles no longer exist, the reactions might still appear in total reaction * counts.

*/ inline int GetReactionsFromDeletedUsersCount() const{ return m_reactionsFromDeletedUsersCount; } /** *

A numerical count of users who reacted with the specified emoji whose * identities have been subsequently deleted from IAM. While these IAM users or * roles no longer exist, the reactions might still appear in total reaction * counts.

*/ inline bool ReactionsFromDeletedUsersCountHasBeenSet() const { return m_reactionsFromDeletedUsersCountHasBeenSet; } /** *

A numerical count of users who reacted with the specified emoji whose * identities have been subsequently deleted from IAM. While these IAM users or * roles no longer exist, the reactions might still appear in total reaction * counts.

*/ inline void SetReactionsFromDeletedUsersCount(int value) { m_reactionsFromDeletedUsersCountHasBeenSet = true; m_reactionsFromDeletedUsersCount = value; } /** *

A numerical count of users who reacted with the specified emoji whose * identities have been subsequently deleted from IAM. While these IAM users or * roles no longer exist, the reactions might still appear in total reaction * counts.

*/ inline ReactionForComment& WithReactionsFromDeletedUsersCount(int value) { SetReactionsFromDeletedUsersCount(value); return *this;} private: ReactionValueFormats m_reaction; bool m_reactionHasBeenSet = false; Aws::Vector m_reactionUsers; bool m_reactionUsersHasBeenSet = false; int m_reactionsFromDeletedUsersCount; bool m_reactionsFromDeletedUsersCountHasBeenSet = false; }; } // namespace Model } // namespace CodeCommit } // namespace Aws