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

Contains information about the task in an ECS cluster.

See * Also:

AWS * API Reference

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

The Amazon Resource Name (ARN) of the task.

*/ inline const Aws::String& GetArn() const{ return m_arn; } /** *

The Amazon Resource Name (ARN) of the task.

*/ inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the task.

*/ inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; } /** *

The Amazon Resource Name (ARN) of the task.

*/ inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the task.

*/ inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); } /** *

The Amazon Resource Name (ARN) of the task.

*/ inline EcsTaskDetails& WithArn(const Aws::String& value) { SetArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the task.

*/ inline EcsTaskDetails& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the task.

*/ inline EcsTaskDetails& WithArn(const char* value) { SetArn(value); return *this;} /** *

The ARN of the task definition that creates the task.

*/ inline const Aws::String& GetDefinitionArn() const{ return m_definitionArn; } /** *

The ARN of the task definition that creates the task.

*/ inline bool DefinitionArnHasBeenSet() const { return m_definitionArnHasBeenSet; } /** *

The ARN of the task definition that creates the task.

*/ inline void SetDefinitionArn(const Aws::String& value) { m_definitionArnHasBeenSet = true; m_definitionArn = value; } /** *

The ARN of the task definition that creates the task.

*/ inline void SetDefinitionArn(Aws::String&& value) { m_definitionArnHasBeenSet = true; m_definitionArn = std::move(value); } /** *

The ARN of the task definition that creates the task.

*/ inline void SetDefinitionArn(const char* value) { m_definitionArnHasBeenSet = true; m_definitionArn.assign(value); } /** *

The ARN of the task definition that creates the task.

*/ inline EcsTaskDetails& WithDefinitionArn(const Aws::String& value) { SetDefinitionArn(value); return *this;} /** *

The ARN of the task definition that creates the task.

*/ inline EcsTaskDetails& WithDefinitionArn(Aws::String&& value) { SetDefinitionArn(std::move(value)); return *this;} /** *

The ARN of the task definition that creates the task.

*/ inline EcsTaskDetails& WithDefinitionArn(const char* value) { SetDefinitionArn(value); return *this;} /** *

The version counter for the task.

*/ inline const Aws::String& GetVersion() const{ return m_version; } /** *

The version counter for the task.

*/ inline bool VersionHasBeenSet() const { return m_versionHasBeenSet; } /** *

The version counter for the task.

*/ inline void SetVersion(const Aws::String& value) { m_versionHasBeenSet = true; m_version = value; } /** *

The version counter for the task.

*/ inline void SetVersion(Aws::String&& value) { m_versionHasBeenSet = true; m_version = std::move(value); } /** *

The version counter for the task.

*/ inline void SetVersion(const char* value) { m_versionHasBeenSet = true; m_version.assign(value); } /** *

The version counter for the task.

*/ inline EcsTaskDetails& WithVersion(const Aws::String& value) { SetVersion(value); return *this;} /** *

The version counter for the task.

*/ inline EcsTaskDetails& WithVersion(Aws::String&& value) { SetVersion(std::move(value)); return *this;} /** *

The version counter for the task.

*/ inline EcsTaskDetails& WithVersion(const char* value) { SetVersion(value); return *this;} /** *

The Unix timestamp for the time when the task was created.

*/ inline const Aws::Utils::DateTime& GetTaskCreatedAt() const{ return m_taskCreatedAt; } /** *

The Unix timestamp for the time when the task was created.

*/ inline bool TaskCreatedAtHasBeenSet() const { return m_taskCreatedAtHasBeenSet; } /** *

The Unix timestamp for the time when the task was created.

*/ inline void SetTaskCreatedAt(const Aws::Utils::DateTime& value) { m_taskCreatedAtHasBeenSet = true; m_taskCreatedAt = value; } /** *

The Unix timestamp for the time when the task was created.

*/ inline void SetTaskCreatedAt(Aws::Utils::DateTime&& value) { m_taskCreatedAtHasBeenSet = true; m_taskCreatedAt = std::move(value); } /** *

The Unix timestamp for the time when the task was created.

*/ inline EcsTaskDetails& WithTaskCreatedAt(const Aws::Utils::DateTime& value) { SetTaskCreatedAt(value); return *this;} /** *

The Unix timestamp for the time when the task was created.

*/ inline EcsTaskDetails& WithTaskCreatedAt(Aws::Utils::DateTime&& value) { SetTaskCreatedAt(std::move(value)); return *this;} /** *

The Unix timestamp for the time when the task started.

*/ inline const Aws::Utils::DateTime& GetStartedAt() const{ return m_startedAt; } /** *

The Unix timestamp for the time when the task started.

*/ inline bool StartedAtHasBeenSet() const { return m_startedAtHasBeenSet; } /** *

The Unix timestamp for the time when the task started.

*/ inline void SetStartedAt(const Aws::Utils::DateTime& value) { m_startedAtHasBeenSet = true; m_startedAt = value; } /** *

The Unix timestamp for the time when the task started.

*/ inline void SetStartedAt(Aws::Utils::DateTime&& value) { m_startedAtHasBeenSet = true; m_startedAt = std::move(value); } /** *

The Unix timestamp for the time when the task started.

*/ inline EcsTaskDetails& WithStartedAt(const Aws::Utils::DateTime& value) { SetStartedAt(value); return *this;} /** *

The Unix timestamp for the time when the task started.

*/ inline EcsTaskDetails& WithStartedAt(Aws::Utils::DateTime&& value) { SetStartedAt(std::move(value)); return *this;} /** *

Contains the tag specified when a task is started.

*/ inline const Aws::String& GetStartedBy() const{ return m_startedBy; } /** *

Contains the tag specified when a task is started.

*/ inline bool StartedByHasBeenSet() const { return m_startedByHasBeenSet; } /** *

Contains the tag specified when a task is started.

*/ inline void SetStartedBy(const Aws::String& value) { m_startedByHasBeenSet = true; m_startedBy = value; } /** *

Contains the tag specified when a task is started.

*/ inline void SetStartedBy(Aws::String&& value) { m_startedByHasBeenSet = true; m_startedBy = std::move(value); } /** *

Contains the tag specified when a task is started.

*/ inline void SetStartedBy(const char* value) { m_startedByHasBeenSet = true; m_startedBy.assign(value); } /** *

Contains the tag specified when a task is started.

*/ inline EcsTaskDetails& WithStartedBy(const Aws::String& value) { SetStartedBy(value); return *this;} /** *

Contains the tag specified when a task is started.

*/ inline EcsTaskDetails& WithStartedBy(Aws::String&& value) { SetStartedBy(std::move(value)); return *this;} /** *

Contains the tag specified when a task is started.

*/ inline EcsTaskDetails& WithStartedBy(const char* value) { SetStartedBy(value); return *this;} /** *

The tags of the ECS Task.

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

The tags of the ECS Task.

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

The tags of the ECS Task.

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

The tags of the ECS Task.

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

The tags of the ECS Task.

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

The tags of the ECS Task.

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

The tags of the ECS Task.

*/ inline EcsTaskDetails& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } /** *

The tags of the ECS Task.

*/ inline EcsTaskDetails& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } /** *

The list of data volume definitions for the task.

*/ inline const Aws::Vector& GetVolumes() const{ return m_volumes; } /** *

The list of data volume definitions for the task.

*/ inline bool VolumesHasBeenSet() const { return m_volumesHasBeenSet; } /** *

The list of data volume definitions for the task.

*/ inline void SetVolumes(const Aws::Vector& value) { m_volumesHasBeenSet = true; m_volumes = value; } /** *

The list of data volume definitions for the task.

*/ inline void SetVolumes(Aws::Vector&& value) { m_volumesHasBeenSet = true; m_volumes = std::move(value); } /** *

The list of data volume definitions for the task.

*/ inline EcsTaskDetails& WithVolumes(const Aws::Vector& value) { SetVolumes(value); return *this;} /** *

The list of data volume definitions for the task.

*/ inline EcsTaskDetails& WithVolumes(Aws::Vector&& value) { SetVolumes(std::move(value)); return *this;} /** *

The list of data volume definitions for the task.

*/ inline EcsTaskDetails& AddVolumes(const Volume& value) { m_volumesHasBeenSet = true; m_volumes.push_back(value); return *this; } /** *

The list of data volume definitions for the task.

*/ inline EcsTaskDetails& AddVolumes(Volume&& value) { m_volumesHasBeenSet = true; m_volumes.push_back(std::move(value)); return *this; } /** *

The containers that's associated with the task.

*/ inline const Aws::Vector& GetContainers() const{ return m_containers; } /** *

The containers that's associated with the task.

*/ inline bool ContainersHasBeenSet() const { return m_containersHasBeenSet; } /** *

The containers that's associated with the task.

*/ inline void SetContainers(const Aws::Vector& value) { m_containersHasBeenSet = true; m_containers = value; } /** *

The containers that's associated with the task.

*/ inline void SetContainers(Aws::Vector&& value) { m_containersHasBeenSet = true; m_containers = std::move(value); } /** *

The containers that's associated with the task.

*/ inline EcsTaskDetails& WithContainers(const Aws::Vector& value) { SetContainers(value); return *this;} /** *

The containers that's associated with the task.

*/ inline EcsTaskDetails& WithContainers(Aws::Vector&& value) { SetContainers(std::move(value)); return *this;} /** *

The containers that's associated with the task.

*/ inline EcsTaskDetails& AddContainers(const Container& value) { m_containersHasBeenSet = true; m_containers.push_back(value); return *this; } /** *

The containers that's associated with the task.

*/ inline EcsTaskDetails& AddContainers(Container&& value) { m_containersHasBeenSet = true; m_containers.push_back(std::move(value)); return *this; } /** *

The name of the task group that's associated with the task.

*/ inline const Aws::String& GetGroup() const{ return m_group; } /** *

The name of the task group that's associated with the task.

*/ inline bool GroupHasBeenSet() const { return m_groupHasBeenSet; } /** *

The name of the task group that's associated with the task.

*/ inline void SetGroup(const Aws::String& value) { m_groupHasBeenSet = true; m_group = value; } /** *

The name of the task group that's associated with the task.

*/ inline void SetGroup(Aws::String&& value) { m_groupHasBeenSet = true; m_group = std::move(value); } /** *

The name of the task group that's associated with the task.

*/ inline void SetGroup(const char* value) { m_groupHasBeenSet = true; m_group.assign(value); } /** *

The name of the task group that's associated with the task.

*/ inline EcsTaskDetails& WithGroup(const Aws::String& value) { SetGroup(value); return *this;} /** *

The name of the task group that's associated with the task.

*/ inline EcsTaskDetails& WithGroup(Aws::String&& value) { SetGroup(std::move(value)); return *this;} /** *

The name of the task group that's associated with the task.

*/ inline EcsTaskDetails& WithGroup(const char* value) { SetGroup(value); return *this;} private: Aws::String m_arn; bool m_arnHasBeenSet = false; Aws::String m_definitionArn; bool m_definitionArnHasBeenSet = false; Aws::String m_version; bool m_versionHasBeenSet = false; Aws::Utils::DateTime m_taskCreatedAt; bool m_taskCreatedAtHasBeenSet = false; Aws::Utils::DateTime m_startedAt; bool m_startedAtHasBeenSet = false; Aws::String m_startedBy; bool m_startedByHasBeenSet = false; Aws::Vector m_tags; bool m_tagsHasBeenSet = false; Aws::Vector m_volumes; bool m_volumesHasBeenSet = false; Aws::Vector m_containers; bool m_containersHasBeenSet = false; Aws::String m_group; bool m_groupHasBeenSet = false; }; } // namespace Model } // namespace GuardDuty } // namespace Aws