/** * 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 { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace CodeGuruReviewer { namespace Model { /** *

Information about the recommendation feedback.

See Also:

AWS * API Reference

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

The Amazon Resource Name (ARN) of the CodeReview * object.

*/ inline const Aws::String& GetCodeReviewArn() const{ return m_codeReviewArn; } /** *

The Amazon Resource Name (ARN) of the CodeReview * object.

*/ inline bool CodeReviewArnHasBeenSet() const { return m_codeReviewArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the CodeReview * object.

*/ inline void SetCodeReviewArn(const Aws::String& value) { m_codeReviewArnHasBeenSet = true; m_codeReviewArn = value; } /** *

The Amazon Resource Name (ARN) of the CodeReview * object.

*/ inline void SetCodeReviewArn(Aws::String&& value) { m_codeReviewArnHasBeenSet = true; m_codeReviewArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the CodeReview * object.

*/ inline void SetCodeReviewArn(const char* value) { m_codeReviewArnHasBeenSet = true; m_codeReviewArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the CodeReview * object.

*/ inline RecommendationFeedback& WithCodeReviewArn(const Aws::String& value) { SetCodeReviewArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the CodeReview * object.

*/ inline RecommendationFeedback& WithCodeReviewArn(Aws::String&& value) { SetCodeReviewArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the CodeReview * object.

*/ inline RecommendationFeedback& WithCodeReviewArn(const char* value) { SetCodeReviewArn(value); return *this;} /** *

The recommendation ID that can be used to track the provided recommendations. * Later on it can be used to collect the feedback.

*/ inline const Aws::String& GetRecommendationId() const{ return m_recommendationId; } /** *

The recommendation ID that can be used to track the provided recommendations. * Later on it can be used to collect the feedback.

*/ inline bool RecommendationIdHasBeenSet() const { return m_recommendationIdHasBeenSet; } /** *

The recommendation ID that can be used to track the provided recommendations. * Later on it can be used to collect the feedback.

*/ inline void SetRecommendationId(const Aws::String& value) { m_recommendationIdHasBeenSet = true; m_recommendationId = value; } /** *

The recommendation ID that can be used to track the provided recommendations. * Later on it can be used to collect the feedback.

*/ inline void SetRecommendationId(Aws::String&& value) { m_recommendationIdHasBeenSet = true; m_recommendationId = std::move(value); } /** *

The recommendation ID that can be used to track the provided recommendations. * Later on it can be used to collect the feedback.

*/ inline void SetRecommendationId(const char* value) { m_recommendationIdHasBeenSet = true; m_recommendationId.assign(value); } /** *

The recommendation ID that can be used to track the provided recommendations. * Later on it can be used to collect the feedback.

*/ inline RecommendationFeedback& WithRecommendationId(const Aws::String& value) { SetRecommendationId(value); return *this;} /** *

The recommendation ID that can be used to track the provided recommendations. * Later on it can be used to collect the feedback.

*/ inline RecommendationFeedback& WithRecommendationId(Aws::String&& value) { SetRecommendationId(std::move(value)); return *this;} /** *

The recommendation ID that can be used to track the provided recommendations. * Later on it can be used to collect the feedback.

*/ inline RecommendationFeedback& WithRecommendationId(const char* value) { SetRecommendationId(value); return *this;} /** *

List for storing reactions. Reactions are utf-8 text code for emojis. You can * send an empty list to clear off all your feedback.

*/ inline const Aws::Vector& GetReactions() const{ return m_reactions; } /** *

List for storing reactions. Reactions are utf-8 text code for emojis. You can * send an empty list to clear off all your feedback.

*/ inline bool ReactionsHasBeenSet() const { return m_reactionsHasBeenSet; } /** *

List for storing reactions. Reactions are utf-8 text code for emojis. You can * send an empty list to clear off all your feedback.

*/ inline void SetReactions(const Aws::Vector& value) { m_reactionsHasBeenSet = true; m_reactions = value; } /** *

List for storing reactions. Reactions are utf-8 text code for emojis. You can * send an empty list to clear off all your feedback.

*/ inline void SetReactions(Aws::Vector&& value) { m_reactionsHasBeenSet = true; m_reactions = std::move(value); } /** *

List for storing reactions. Reactions are utf-8 text code for emojis. You can * send an empty list to clear off all your feedback.

*/ inline RecommendationFeedback& WithReactions(const Aws::Vector& value) { SetReactions(value); return *this;} /** *

List for storing reactions. Reactions are utf-8 text code for emojis. You can * send an empty list to clear off all your feedback.

*/ inline RecommendationFeedback& WithReactions(Aws::Vector&& value) { SetReactions(std::move(value)); return *this;} /** *

List for storing reactions. Reactions are utf-8 text code for emojis. You can * send an empty list to clear off all your feedback.

*/ inline RecommendationFeedback& AddReactions(const Reaction& value) { m_reactionsHasBeenSet = true; m_reactions.push_back(value); return *this; } /** *

List for storing reactions. Reactions are utf-8 text code for emojis. You can * send an empty list to clear off all your feedback.

*/ inline RecommendationFeedback& AddReactions(Reaction&& value) { m_reactionsHasBeenSet = true; m_reactions.push_back(std::move(value)); return *this; } /** *

The ID of the user that made the API call.

The UserId is * an IAM principal that can be specified as an Amazon Web Services account ID or * an Amazon Resource Name (ARN). For more information, see * Specifying a Principal in the Amazon Web Services Identity and Access * Management User Guide.

*/ inline const Aws::String& GetUserId() const{ return m_userId; } /** *

The ID of the user that made the API call.

The UserId is * an IAM principal that can be specified as an Amazon Web Services account ID or * an Amazon Resource Name (ARN). For more information, see * Specifying a Principal in the Amazon Web Services Identity and Access * Management User Guide.

*/ inline bool UserIdHasBeenSet() const { return m_userIdHasBeenSet; } /** *

The ID of the user that made the API call.

The UserId is * an IAM principal that can be specified as an Amazon Web Services account ID or * an Amazon Resource Name (ARN). For more information, see * Specifying a Principal in the Amazon Web Services Identity and Access * Management User Guide.

*/ inline void SetUserId(const Aws::String& value) { m_userIdHasBeenSet = true; m_userId = value; } /** *

The ID of the user that made the API call.

The UserId is * an IAM principal that can be specified as an Amazon Web Services account ID or * an Amazon Resource Name (ARN). For more information, see * Specifying a Principal in the Amazon Web Services Identity and Access * Management User Guide.

*/ inline void SetUserId(Aws::String&& value) { m_userIdHasBeenSet = true; m_userId = std::move(value); } /** *

The ID of the user that made the API call.

The UserId is * an IAM principal that can be specified as an Amazon Web Services account ID or * an Amazon Resource Name (ARN). For more information, see * Specifying a Principal in the Amazon Web Services Identity and Access * Management User Guide.

*/ inline void SetUserId(const char* value) { m_userIdHasBeenSet = true; m_userId.assign(value); } /** *

The ID of the user that made the API call.

The UserId is * an IAM principal that can be specified as an Amazon Web Services account ID or * an Amazon Resource Name (ARN). For more information, see * Specifying a Principal in the Amazon Web Services Identity and Access * Management User Guide.

*/ inline RecommendationFeedback& WithUserId(const Aws::String& value) { SetUserId(value); return *this;} /** *

The ID of the user that made the API call.

The UserId is * an IAM principal that can be specified as an Amazon Web Services account ID or * an Amazon Resource Name (ARN). For more information, see * Specifying a Principal in the Amazon Web Services Identity and Access * Management User Guide.

*/ inline RecommendationFeedback& WithUserId(Aws::String&& value) { SetUserId(std::move(value)); return *this;} /** *

The ID of the user that made the API call.

The UserId is * an IAM principal that can be specified as an Amazon Web Services account ID or * an Amazon Resource Name (ARN). For more information, see * Specifying a Principal in the Amazon Web Services Identity and Access * Management User Guide.

*/ inline RecommendationFeedback& WithUserId(const char* value) { SetUserId(value); return *this;} /** *

The time at which the feedback was created.

*/ inline const Aws::Utils::DateTime& GetCreatedTimeStamp() const{ return m_createdTimeStamp; } /** *

The time at which the feedback was created.

*/ inline bool CreatedTimeStampHasBeenSet() const { return m_createdTimeStampHasBeenSet; } /** *

The time at which the feedback was created.

*/ inline void SetCreatedTimeStamp(const Aws::Utils::DateTime& value) { m_createdTimeStampHasBeenSet = true; m_createdTimeStamp = value; } /** *

The time at which the feedback was created.

*/ inline void SetCreatedTimeStamp(Aws::Utils::DateTime&& value) { m_createdTimeStampHasBeenSet = true; m_createdTimeStamp = std::move(value); } /** *

The time at which the feedback was created.

*/ inline RecommendationFeedback& WithCreatedTimeStamp(const Aws::Utils::DateTime& value) { SetCreatedTimeStamp(value); return *this;} /** *

The time at which the feedback was created.

*/ inline RecommendationFeedback& WithCreatedTimeStamp(Aws::Utils::DateTime&& value) { SetCreatedTimeStamp(std::move(value)); return *this;} /** *

The time at which the feedback was last updated.

*/ inline const Aws::Utils::DateTime& GetLastUpdatedTimeStamp() const{ return m_lastUpdatedTimeStamp; } /** *

The time at which the feedback was last updated.

*/ inline bool LastUpdatedTimeStampHasBeenSet() const { return m_lastUpdatedTimeStampHasBeenSet; } /** *

The time at which the feedback was last updated.

*/ inline void SetLastUpdatedTimeStamp(const Aws::Utils::DateTime& value) { m_lastUpdatedTimeStampHasBeenSet = true; m_lastUpdatedTimeStamp = value; } /** *

The time at which the feedback was last updated.

*/ inline void SetLastUpdatedTimeStamp(Aws::Utils::DateTime&& value) { m_lastUpdatedTimeStampHasBeenSet = true; m_lastUpdatedTimeStamp = std::move(value); } /** *

The time at which the feedback was last updated.

*/ inline RecommendationFeedback& WithLastUpdatedTimeStamp(const Aws::Utils::DateTime& value) { SetLastUpdatedTimeStamp(value); return *this;} /** *

The time at which the feedback was last updated.

*/ inline RecommendationFeedback& WithLastUpdatedTimeStamp(Aws::Utils::DateTime&& value) { SetLastUpdatedTimeStamp(std::move(value)); return *this;} private: Aws::String m_codeReviewArn; bool m_codeReviewArnHasBeenSet = false; Aws::String m_recommendationId; bool m_recommendationIdHasBeenSet = false; Aws::Vector m_reactions; bool m_reactionsHasBeenSet = false; Aws::String m_userId; bool m_userIdHasBeenSet = false; Aws::Utils::DateTime m_createdTimeStamp; bool m_createdTimeStampHasBeenSet = false; Aws::Utils::DateTime m_lastUpdatedTimeStamp; bool m_lastUpdatedTimeStampHasBeenSet = false; }; } // namespace Model } // namespace CodeGuruReviewer } // namespace Aws