AWS SDK for C++  0.12.9
AWS SDK for C++
CachedMethods.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 CloudFront
30 {
31 namespace Model
32 {
33 
43  {
44  public:
45  CachedMethods();
47  CachedMethods& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
48 
49  void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
50 
56  inline long GetQuantity() const{ return m_quantity; }
57 
63  inline void SetQuantity(long value) { m_quantityHasBeenSet = true; m_quantity = value; }
64 
70  inline CachedMethods& WithQuantity(long value) { SetQuantity(value); return *this;}
71 
76  inline const Aws::Vector<Method>& GetItems() const{ return m_items; }
77 
82  inline void SetItems(const Aws::Vector<Method>& value) { m_itemsHasBeenSet = true; m_items = value; }
83 
88  inline void SetItems(Aws::Vector<Method>&& value) { m_itemsHasBeenSet = true; m_items = value; }
89 
94  inline CachedMethods& WithItems(const Aws::Vector<Method>& value) { SetItems(value); return *this;}
95 
100  inline CachedMethods& WithItems(Aws::Vector<Method>&& value) { SetItems(value); return *this;}
101 
106  inline CachedMethods& AddItems(const Method& value) { m_itemsHasBeenSet = true; m_items.push_back(value); return *this; }
107 
112  inline CachedMethods& AddItems(Method&& value) { m_itemsHasBeenSet = true; m_items.push_back(value); return *this; }
113 
114  private:
115  long m_quantity;
116  bool m_quantityHasBeenSet;
117  Aws::Vector<Method> m_items;
118  bool m_itemsHasBeenSet;
119  };
120 
121 } // namespace Model
122 } // namespace CloudFront
123 } // namespace Aws
CachedMethods & WithItems(Aws::Vector< Method > &&value)
CachedMethods & WithItems(const Aws::Vector< Method > &value)
Definition: CachedMethods.h:94
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
CachedMethods & AddItems(const Method &value)
CachedMethods & AddItems(Method &&value)
#define AWS_CLOUDFRONT_API
void SetItems(const Aws::Vector< Method > &value)
Definition: CachedMethods.h:82
CachedMethods & WithQuantity(long value)
Definition: CachedMethods.h:70
const Aws::Vector< Method > & GetItems() const
Definition: CachedMethods.h:76
void SetItems(Aws::Vector< Method > &&value)
Definition: CachedMethods.h:88
JSON (JavaScript Object Notation).