AWS SDK for C++  0.14.3
AWS SDK for C++
PendingModifiedValues.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
20 
21 namespace Aws
22 {
23 namespace Utils
24 {
25 namespace Xml
26 {
27  class XmlNode;
28 } // namespace Xml
29 } // namespace Utils
30 namespace ElastiCache
31 {
32 namespace Model
33 {
34 
40  {
41  public:
44  PendingModifiedValues& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
45 
46  void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
47  void OutputToStream(Aws::OStream& oStream, const char* location) const;
48 
54  inline int GetNumCacheNodes() const{ return m_numCacheNodes; }
55 
61  inline void SetNumCacheNodes(int value) { m_numCacheNodesHasBeenSet = true; m_numCacheNodes = value; }
62 
68  inline PendingModifiedValues& WithNumCacheNodes(int value) { SetNumCacheNodes(value); return *this;}
69 
74  inline const Aws::Vector<Aws::String>& GetCacheNodeIdsToRemove() const{ return m_cacheNodeIdsToRemove; }
75 
80  inline void SetCacheNodeIdsToRemove(const Aws::Vector<Aws::String>& value) { m_cacheNodeIdsToRemoveHasBeenSet = true; m_cacheNodeIdsToRemove = value; }
81 
86  inline void SetCacheNodeIdsToRemove(Aws::Vector<Aws::String>&& value) { m_cacheNodeIdsToRemoveHasBeenSet = true; m_cacheNodeIdsToRemove = value; }
87 
92  inline PendingModifiedValues& WithCacheNodeIdsToRemove(const Aws::Vector<Aws::String>& value) { SetCacheNodeIdsToRemove(value); return *this;}
93 
98  inline PendingModifiedValues& WithCacheNodeIdsToRemove(Aws::Vector<Aws::String>&& value) { SetCacheNodeIdsToRemove(value); return *this;}
99 
104  inline PendingModifiedValues& AddCacheNodeIdsToRemove(const Aws::String& value) { m_cacheNodeIdsToRemoveHasBeenSet = true; m_cacheNodeIdsToRemove.push_back(value); return *this; }
105 
110  inline PendingModifiedValues& AddCacheNodeIdsToRemove(Aws::String&& value) { m_cacheNodeIdsToRemoveHasBeenSet = true; m_cacheNodeIdsToRemove.push_back(value); return *this; }
111 
116  inline PendingModifiedValues& AddCacheNodeIdsToRemove(const char* value) { m_cacheNodeIdsToRemoveHasBeenSet = true; m_cacheNodeIdsToRemove.push_back(value); return *this; }
117 
121  inline const Aws::String& GetEngineVersion() const{ return m_engineVersion; }
122 
126  inline void SetEngineVersion(const Aws::String& value) { m_engineVersionHasBeenSet = true; m_engineVersion = value; }
127 
131  inline void SetEngineVersion(Aws::String&& value) { m_engineVersionHasBeenSet = true; m_engineVersion = value; }
132 
136  inline void SetEngineVersion(const char* value) { m_engineVersionHasBeenSet = true; m_engineVersion.assign(value); }
137 
141  inline PendingModifiedValues& WithEngineVersion(const Aws::String& value) { SetEngineVersion(value); return *this;}
142 
146  inline PendingModifiedValues& WithEngineVersion(Aws::String&& value) { SetEngineVersion(value); return *this;}
147 
151  inline PendingModifiedValues& WithEngineVersion(const char* value) { SetEngineVersion(value); return *this;}
152 
157  inline const Aws::String& GetCacheNodeType() const{ return m_cacheNodeType; }
158 
163  inline void SetCacheNodeType(const Aws::String& value) { m_cacheNodeTypeHasBeenSet = true; m_cacheNodeType = value; }
164 
169  inline void SetCacheNodeType(Aws::String&& value) { m_cacheNodeTypeHasBeenSet = true; m_cacheNodeType = value; }
170 
175  inline void SetCacheNodeType(const char* value) { m_cacheNodeTypeHasBeenSet = true; m_cacheNodeType.assign(value); }
176 
181  inline PendingModifiedValues& WithCacheNodeType(const Aws::String& value) { SetCacheNodeType(value); return *this;}
182 
187  inline PendingModifiedValues& WithCacheNodeType(Aws::String&& value) { SetCacheNodeType(value); return *this;}
188 
193  inline PendingModifiedValues& WithCacheNodeType(const char* value) { SetCacheNodeType(value); return *this;}
194 
195  private:
196  int m_numCacheNodes;
197  bool m_numCacheNodesHasBeenSet;
198  Aws::Vector<Aws::String> m_cacheNodeIdsToRemove;
199  bool m_cacheNodeIdsToRemoveHasBeenSet;
200  Aws::String m_engineVersion;
201  bool m_engineVersionHasBeenSet;
202  Aws::String m_cacheNodeType;
203  bool m_cacheNodeTypeHasBeenSet;
204  };
205 
206 } // namespace Model
207 } // namespace ElastiCache
208 } // namespace Aws
PendingModifiedValues & WithCacheNodeType(const Aws::String &value)
PendingModifiedValues & WithEngineVersion(Aws::String &&value)
void SetCacheNodeIdsToRemove(Aws::Vector< Aws::String > &&value)
PendingModifiedValues & AddCacheNodeIdsToRemove(const char *value)
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
PendingModifiedValues & WithCacheNodeType(const char *value)
void SetCacheNodeIdsToRemove(const Aws::Vector< Aws::String > &value)
PendingModifiedValues & WithEngineVersion(const Aws::String &value)
PendingModifiedValues & AddCacheNodeIdsToRemove(const Aws::String &value)
const Aws::Vector< Aws::String > & GetCacheNodeIdsToRemove() const
PendingModifiedValues & WithCacheNodeType(Aws::String &&value)
std::basic_ostream< char, std::char_traits< char > > OStream
Definition: AWSStreamFwd.h:31
PendingModifiedValues & WithNumCacheNodes(int value)
PendingModifiedValues & WithCacheNodeIdsToRemove(const Aws::Vector< Aws::String > &value)
PendingModifiedValues & WithCacheNodeIdsToRemove(Aws::Vector< Aws::String > &&value)
PendingModifiedValues & WithEngineVersion(const char *value)
PendingModifiedValues & AddCacheNodeIdsToRemove(Aws::String &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
#define AWS_ELASTICACHE_API
JSON (JavaScript Object Notation).