/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace Connect { namespace Model { /** *

Information about a contact evaluation.

See Also:

AWS * API Reference

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

A unique identifier for the contact evaluation.

*/ inline const Aws::String& GetEvaluationId() const{ return m_evaluationId; } /** *

A unique identifier for the contact evaluation.

*/ inline bool EvaluationIdHasBeenSet() const { return m_evaluationIdHasBeenSet; } /** *

A unique identifier for the contact evaluation.

*/ inline void SetEvaluationId(const Aws::String& value) { m_evaluationIdHasBeenSet = true; m_evaluationId = value; } /** *

A unique identifier for the contact evaluation.

*/ inline void SetEvaluationId(Aws::String&& value) { m_evaluationIdHasBeenSet = true; m_evaluationId = std::move(value); } /** *

A unique identifier for the contact evaluation.

*/ inline void SetEvaluationId(const char* value) { m_evaluationIdHasBeenSet = true; m_evaluationId.assign(value); } /** *

A unique identifier for the contact evaluation.

*/ inline Evaluation& WithEvaluationId(const Aws::String& value) { SetEvaluationId(value); return *this;} /** *

A unique identifier for the contact evaluation.

*/ inline Evaluation& WithEvaluationId(Aws::String&& value) { SetEvaluationId(std::move(value)); return *this;} /** *

A unique identifier for the contact evaluation.

*/ inline Evaluation& WithEvaluationId(const char* value) { SetEvaluationId(value); return *this;} /** *

The Amazon Resource Name (ARN) for the contact evaluation resource.

*/ inline const Aws::String& GetEvaluationArn() const{ return m_evaluationArn; } /** *

The Amazon Resource Name (ARN) for the contact evaluation resource.

*/ inline bool EvaluationArnHasBeenSet() const { return m_evaluationArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) for the contact evaluation resource.

*/ inline void SetEvaluationArn(const Aws::String& value) { m_evaluationArnHasBeenSet = true; m_evaluationArn = value; } /** *

The Amazon Resource Name (ARN) for the contact evaluation resource.

*/ inline void SetEvaluationArn(Aws::String&& value) { m_evaluationArnHasBeenSet = true; m_evaluationArn = std::move(value); } /** *

The Amazon Resource Name (ARN) for the contact evaluation resource.

*/ inline void SetEvaluationArn(const char* value) { m_evaluationArnHasBeenSet = true; m_evaluationArn.assign(value); } /** *

The Amazon Resource Name (ARN) for the contact evaluation resource.

*/ inline Evaluation& WithEvaluationArn(const Aws::String& value) { SetEvaluationArn(value); return *this;} /** *

The Amazon Resource Name (ARN) for the contact evaluation resource.

*/ inline Evaluation& WithEvaluationArn(Aws::String&& value) { SetEvaluationArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) for the contact evaluation resource.

*/ inline Evaluation& WithEvaluationArn(const char* value) { SetEvaluationArn(value); return *this;} /** *

Metadata about the contact evaluation.

*/ inline const EvaluationMetadata& GetMetadata() const{ return m_metadata; } /** *

Metadata about the contact evaluation.

*/ inline bool MetadataHasBeenSet() const { return m_metadataHasBeenSet; } /** *

Metadata about the contact evaluation.

*/ inline void SetMetadata(const EvaluationMetadata& value) { m_metadataHasBeenSet = true; m_metadata = value; } /** *

Metadata about the contact evaluation.

*/ inline void SetMetadata(EvaluationMetadata&& value) { m_metadataHasBeenSet = true; m_metadata = std::move(value); } /** *

Metadata about the contact evaluation.

*/ inline Evaluation& WithMetadata(const EvaluationMetadata& value) { SetMetadata(value); return *this;} /** *

Metadata about the contact evaluation.

*/ inline Evaluation& WithMetadata(EvaluationMetadata&& value) { SetMetadata(std::move(value)); return *this;} /** *

A map of question identifiers to answer value.

*/ inline const Aws::Map& GetAnswers() const{ return m_answers; } /** *

A map of question identifiers to answer value.

*/ inline bool AnswersHasBeenSet() const { return m_answersHasBeenSet; } /** *

A map of question identifiers to answer value.

*/ inline void SetAnswers(const Aws::Map& value) { m_answersHasBeenSet = true; m_answers = value; } /** *

A map of question identifiers to answer value.

*/ inline void SetAnswers(Aws::Map&& value) { m_answersHasBeenSet = true; m_answers = std::move(value); } /** *

A map of question identifiers to answer value.

*/ inline Evaluation& WithAnswers(const Aws::Map& value) { SetAnswers(value); return *this;} /** *

A map of question identifiers to answer value.

*/ inline Evaluation& WithAnswers(Aws::Map&& value) { SetAnswers(std::move(value)); return *this;} /** *

A map of question identifiers to answer value.

*/ inline Evaluation& AddAnswers(const Aws::String& key, const EvaluationAnswerOutput& value) { m_answersHasBeenSet = true; m_answers.emplace(key, value); return *this; } /** *

A map of question identifiers to answer value.

*/ inline Evaluation& AddAnswers(Aws::String&& key, const EvaluationAnswerOutput& value) { m_answersHasBeenSet = true; m_answers.emplace(std::move(key), value); return *this; } /** *

A map of question identifiers to answer value.

*/ inline Evaluation& AddAnswers(const Aws::String& key, EvaluationAnswerOutput&& value) { m_answersHasBeenSet = true; m_answers.emplace(key, std::move(value)); return *this; } /** *

A map of question identifiers to answer value.

*/ inline Evaluation& AddAnswers(Aws::String&& key, EvaluationAnswerOutput&& value) { m_answersHasBeenSet = true; m_answers.emplace(std::move(key), std::move(value)); return *this; } /** *

A map of question identifiers to answer value.

*/ inline Evaluation& AddAnswers(const char* key, EvaluationAnswerOutput&& value) { m_answersHasBeenSet = true; m_answers.emplace(key, std::move(value)); return *this; } /** *

A map of question identifiers to answer value.

*/ inline Evaluation& AddAnswers(const char* key, const EvaluationAnswerOutput& value) { m_answersHasBeenSet = true; m_answers.emplace(key, value); return *this; } /** *

A map of question identifiers to note value.

*/ inline const Aws::Map& GetNotes() const{ return m_notes; } /** *

A map of question identifiers to note value.

*/ inline bool NotesHasBeenSet() const { return m_notesHasBeenSet; } /** *

A map of question identifiers to note value.

*/ inline void SetNotes(const Aws::Map& value) { m_notesHasBeenSet = true; m_notes = value; } /** *

A map of question identifiers to note value.

*/ inline void SetNotes(Aws::Map&& value) { m_notesHasBeenSet = true; m_notes = std::move(value); } /** *

A map of question identifiers to note value.

*/ inline Evaluation& WithNotes(const Aws::Map& value) { SetNotes(value); return *this;} /** *

A map of question identifiers to note value.

*/ inline Evaluation& WithNotes(Aws::Map&& value) { SetNotes(std::move(value)); return *this;} /** *

A map of question identifiers to note value.

*/ inline Evaluation& AddNotes(const Aws::String& key, const EvaluationNote& value) { m_notesHasBeenSet = true; m_notes.emplace(key, value); return *this; } /** *

A map of question identifiers to note value.

*/ inline Evaluation& AddNotes(Aws::String&& key, const EvaluationNote& value) { m_notesHasBeenSet = true; m_notes.emplace(std::move(key), value); return *this; } /** *

A map of question identifiers to note value.

*/ inline Evaluation& AddNotes(const Aws::String& key, EvaluationNote&& value) { m_notesHasBeenSet = true; m_notes.emplace(key, std::move(value)); return *this; } /** *

A map of question identifiers to note value.

*/ inline Evaluation& AddNotes(Aws::String&& key, EvaluationNote&& value) { m_notesHasBeenSet = true; m_notes.emplace(std::move(key), std::move(value)); return *this; } /** *

A map of question identifiers to note value.

*/ inline Evaluation& AddNotes(const char* key, EvaluationNote&& value) { m_notesHasBeenSet = true; m_notes.emplace(key, std::move(value)); return *this; } /** *

A map of question identifiers to note value.

*/ inline Evaluation& AddNotes(const char* key, const EvaluationNote& value) { m_notesHasBeenSet = true; m_notes.emplace(key, value); return *this; } /** *

The status of the contact evaluation.

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

The status of the contact evaluation.

*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *

The status of the contact evaluation.

*/ inline void SetStatus(const EvaluationStatus& value) { m_statusHasBeenSet = true; m_status = value; } /** *

The status of the contact evaluation.

*/ inline void SetStatus(EvaluationStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } /** *

The status of the contact evaluation.

*/ inline Evaluation& WithStatus(const EvaluationStatus& value) { SetStatus(value); return *this;} /** *

The status of the contact evaluation.

*/ inline Evaluation& WithStatus(EvaluationStatus&& value) { SetStatus(std::move(value)); return *this;} /** *

A map of item (section or question) identifiers to score value.

*/ inline const Aws::Map& GetScores() const{ return m_scores; } /** *

A map of item (section or question) identifiers to score value.

*/ inline bool ScoresHasBeenSet() const { return m_scoresHasBeenSet; } /** *

A map of item (section or question) identifiers to score value.

*/ inline void SetScores(const Aws::Map& value) { m_scoresHasBeenSet = true; m_scores = value; } /** *

A map of item (section or question) identifiers to score value.

*/ inline void SetScores(Aws::Map&& value) { m_scoresHasBeenSet = true; m_scores = std::move(value); } /** *

A map of item (section or question) identifiers to score value.

*/ inline Evaluation& WithScores(const Aws::Map& value) { SetScores(value); return *this;} /** *

A map of item (section or question) identifiers to score value.

*/ inline Evaluation& WithScores(Aws::Map&& value) { SetScores(std::move(value)); return *this;} /** *

A map of item (section or question) identifiers to score value.

*/ inline Evaluation& AddScores(const Aws::String& key, const EvaluationScore& value) { m_scoresHasBeenSet = true; m_scores.emplace(key, value); return *this; } /** *

A map of item (section or question) identifiers to score value.

*/ inline Evaluation& AddScores(Aws::String&& key, const EvaluationScore& value) { m_scoresHasBeenSet = true; m_scores.emplace(std::move(key), value); return *this; } /** *

A map of item (section or question) identifiers to score value.

*/ inline Evaluation& AddScores(const Aws::String& key, EvaluationScore&& value) { m_scoresHasBeenSet = true; m_scores.emplace(key, std::move(value)); return *this; } /** *

A map of item (section or question) identifiers to score value.

*/ inline Evaluation& AddScores(Aws::String&& key, EvaluationScore&& value) { m_scoresHasBeenSet = true; m_scores.emplace(std::move(key), std::move(value)); return *this; } /** *

A map of item (section or question) identifiers to score value.

*/ inline Evaluation& AddScores(const char* key, EvaluationScore&& value) { m_scoresHasBeenSet = true; m_scores.emplace(key, std::move(value)); return *this; } /** *

A map of item (section or question) identifiers to score value.

*/ inline Evaluation& AddScores(const char* key, const EvaluationScore& value) { m_scoresHasBeenSet = true; m_scores.emplace(key, value); return *this; } /** *

The timestamp for when the evaluation was created.

*/ inline const Aws::Utils::DateTime& GetCreatedTime() const{ return m_createdTime; } /** *

The timestamp for when the evaluation was created.

*/ inline bool CreatedTimeHasBeenSet() const { return m_createdTimeHasBeenSet; } /** *

The timestamp for when the evaluation was created.

*/ inline void SetCreatedTime(const Aws::Utils::DateTime& value) { m_createdTimeHasBeenSet = true; m_createdTime = value; } /** *

The timestamp for when the evaluation was created.

*/ inline void SetCreatedTime(Aws::Utils::DateTime&& value) { m_createdTimeHasBeenSet = true; m_createdTime = std::move(value); } /** *

The timestamp for when the evaluation was created.

*/ inline Evaluation& WithCreatedTime(const Aws::Utils::DateTime& value) { SetCreatedTime(value); return *this;} /** *

The timestamp for when the evaluation was created.

*/ inline Evaluation& WithCreatedTime(Aws::Utils::DateTime&& value) { SetCreatedTime(std::move(value)); return *this;} /** *

The timestamp for when the evaluation was last updated.

*/ inline const Aws::Utils::DateTime& GetLastModifiedTime() const{ return m_lastModifiedTime; } /** *

The timestamp for when the evaluation was last updated.

*/ inline bool LastModifiedTimeHasBeenSet() const { return m_lastModifiedTimeHasBeenSet; } /** *

The timestamp for when the evaluation was last updated.

*/ inline void SetLastModifiedTime(const Aws::Utils::DateTime& value) { m_lastModifiedTimeHasBeenSet = true; m_lastModifiedTime = value; } /** *

The timestamp for when the evaluation was last updated.

*/ inline void SetLastModifiedTime(Aws::Utils::DateTime&& value) { m_lastModifiedTimeHasBeenSet = true; m_lastModifiedTime = std::move(value); } /** *

The timestamp for when the evaluation was last updated.

*/ inline Evaluation& WithLastModifiedTime(const Aws::Utils::DateTime& value) { SetLastModifiedTime(value); return *this;} /** *

The timestamp for when the evaluation was last updated.

*/ inline Evaluation& WithLastModifiedTime(Aws::Utils::DateTime&& value) { SetLastModifiedTime(std::move(value)); return *this;} /** *

The tags used to organize, track, or control access for this resource. For * example, { "tags": {"key1":"value1", "key2":"value2"} }.

*/ inline const Aws::Map& GetTags() const{ return m_tags; } /** *

The tags used to organize, track, or control access for this resource. For * example, { "tags": {"key1":"value1", "key2":"value2"} }.

*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *

The tags used to organize, track, or control access for this resource. For * example, { "tags": {"key1":"value1", "key2":"value2"} }.

*/ inline void SetTags(const Aws::Map& value) { m_tagsHasBeenSet = true; m_tags = value; } /** *

The tags used to organize, track, or control access for this resource. For * example, { "tags": {"key1":"value1", "key2":"value2"} }.

*/ inline void SetTags(Aws::Map&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } /** *

The tags used to organize, track, or control access for this resource. For * example, { "tags": {"key1":"value1", "key2":"value2"} }.

*/ inline Evaluation& WithTags(const Aws::Map& value) { SetTags(value); return *this;} /** *

The tags used to organize, track, or control access for this resource. For * example, { "tags": {"key1":"value1", "key2":"value2"} }.

*/ inline Evaluation& WithTags(Aws::Map&& value) { SetTags(std::move(value)); return *this;} /** *

The tags used to organize, track, or control access for this resource. For * example, { "tags": {"key1":"value1", "key2":"value2"} }.

*/ inline Evaluation& AddTags(const Aws::String& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } /** *

The tags used to organize, track, or control access for this resource. For * example, { "tags": {"key1":"value1", "key2":"value2"} }.

*/ inline Evaluation& AddTags(Aws::String&& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } /** *

The tags used to organize, track, or control access for this resource. For * example, { "tags": {"key1":"value1", "key2":"value2"} }.

*/ inline Evaluation& AddTags(const Aws::String& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } /** *

The tags used to organize, track, or control access for this resource. For * example, { "tags": {"key1":"value1", "key2":"value2"} }.

*/ inline Evaluation& AddTags(Aws::String&& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), std::move(value)); return *this; } /** *

The tags used to organize, track, or control access for this resource. For * example, { "tags": {"key1":"value1", "key2":"value2"} }.

*/ inline Evaluation& AddTags(const char* key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } /** *

The tags used to organize, track, or control access for this resource. For * example, { "tags": {"key1":"value1", "key2":"value2"} }.

*/ inline Evaluation& AddTags(Aws::String&& key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } /** *

The tags used to organize, track, or control access for this resource. For * example, { "tags": {"key1":"value1", "key2":"value2"} }.

*/ inline Evaluation& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } private: Aws::String m_evaluationId; bool m_evaluationIdHasBeenSet = false; Aws::String m_evaluationArn; bool m_evaluationArnHasBeenSet = false; EvaluationMetadata m_metadata; bool m_metadataHasBeenSet = false; Aws::Map m_answers; bool m_answersHasBeenSet = false; Aws::Map m_notes; bool m_notesHasBeenSet = false; EvaluationStatus m_status; bool m_statusHasBeenSet = false; Aws::Map m_scores; bool m_scoresHasBeenSet = false; Aws::Utils::DateTime m_createdTime; bool m_createdTimeHasBeenSet = false; Aws::Utils::DateTime m_lastModifiedTime; bool m_lastModifiedTimeHasBeenSet = false; Aws::Map m_tags; bool m_tagsHasBeenSet = false; }; } // namespace Model } // namespace Connect } // namespace Aws