1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #pragma once 7 #include <aws/ecs/ECS_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSString.h> 9 #include <utility> 10 11 namespace Aws 12 { 13 namespace Utils 14 { 15 namespace Json 16 { 17 class JsonValue; 18 class JsonView; 19 } // namespace Json 20 } // namespace Utils 21 namespace ECS 22 { 23 namespace Model 24 { 25 26 /** 27 * <p>The Docker and Amazon ECS container agent version information about a 28 * container instance.</p><p><h3>See Also:</h3> <a 29 * href="http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/VersionInfo">AWS API 30 * Reference</a></p> 31 */ 32 class AWS_ECS_API VersionInfo 33 { 34 public: 35 VersionInfo(); 36 VersionInfo(Aws::Utils::Json::JsonView jsonValue); 37 VersionInfo& operator=(Aws::Utils::Json::JsonView jsonValue); 38 Aws::Utils::Json::JsonValue Jsonize() const; 39 40 41 /** 42 * <p>The version number of the Amazon ECS container agent.</p> 43 */ GetAgentVersion()44 inline const Aws::String& GetAgentVersion() const{ return m_agentVersion; } 45 46 /** 47 * <p>The version number of the Amazon ECS container agent.</p> 48 */ AgentVersionHasBeenSet()49 inline bool AgentVersionHasBeenSet() const { return m_agentVersionHasBeenSet; } 50 51 /** 52 * <p>The version number of the Amazon ECS container agent.</p> 53 */ SetAgentVersion(const Aws::String & value)54 inline void SetAgentVersion(const Aws::String& value) { m_agentVersionHasBeenSet = true; m_agentVersion = value; } 55 56 /** 57 * <p>The version number of the Amazon ECS container agent.</p> 58 */ SetAgentVersion(Aws::String && value)59 inline void SetAgentVersion(Aws::String&& value) { m_agentVersionHasBeenSet = true; m_agentVersion = std::move(value); } 60 61 /** 62 * <p>The version number of the Amazon ECS container agent.</p> 63 */ SetAgentVersion(const char * value)64 inline void SetAgentVersion(const char* value) { m_agentVersionHasBeenSet = true; m_agentVersion.assign(value); } 65 66 /** 67 * <p>The version number of the Amazon ECS container agent.</p> 68 */ WithAgentVersion(const Aws::String & value)69 inline VersionInfo& WithAgentVersion(const Aws::String& value) { SetAgentVersion(value); return *this;} 70 71 /** 72 * <p>The version number of the Amazon ECS container agent.</p> 73 */ WithAgentVersion(Aws::String && value)74 inline VersionInfo& WithAgentVersion(Aws::String&& value) { SetAgentVersion(std::move(value)); return *this;} 75 76 /** 77 * <p>The version number of the Amazon ECS container agent.</p> 78 */ WithAgentVersion(const char * value)79 inline VersionInfo& WithAgentVersion(const char* value) { SetAgentVersion(value); return *this;} 80 81 82 /** 83 * <p>The Git commit hash for the Amazon ECS container agent build on the <a 84 * href="https://github.com/aws/amazon-ecs-agent/commits/master">amazon-ecs-agent 85 * </a> GitHub repository.</p> 86 */ GetAgentHash()87 inline const Aws::String& GetAgentHash() const{ return m_agentHash; } 88 89 /** 90 * <p>The Git commit hash for the Amazon ECS container agent build on the <a 91 * href="https://github.com/aws/amazon-ecs-agent/commits/master">amazon-ecs-agent 92 * </a> GitHub repository.</p> 93 */ AgentHashHasBeenSet()94 inline bool AgentHashHasBeenSet() const { return m_agentHashHasBeenSet; } 95 96 /** 97 * <p>The Git commit hash for the Amazon ECS container agent build on the <a 98 * href="https://github.com/aws/amazon-ecs-agent/commits/master">amazon-ecs-agent 99 * </a> GitHub repository.</p> 100 */ SetAgentHash(const Aws::String & value)101 inline void SetAgentHash(const Aws::String& value) { m_agentHashHasBeenSet = true; m_agentHash = value; } 102 103 /** 104 * <p>The Git commit hash for the Amazon ECS container agent build on the <a 105 * href="https://github.com/aws/amazon-ecs-agent/commits/master">amazon-ecs-agent 106 * </a> GitHub repository.</p> 107 */ SetAgentHash(Aws::String && value)108 inline void SetAgentHash(Aws::String&& value) { m_agentHashHasBeenSet = true; m_agentHash = std::move(value); } 109 110 /** 111 * <p>The Git commit hash for the Amazon ECS container agent build on the <a 112 * href="https://github.com/aws/amazon-ecs-agent/commits/master">amazon-ecs-agent 113 * </a> GitHub repository.</p> 114 */ SetAgentHash(const char * value)115 inline void SetAgentHash(const char* value) { m_agentHashHasBeenSet = true; m_agentHash.assign(value); } 116 117 /** 118 * <p>The Git commit hash for the Amazon ECS container agent build on the <a 119 * href="https://github.com/aws/amazon-ecs-agent/commits/master">amazon-ecs-agent 120 * </a> GitHub repository.</p> 121 */ WithAgentHash(const Aws::String & value)122 inline VersionInfo& WithAgentHash(const Aws::String& value) { SetAgentHash(value); return *this;} 123 124 /** 125 * <p>The Git commit hash for the Amazon ECS container agent build on the <a 126 * href="https://github.com/aws/amazon-ecs-agent/commits/master">amazon-ecs-agent 127 * </a> GitHub repository.</p> 128 */ WithAgentHash(Aws::String && value)129 inline VersionInfo& WithAgentHash(Aws::String&& value) { SetAgentHash(std::move(value)); return *this;} 130 131 /** 132 * <p>The Git commit hash for the Amazon ECS container agent build on the <a 133 * href="https://github.com/aws/amazon-ecs-agent/commits/master">amazon-ecs-agent 134 * </a> GitHub repository.</p> 135 */ WithAgentHash(const char * value)136 inline VersionInfo& WithAgentHash(const char* value) { SetAgentHash(value); return *this;} 137 138 139 /** 140 * <p>The Docker version running on the container instance.</p> 141 */ GetDockerVersion()142 inline const Aws::String& GetDockerVersion() const{ return m_dockerVersion; } 143 144 /** 145 * <p>The Docker version running on the container instance.</p> 146 */ DockerVersionHasBeenSet()147 inline bool DockerVersionHasBeenSet() const { return m_dockerVersionHasBeenSet; } 148 149 /** 150 * <p>The Docker version running on the container instance.</p> 151 */ SetDockerVersion(const Aws::String & value)152 inline void SetDockerVersion(const Aws::String& value) { m_dockerVersionHasBeenSet = true; m_dockerVersion = value; } 153 154 /** 155 * <p>The Docker version running on the container instance.</p> 156 */ SetDockerVersion(Aws::String && value)157 inline void SetDockerVersion(Aws::String&& value) { m_dockerVersionHasBeenSet = true; m_dockerVersion = std::move(value); } 158 159 /** 160 * <p>The Docker version running on the container instance.</p> 161 */ SetDockerVersion(const char * value)162 inline void SetDockerVersion(const char* value) { m_dockerVersionHasBeenSet = true; m_dockerVersion.assign(value); } 163 164 /** 165 * <p>The Docker version running on the container instance.</p> 166 */ WithDockerVersion(const Aws::String & value)167 inline VersionInfo& WithDockerVersion(const Aws::String& value) { SetDockerVersion(value); return *this;} 168 169 /** 170 * <p>The Docker version running on the container instance.</p> 171 */ WithDockerVersion(Aws::String && value)172 inline VersionInfo& WithDockerVersion(Aws::String&& value) { SetDockerVersion(std::move(value)); return *this;} 173 174 /** 175 * <p>The Docker version running on the container instance.</p> 176 */ WithDockerVersion(const char * value)177 inline VersionInfo& WithDockerVersion(const char* value) { SetDockerVersion(value); return *this;} 178 179 private: 180 181 Aws::String m_agentVersion; 182 bool m_agentVersionHasBeenSet; 183 184 Aws::String m_agentHash; 185 bool m_agentHashHasBeenSet; 186 187 Aws::String m_dockerVersion; 188 bool m_dockerVersionHasBeenSet; 189 }; 190 191 } // namespace Model 192 } // namespace ECS 193 } // namespace Aws 194