AWS SDK for C++  0.12.9
AWS SDK for C++
TaskDefinition.h
Go to the documentation of this file.
1 /*
2 * Copyright 2010-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License").
5 * You may not use this file except in compliance with the License.
6 * A copy of the License is located at
7 *
8 * http://aws.amazon.com/apache2.0
9 *
10 * or in the "license" file accompanying this file. This file is distributed
11 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
12 * express or implied. See the License for the specific language governing
13 * permissions and limitations under the License.
14 */
15 #pragma once
16 #include <aws/ecs/ECS_EXPORTS.h>
21 #include <aws/ecs/model/Volume.h>
23 
24 namespace Aws
25 {
26 namespace Utils
27 {
28 namespace Json
29 {
30  class JsonValue;
31 } // namespace Json
32 } // namespace Utils
33 namespace ECS
34 {
35 namespace Model
36 {
37 
42  {
43  public:
46  TaskDefinition& operator=(const Aws::Utils::Json::JsonValue& jsonValue);
47  Aws::Utils::Json::JsonValue Jsonize() const;
48 
52  inline const Aws::String& GetTaskDefinitionArn() const{ return m_taskDefinitionArn; }
53 
57  inline void SetTaskDefinitionArn(const Aws::String& value) { m_taskDefinitionArnHasBeenSet = true; m_taskDefinitionArn = value; }
58 
62  inline void SetTaskDefinitionArn(Aws::String&& value) { m_taskDefinitionArnHasBeenSet = true; m_taskDefinitionArn = value; }
63 
67  inline void SetTaskDefinitionArn(const char* value) { m_taskDefinitionArnHasBeenSet = true; m_taskDefinitionArn.assign(value); }
68 
72  inline TaskDefinition& WithTaskDefinitionArn(const Aws::String& value) { SetTaskDefinitionArn(value); return *this;}
73 
77  inline TaskDefinition& WithTaskDefinitionArn(Aws::String&& value) { SetTaskDefinitionArn(value); return *this;}
78 
82  inline TaskDefinition& WithTaskDefinitionArn(const char* value) { SetTaskDefinitionArn(value); return *this;}
83 
92  inline const Aws::Vector<ContainerDefinition>& GetContainerDefinitions() const{ return m_containerDefinitions; }
93 
102  inline void SetContainerDefinitions(const Aws::Vector<ContainerDefinition>& value) { m_containerDefinitionsHasBeenSet = true; m_containerDefinitions = value; }
103 
112  inline void SetContainerDefinitions(Aws::Vector<ContainerDefinition>&& value) { m_containerDefinitionsHasBeenSet = true; m_containerDefinitions = value; }
113 
122  inline TaskDefinition& WithContainerDefinitions(const Aws::Vector<ContainerDefinition>& value) { SetContainerDefinitions(value); return *this;}
123 
132  inline TaskDefinition& WithContainerDefinitions(Aws::Vector<ContainerDefinition>&& value) { SetContainerDefinitions(value); return *this;}
133 
142  inline TaskDefinition& AddContainerDefinitions(const ContainerDefinition& value) { m_containerDefinitionsHasBeenSet = true; m_containerDefinitions.push_back(value); return *this; }
143 
152  inline TaskDefinition& AddContainerDefinitions(ContainerDefinition&& value) { m_containerDefinitionsHasBeenSet = true; m_containerDefinitions.push_back(value); return *this; }
153 
157  inline const Aws::String& GetFamily() const{ return m_family; }
158 
162  inline void SetFamily(const Aws::String& value) { m_familyHasBeenSet = true; m_family = value; }
163 
167  inline void SetFamily(Aws::String&& value) { m_familyHasBeenSet = true; m_family = value; }
168 
172  inline void SetFamily(const char* value) { m_familyHasBeenSet = true; m_family.assign(value); }
173 
177  inline TaskDefinition& WithFamily(const Aws::String& value) { SetFamily(value); return *this;}
178 
182  inline TaskDefinition& WithFamily(Aws::String&& value) { SetFamily(value); return *this;}
183 
187  inline TaskDefinition& WithFamily(const char* value) { SetFamily(value); return *this;}
188 
197  inline long GetRevision() const{ return m_revision; }
198 
207  inline void SetRevision(long value) { m_revisionHasBeenSet = true; m_revision = value; }
208 
217  inline TaskDefinition& WithRevision(long value) { SetRevision(value); return *this;}
218 
226  inline const Aws::Vector<Volume>& GetVolumes() const{ return m_volumes; }
227 
235  inline void SetVolumes(const Aws::Vector<Volume>& value) { m_volumesHasBeenSet = true; m_volumes = value; }
236 
244  inline void SetVolumes(Aws::Vector<Volume>&& value) { m_volumesHasBeenSet = true; m_volumes = value; }
245 
253  inline TaskDefinition& WithVolumes(const Aws::Vector<Volume>& value) { SetVolumes(value); return *this;}
254 
262  inline TaskDefinition& WithVolumes(Aws::Vector<Volume>&& value) { SetVolumes(value); return *this;}
263 
271  inline TaskDefinition& AddVolumes(const Volume& value) { m_volumesHasBeenSet = true; m_volumes.push_back(value); return *this; }
272 
280  inline TaskDefinition& AddVolumes(Volume&& value) { m_volumesHasBeenSet = true; m_volumes.push_back(value); return *this; }
281 
285  inline const TaskDefinitionStatus& GetStatus() const{ return m_status; }
286 
290  inline void SetStatus(const TaskDefinitionStatus& value) { m_statusHasBeenSet = true; m_status = value; }
291 
295  inline void SetStatus(TaskDefinitionStatus&& value) { m_statusHasBeenSet = true; m_status = value; }
296 
300  inline TaskDefinition& WithStatus(const TaskDefinitionStatus& value) { SetStatus(value); return *this;}
301 
305  inline TaskDefinition& WithStatus(TaskDefinitionStatus&& value) { SetStatus(value); return *this;}
306 
310  inline const Aws::Vector<Attribute>& GetRequiresAttributes() const{ return m_requiresAttributes; }
311 
315  inline void SetRequiresAttributes(const Aws::Vector<Attribute>& value) { m_requiresAttributesHasBeenSet = true; m_requiresAttributes = value; }
316 
320  inline void SetRequiresAttributes(Aws::Vector<Attribute>&& value) { m_requiresAttributesHasBeenSet = true; m_requiresAttributes = value; }
321 
325  inline TaskDefinition& WithRequiresAttributes(const Aws::Vector<Attribute>& value) { SetRequiresAttributes(value); return *this;}
326 
330  inline TaskDefinition& WithRequiresAttributes(Aws::Vector<Attribute>&& value) { SetRequiresAttributes(value); return *this;}
331 
335  inline TaskDefinition& AddRequiresAttributes(const Attribute& value) { m_requiresAttributesHasBeenSet = true; m_requiresAttributes.push_back(value); return *this; }
336 
340  inline TaskDefinition& AddRequiresAttributes(Attribute&& value) { m_requiresAttributesHasBeenSet = true; m_requiresAttributes.push_back(value); return *this; }
341 
342  private:
343  Aws::String m_taskDefinitionArn;
344  bool m_taskDefinitionArnHasBeenSet;
345  Aws::Vector<ContainerDefinition> m_containerDefinitions;
346  bool m_containerDefinitionsHasBeenSet;
347  Aws::String m_family;
348  bool m_familyHasBeenSet;
349  long m_revision;
350  bool m_revisionHasBeenSet;
351  Aws::Vector<Volume> m_volumes;
352  bool m_volumesHasBeenSet;
353  TaskDefinitionStatus m_status;
354  bool m_statusHasBeenSet;
355  Aws::Vector<Attribute> m_requiresAttributes;
356  bool m_requiresAttributesHasBeenSet;
357  };
358 
359 } // namespace Model
360 } // namespace ECS
361 } // namespace Aws
TaskDefinition & WithFamily(const Aws::String &value)
void SetTaskDefinitionArn(const Aws::String &value)
TaskDefinition & WithTaskDefinitionArn(const char *value)
TaskDefinition & WithTaskDefinitionArn(Aws::String &&value)
TaskDefinition & WithFamily(const char *value)
TaskDefinition & WithContainerDefinitions(const Aws::Vector< ContainerDefinition > &value)
#define AWS_ECS_API
Definition: ECS_EXPORTS.h:34
void SetVolumes(const Aws::Vector< Volume > &value)
void SetRequiresAttributes(const Aws::Vector< Attribute > &value)
TaskDefinition & WithVolumes(const Aws::Vector< Volume > &value)
TaskDefinition & WithTaskDefinitionArn(const Aws::String &value)
void SetFamily(const char *value)
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
TaskDefinition & AddVolumes(Volume &&value)
void SetRequiresAttributes(Aws::Vector< Attribute > &&value)
void SetVolumes(Aws::Vector< Volume > &&value)
void SetStatus(const TaskDefinitionStatus &value)
void SetTaskDefinitionArn(const char *value)
void SetContainerDefinitions(const Aws::Vector< ContainerDefinition > &value)
TaskDefinition & AddRequiresAttributes(const Attribute &value)
void SetStatus(TaskDefinitionStatus &&value)
TaskDefinition & WithStatus(TaskDefinitionStatus &&value)
TaskDefinition & AddRequiresAttributes(Attribute &&value)
const Aws::String & GetFamily() const
const Aws::Vector< Attribute > & GetRequiresAttributes() const
void SetContainerDefinitions(Aws::Vector< ContainerDefinition > &&value)
TaskDefinition & AddContainerDefinitions(const ContainerDefinition &value)
void SetFamily(Aws::String &&value)
const TaskDefinitionStatus & GetStatus() const
TaskDefinition & WithRevision(long value)
TaskDefinition & WithRequiresAttributes(Aws::Vector< Attribute > &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
TaskDefinition & WithFamily(Aws::String &&value)
TaskDefinition & WithContainerDefinitions(Aws::Vector< ContainerDefinition > &&value)
TaskDefinition & WithStatus(const TaskDefinitionStatus &value)
TaskDefinition & AddContainerDefinitions(ContainerDefinition &&value)
void SetTaskDefinitionArn(Aws::String &&value)
void SetFamily(const Aws::String &value)
TaskDefinition & WithVolumes(Aws::Vector< Volume > &&value)
const Aws::String & GetTaskDefinitionArn() const
TaskDefinition & WithRequiresAttributes(const Aws::Vector< Attribute > &value)
const Aws::Vector< ContainerDefinition > & GetContainerDefinitions() const
TaskDefinition & AddVolumes(const Volume &value)
JSON (JavaScript Object Notation).
const Aws::Vector< Volume > & GetVolumes() const