AWS SDK for C++  0.12.9
AWS SDK for C++
Volume.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>
19 
20 namespace Aws
21 {
22 namespace Utils
23 {
24 namespace Json
25 {
26  class JsonValue;
27 } // namespace Json
28 } // namespace Utils
29 namespace ECS
30 {
31 namespace Model
32 {
33 
38  {
39  public:
40  Volume();
41  Volume(const Aws::Utils::Json::JsonValue& jsonValue);
42  Volume& operator=(const Aws::Utils::Json::JsonValue& jsonValue);
43  Aws::Utils::Json::JsonValue Jsonize() const;
44 
51  inline const Aws::String& GetName() const{ return m_name; }
52 
59  inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
60 
67  inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = value; }
68 
75  inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
76 
83  inline Volume& WithName(const Aws::String& value) { SetName(value); return *this;}
84 
91  inline Volume& WithName(Aws::String&& value) { SetName(value); return *this;}
92 
99  inline Volume& WithName(const char* value) { SetName(value); return *this;}
100 
108  inline const HostVolumeProperties& GetHost() const{ return m_host; }
109 
117  inline void SetHost(const HostVolumeProperties& value) { m_hostHasBeenSet = true; m_host = value; }
118 
126  inline void SetHost(HostVolumeProperties&& value) { m_hostHasBeenSet = true; m_host = value; }
127 
135  inline Volume& WithHost(const HostVolumeProperties& value) { SetHost(value); return *this;}
136 
144  inline Volume& WithHost(HostVolumeProperties&& value) { SetHost(value); return *this;}
145 
146  private:
147  Aws::String m_name;
148  bool m_nameHasBeenSet;
149  HostVolumeProperties m_host;
150  bool m_hostHasBeenSet;
151  };
152 
153 } // namespace Model
154 } // namespace ECS
155 } // namespace Aws
const Aws::String & GetName() const
Definition: Volume.h:51
#define AWS_ECS_API
Definition: ECS_EXPORTS.h:34
Volume & WithHost(HostVolumeProperties &&value)
Definition: Volume.h:144
void SetName(const Aws::String &value)
Definition: Volume.h:59
void SetName(Aws::String &&value)
Definition: Volume.h:67
const HostVolumeProperties & GetHost() const
Definition: Volume.h:108
Volume & WithName(const Aws::String &value)
Definition: Volume.h:83
void SetHost(HostVolumeProperties &&value)
Definition: Volume.h:126
void SetName(const char *value)
Definition: Volume.h:75
Volume & WithName(const char *value)
Definition: Volume.h:99
Volume & WithName(Aws::String &&value)
Definition: Volume.h:91
Volume & WithHost(const HostVolumeProperties &value)
Definition: Volume.h:135
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
void SetHost(const HostVolumeProperties &value)
Definition: Volume.h:117
JSON (JavaScript Object Notation).