AWS SDK for C++  0.14.3
AWS SDK for C++
TargetGroupAttribute.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
19 
20 namespace Aws
21 {
22 namespace Utils
23 {
24 namespace Xml
25 {
26  class XmlNode;
27 } // namespace Xml
28 } // namespace Utils
29 namespace ElasticLoadBalancingv2
30 {
31 namespace Model
32 {
33 
38  {
39  public:
42  TargetGroupAttribute& 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 
62  inline const Aws::String& GetKey() const{ return m_key; }
63 
79  inline void SetKey(const Aws::String& value) { m_keyHasBeenSet = true; m_key = value; }
80 
96  inline void SetKey(Aws::String&& value) { m_keyHasBeenSet = true; m_key = value; }
97 
113  inline void SetKey(const char* value) { m_keyHasBeenSet = true; m_key.assign(value); }
114 
130  inline TargetGroupAttribute& WithKey(const Aws::String& value) { SetKey(value); return *this;}
131 
147  inline TargetGroupAttribute& WithKey(Aws::String&& value) { SetKey(value); return *this;}
148 
164  inline TargetGroupAttribute& WithKey(const char* value) { SetKey(value); return *this;}
165 
169  inline const Aws::String& GetValue() const{ return m_value; }
170 
174  inline void SetValue(const Aws::String& value) { m_valueHasBeenSet = true; m_value = value; }
175 
179  inline void SetValue(Aws::String&& value) { m_valueHasBeenSet = true; m_value = value; }
180 
184  inline void SetValue(const char* value) { m_valueHasBeenSet = true; m_value.assign(value); }
185 
189  inline TargetGroupAttribute& WithValue(const Aws::String& value) { SetValue(value); return *this;}
190 
194  inline TargetGroupAttribute& WithValue(Aws::String&& value) { SetValue(value); return *this;}
195 
199  inline TargetGroupAttribute& WithValue(const char* value) { SetValue(value); return *this;}
200 
201  private:
202  Aws::String m_key;
203  bool m_keyHasBeenSet;
204  Aws::String m_value;
205  bool m_valueHasBeenSet;
206  };
207 
208 } // namespace Model
209 } // namespace ElasticLoadBalancingv2
210 } // namespace Aws
TargetGroupAttribute & WithKey(Aws::String &&value)
std::basic_ostream< char, std::char_traits< char > > OStream
Definition: AWSStreamFwd.h:31
TargetGroupAttribute & WithValue(Aws::String &&value)
TargetGroupAttribute & WithValue(const Aws::String &value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
TargetGroupAttribute & WithKey(const char *value)
TargetGroupAttribute & WithKey(const Aws::String &value)
#define AWS_ELASTICLOADBALANCINGV2_API
TargetGroupAttribute & WithValue(const char *value)
JSON (JavaScript Object Notation).