AWS SDK for C++  0.12.9
AWS SDK for C++
AdditionalAttribute.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 ElasticLoadBalancing
30 {
31 namespace Model
32 {
33 
38  {
39  public:
42  AdditionalAttribute& 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 
50  inline const Aws::String& GetKey() const{ return m_key; }
51 
55  inline void SetKey(const Aws::String& value) { m_keyHasBeenSet = true; m_key = value; }
56 
60  inline void SetKey(Aws::String&& value) { m_keyHasBeenSet = true; m_key = value; }
61 
65  inline void SetKey(const char* value) { m_keyHasBeenSet = true; m_key.assign(value); }
66 
70  inline AdditionalAttribute& WithKey(const Aws::String& value) { SetKey(value); return *this;}
71 
75  inline AdditionalAttribute& WithKey(Aws::String&& value) { SetKey(value); return *this;}
76 
80  inline AdditionalAttribute& WithKey(const char* value) { SetKey(value); return *this;}
81 
85  inline const Aws::String& GetValue() const{ return m_value; }
86 
90  inline void SetValue(const Aws::String& value) { m_valueHasBeenSet = true; m_value = value; }
91 
95  inline void SetValue(Aws::String&& value) { m_valueHasBeenSet = true; m_value = value; }
96 
100  inline void SetValue(const char* value) { m_valueHasBeenSet = true; m_value.assign(value); }
101 
105  inline AdditionalAttribute& WithValue(const Aws::String& value) { SetValue(value); return *this;}
106 
110  inline AdditionalAttribute& WithValue(Aws::String&& value) { SetValue(value); return *this;}
111 
115  inline AdditionalAttribute& WithValue(const char* value) { SetValue(value); return *this;}
116 
117  private:
118  Aws::String m_key;
119  bool m_keyHasBeenSet;
120  Aws::String m_value;
121  bool m_valueHasBeenSet;
122  };
123 
124 } // namespace Model
125 } // namespace ElasticLoadBalancing
126 } // namespace Aws
AdditionalAttribute & WithValue(const Aws::String &value)
AdditionalAttribute & WithKey(const char *value)
std::basic_ostream< char, std::char_traits< char > > OStream
Definition: AWSStreamFwd.h:31
AdditionalAttribute & WithKey(Aws::String &&value)
AdditionalAttribute & WithKey(const Aws::String &value)
AdditionalAttribute & WithValue(const char *value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
#define AWS_ELASTICLOADBALANCING_API
AdditionalAttribute & WithValue(Aws::String &&value)
JSON (JavaScript Object Notation).