AWS SDK for C++  0.14.3
AWS SDK for C++
SpotPlacement.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/ec2/EC2_EXPORTS.h>
19 
20 namespace Aws
21 {
22 namespace Utils
23 {
24 namespace Xml
25 {
26  class XmlNode;
27 } // namespace Xml
28 } // namespace Utils
29 namespace EC2
30 {
31 namespace Model
32 {
33 
38  {
39  public:
40  SpotPlacement();
42  SpotPlacement& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
43 
44  void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
45  void OutputToStream(Aws::OStream& oStream, const char* location) const;
46 
52  inline const Aws::String& GetAvailabilityZone() const{ return m_availabilityZone; }
53 
59  inline void SetAvailabilityZone(const Aws::String& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = value; }
60 
66  inline void SetAvailabilityZone(Aws::String&& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = value; }
67 
73  inline void SetAvailabilityZone(const char* value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone.assign(value); }
74 
80  inline SpotPlacement& WithAvailabilityZone(const Aws::String& value) { SetAvailabilityZone(value); return *this;}
81 
87  inline SpotPlacement& WithAvailabilityZone(Aws::String&& value) { SetAvailabilityZone(value); return *this;}
88 
94  inline SpotPlacement& WithAvailabilityZone(const char* value) { SetAvailabilityZone(value); return *this;}
95 
99  inline const Aws::String& GetGroupName() const{ return m_groupName; }
100 
104  inline void SetGroupName(const Aws::String& value) { m_groupNameHasBeenSet = true; m_groupName = value; }
105 
109  inline void SetGroupName(Aws::String&& value) { m_groupNameHasBeenSet = true; m_groupName = value; }
110 
114  inline void SetGroupName(const char* value) { m_groupNameHasBeenSet = true; m_groupName.assign(value); }
115 
119  inline SpotPlacement& WithGroupName(const Aws::String& value) { SetGroupName(value); return *this;}
120 
124  inline SpotPlacement& WithGroupName(Aws::String&& value) { SetGroupName(value); return *this;}
125 
129  inline SpotPlacement& WithGroupName(const char* value) { SetGroupName(value); return *this;}
130 
131  private:
132  Aws::String m_availabilityZone;
133  bool m_availabilityZoneHasBeenSet;
134  Aws::String m_groupName;
135  bool m_groupNameHasBeenSet;
136  };
137 
138 } // namespace Model
139 } // namespace EC2
140 } // namespace Aws
const Aws::String & GetAvailabilityZone() const
Definition: SpotPlacement.h:52
SpotPlacement & WithAvailabilityZone(const char *value)
Definition: SpotPlacement.h:94
void SetAvailabilityZone(Aws::String &&value)
Definition: SpotPlacement.h:66
SpotPlacement & WithGroupName(Aws::String &&value)
void SetAvailabilityZone(const char *value)
Definition: SpotPlacement.h:73
SpotPlacement & WithAvailabilityZone(Aws::String &&value)
Definition: SpotPlacement.h:87
void SetGroupName(const char *value)
void SetAvailabilityZone(const Aws::String &value)
Definition: SpotPlacement.h:59
std::basic_ostream< char, std::char_traits< char > > OStream
Definition: AWSStreamFwd.h:31
void SetGroupName(const Aws::String &value)
SpotPlacement & WithGroupName(const char *value)
SpotPlacement & WithAvailabilityZone(const Aws::String &value)
Definition: SpotPlacement.h:80
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
const Aws::String & GetGroupName() const
Definition: SpotPlacement.h:99
SpotPlacement & WithGroupName(const Aws::String &value)
#define AWS_EC2_API
Definition: EC2_EXPORTS.h:37
void SetGroupName(Aws::String &&value)
JSON (JavaScript Object Notation).