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

The Docker and Amazon ECS container agent version information about a * container instance.

See Also:

AWS API * Reference

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

The version number of the Amazon ECS container agent.

*/ inline const Aws::String& GetAgentVersion() const{ return m_agentVersion; } /** *

The version number of the Amazon ECS container agent.

*/ inline bool AgentVersionHasBeenSet() const { return m_agentVersionHasBeenSet; } /** *

The version number of the Amazon ECS container agent.

*/ inline void SetAgentVersion(const Aws::String& value) { m_agentVersionHasBeenSet = true; m_agentVersion = value; } /** *

The version number of the Amazon ECS container agent.

*/ inline void SetAgentVersion(Aws::String&& value) { m_agentVersionHasBeenSet = true; m_agentVersion = std::move(value); } /** *

The version number of the Amazon ECS container agent.

*/ inline void SetAgentVersion(const char* value) { m_agentVersionHasBeenSet = true; m_agentVersion.assign(value); } /** *

The version number of the Amazon ECS container agent.

*/ inline VersionInfo& WithAgentVersion(const Aws::String& value) { SetAgentVersion(value); return *this;} /** *

The version number of the Amazon ECS container agent.

*/ inline VersionInfo& WithAgentVersion(Aws::String&& value) { SetAgentVersion(std::move(value)); return *this;} /** *

The version number of the Amazon ECS container agent.

*/ inline VersionInfo& WithAgentVersion(const char* value) { SetAgentVersion(value); return *this;} /** *

The Git commit hash for the Amazon ECS container agent build on the amazon-ecs-agent * GitHub repository.

*/ inline const Aws::String& GetAgentHash() const{ return m_agentHash; } /** *

The Git commit hash for the Amazon ECS container agent build on the amazon-ecs-agent * GitHub repository.

*/ inline bool AgentHashHasBeenSet() const { return m_agentHashHasBeenSet; } /** *

The Git commit hash for the Amazon ECS container agent build on the amazon-ecs-agent * GitHub repository.

*/ inline void SetAgentHash(const Aws::String& value) { m_agentHashHasBeenSet = true; m_agentHash = value; } /** *

The Git commit hash for the Amazon ECS container agent build on the amazon-ecs-agent * GitHub repository.

*/ inline void SetAgentHash(Aws::String&& value) { m_agentHashHasBeenSet = true; m_agentHash = std::move(value); } /** *

The Git commit hash for the Amazon ECS container agent build on the amazon-ecs-agent * GitHub repository.

*/ inline void SetAgentHash(const char* value) { m_agentHashHasBeenSet = true; m_agentHash.assign(value); } /** *

The Git commit hash for the Amazon ECS container agent build on the amazon-ecs-agent * GitHub repository.

*/ inline VersionInfo& WithAgentHash(const Aws::String& value) { SetAgentHash(value); return *this;} /** *

The Git commit hash for the Amazon ECS container agent build on the amazon-ecs-agent * GitHub repository.

*/ inline VersionInfo& WithAgentHash(Aws::String&& value) { SetAgentHash(std::move(value)); return *this;} /** *

The Git commit hash for the Amazon ECS container agent build on the amazon-ecs-agent * GitHub repository.

*/ inline VersionInfo& WithAgentHash(const char* value) { SetAgentHash(value); return *this;} /** *

The Docker version that's running on the container instance.

*/ inline const Aws::String& GetDockerVersion() const{ return m_dockerVersion; } /** *

The Docker version that's running on the container instance.

*/ inline bool DockerVersionHasBeenSet() const { return m_dockerVersionHasBeenSet; } /** *

The Docker version that's running on the container instance.

*/ inline void SetDockerVersion(const Aws::String& value) { m_dockerVersionHasBeenSet = true; m_dockerVersion = value; } /** *

The Docker version that's running on the container instance.

*/ inline void SetDockerVersion(Aws::String&& value) { m_dockerVersionHasBeenSet = true; m_dockerVersion = std::move(value); } /** *

The Docker version that's running on the container instance.

*/ inline void SetDockerVersion(const char* value) { m_dockerVersionHasBeenSet = true; m_dockerVersion.assign(value); } /** *

The Docker version that's running on the container instance.

*/ inline VersionInfo& WithDockerVersion(const Aws::String& value) { SetDockerVersion(value); return *this;} /** *

The Docker version that's running on the container instance.

*/ inline VersionInfo& WithDockerVersion(Aws::String&& value) { SetDockerVersion(std::move(value)); return *this;} /** *

The Docker version that's running on the container instance.

*/ inline VersionInfo& WithDockerVersion(const char* value) { SetDockerVersion(value); return *this;} private: Aws::String m_agentVersion; bool m_agentVersionHasBeenSet = false; Aws::String m_agentHash; bool m_agentHashHasBeenSet = false; Aws::String m_dockerVersion; bool m_dockerVersionHasBeenSet = false; }; } // namespace Model } // namespace ECS } // namespace Aws