AWS SDK for C++  0.12.9
AWS SDK for C++
RegisterTaskDefinitionRequest.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>
17 #include <aws/ecs/ECSRequest.h>
21 #include <aws/ecs/model/Volume.h>
22 
23 namespace Aws
24 {
25 namespace ECS
26 {
27 namespace Model
28 {
29 
33  {
34  public:
36  Aws::String SerializePayload() const override;
37 
38  Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
39 
47  inline const Aws::String& GetFamily() const{ return m_family; }
48 
56  inline void SetFamily(const Aws::String& value) { m_familyHasBeenSet = true; m_family = value; }
57 
65  inline void SetFamily(Aws::String&& value) { m_familyHasBeenSet = true; m_family = value; }
66 
74  inline void SetFamily(const char* value) { m_familyHasBeenSet = true; m_family.assign(value); }
75 
83  inline RegisterTaskDefinitionRequest& WithFamily(const Aws::String& value) { SetFamily(value); return *this;}
84 
92  inline RegisterTaskDefinitionRequest& WithFamily(Aws::String&& value) { SetFamily(value); return *this;}
93 
101  inline RegisterTaskDefinitionRequest& WithFamily(const char* value) { SetFamily(value); return *this;}
102 
107  inline const Aws::Vector<ContainerDefinition>& GetContainerDefinitions() const{ return m_containerDefinitions; }
108 
113  inline void SetContainerDefinitions(const Aws::Vector<ContainerDefinition>& value) { m_containerDefinitionsHasBeenSet = true; m_containerDefinitions = value; }
114 
119  inline void SetContainerDefinitions(Aws::Vector<ContainerDefinition>&& value) { m_containerDefinitionsHasBeenSet = true; m_containerDefinitions = value; }
120 
125  inline RegisterTaskDefinitionRequest& WithContainerDefinitions(const Aws::Vector<ContainerDefinition>& value) { SetContainerDefinitions(value); return *this;}
126 
131  inline RegisterTaskDefinitionRequest& WithContainerDefinitions(Aws::Vector<ContainerDefinition>&& value) { SetContainerDefinitions(value); return *this;}
132 
137  inline RegisterTaskDefinitionRequest& AddContainerDefinitions(const ContainerDefinition& value) { m_containerDefinitionsHasBeenSet = true; m_containerDefinitions.push_back(value); return *this; }
138 
143  inline RegisterTaskDefinitionRequest& AddContainerDefinitions(ContainerDefinition&& value) { m_containerDefinitionsHasBeenSet = true; m_containerDefinitions.push_back(value); return *this; }
144 
149  inline const Aws::Vector<Volume>& GetVolumes() const{ return m_volumes; }
150 
155  inline void SetVolumes(const Aws::Vector<Volume>& value) { m_volumesHasBeenSet = true; m_volumes = value; }
156 
161  inline void SetVolumes(Aws::Vector<Volume>&& value) { m_volumesHasBeenSet = true; m_volumes = value; }
162 
167  inline RegisterTaskDefinitionRequest& WithVolumes(const Aws::Vector<Volume>& value) { SetVolumes(value); return *this;}
168 
173  inline RegisterTaskDefinitionRequest& WithVolumes(Aws::Vector<Volume>&& value) { SetVolumes(value); return *this;}
174 
179  inline RegisterTaskDefinitionRequest& AddVolumes(const Volume& value) { m_volumesHasBeenSet = true; m_volumes.push_back(value); return *this; }
180 
185  inline RegisterTaskDefinitionRequest& AddVolumes(Volume&& value) { m_volumesHasBeenSet = true; m_volumes.push_back(value); return *this; }
186 
187  private:
188  Aws::String m_family;
189  bool m_familyHasBeenSet;
190  Aws::Vector<ContainerDefinition> m_containerDefinitions;
191  bool m_containerDefinitionsHasBeenSet;
192  Aws::Vector<Volume> m_volumes;
193  bool m_volumesHasBeenSet;
194  };
195 
196 } // namespace Model
197 } // namespace ECS
198 } // namespace Aws
RegisterTaskDefinitionRequest & AddVolumes(Volume &&value)
RegisterTaskDefinitionRequest & AddContainerDefinitions(const ContainerDefinition &value)
#define AWS_ECS_API
Definition: ECS_EXPORTS.h:34
const Aws::Vector< ContainerDefinition > & GetContainerDefinitions() const
RegisterTaskDefinitionRequest & WithContainerDefinitions(const Aws::Vector< ContainerDefinition > &value)
RegisterTaskDefinitionRequest & AddContainerDefinitions(ContainerDefinition &&value)
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
Definition: HttpTypes.h:63
RegisterTaskDefinitionRequest & WithFamily(const char *value)
RegisterTaskDefinitionRequest & WithVolumes(const Aws::Vector< Volume > &value)
RegisterTaskDefinitionRequest & WithContainerDefinitions(Aws::Vector< ContainerDefinition > &&value)
RegisterTaskDefinitionRequest & WithFamily(const Aws::String &value)
void SetContainerDefinitions(Aws::Vector< ContainerDefinition > &&value)
void SetVolumes(const Aws::Vector< Volume > &value)
void SetContainerDefinitions(const Aws::Vector< ContainerDefinition > &value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
RegisterTaskDefinitionRequest & WithVolumes(Aws::Vector< Volume > &&value)
RegisterTaskDefinitionRequest & AddVolumes(const Volume &value)
JSON (JavaScript Object Notation).
RegisterTaskDefinitionRequest & WithFamily(Aws::String &&value)