AWS SDK for C++  0.12.9
AWS SDK for C++
OriginSslProtocols.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 
39  {
40  public:
43  OriginSslProtocols& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
44 
45  void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
46 
51  inline long GetQuantity() const{ return m_quantity; }
52 
57  inline void SetQuantity(long value) { m_quantityHasBeenSet = true; m_quantity = value; }
58 
63  inline OriginSslProtocols& WithQuantity(long value) { SetQuantity(value); return *this;}
64 
70  inline const Aws::Vector<SslProtocol>& GetItems() const{ return m_items; }
71 
77  inline void SetItems(const Aws::Vector<SslProtocol>& value) { m_itemsHasBeenSet = true; m_items = value; }
78 
84  inline void SetItems(Aws::Vector<SslProtocol>&& value) { m_itemsHasBeenSet = true; m_items = value; }
85 
91  inline OriginSslProtocols& WithItems(const Aws::Vector<SslProtocol>& value) { SetItems(value); return *this;}
92 
98  inline OriginSslProtocols& WithItems(Aws::Vector<SslProtocol>&& value) { SetItems(value); return *this;}
99 
105  inline OriginSslProtocols& AddItems(const SslProtocol& value) { m_itemsHasBeenSet = true; m_items.push_back(value); return *this; }
106 
112  inline OriginSslProtocols& AddItems(SslProtocol&& 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<SslProtocol> m_items;
118  bool m_itemsHasBeenSet;
119  };
120 
121 } // namespace Model
122 } // namespace CloudFront
123 } // namespace Aws
const Aws::Vector< SslProtocol > & GetItems() const
OriginSslProtocols & WithItems(Aws::Vector< SslProtocol > &&value)
void SetItems(Aws::Vector< SslProtocol > &&value)
OriginSslProtocols & AddItems(SslProtocol &&value)
void SetItems(const Aws::Vector< SslProtocol > &value)
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
OriginSslProtocols & WithItems(const Aws::Vector< SslProtocol > &value)
OriginSslProtocols & WithQuantity(long value)
#define AWS_CLOUDFRONT_API
OriginSslProtocols & AddItems(const SslProtocol &value)
JSON (JavaScript Object Notation).