AWS SDK for C++  0.14.3
AWS SDK for C++
VersioningConfiguration.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
16 #include <aws/s3/S3_EXPORTS.h>
17 #include <aws/s3/model/MFADelete.h>
19 
20 namespace Aws
21 {
22 namespace Utils
23 {
24 namespace Xml
25 {
26  class XmlNode;
27 } // namespace Xml
28 } // namespace Utils
29 namespace S3
30 {
31 namespace Model
32 {
33 
35  {
36  public:
39  VersioningConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
40 
41  void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
42 
48  inline const MFADelete& GetMFADelete() const{ return m_mFADelete; }
49 
55  inline void SetMFADelete(const MFADelete& value) { m_mFADeleteHasBeenSet = true; m_mFADelete = value; }
56 
62  inline void SetMFADelete(MFADelete&& value) { m_mFADeleteHasBeenSet = true; m_mFADelete = value; }
63 
69  inline VersioningConfiguration& WithMFADelete(const MFADelete& value) { SetMFADelete(value); return *this;}
70 
76  inline VersioningConfiguration& WithMFADelete(MFADelete&& value) { SetMFADelete(value); return *this;}
77 
81  inline const BucketVersioningStatus& GetStatus() const{ return m_status; }
82 
86  inline void SetStatus(const BucketVersioningStatus& value) { m_statusHasBeenSet = true; m_status = value; }
87 
91  inline void SetStatus(BucketVersioningStatus&& value) { m_statusHasBeenSet = true; m_status = value; }
92 
96  inline VersioningConfiguration& WithStatus(const BucketVersioningStatus& value) { SetStatus(value); return *this;}
97 
101  inline VersioningConfiguration& WithStatus(BucketVersioningStatus&& value) { SetStatus(value); return *this;}
102 
103  private:
104  MFADelete m_mFADelete;
105  bool m_mFADeleteHasBeenSet;
106  BucketVersioningStatus m_status;
107  bool m_statusHasBeenSet;
108  };
109 
110 } // namespace Model
111 } // namespace S3
112 } // namespace Aws
VersioningConfiguration & WithStatus(const BucketVersioningStatus &value)
const BucketVersioningStatus & GetStatus() const
#define AWS_S3_API
Definition: S3_EXPORTS.h:37
VersioningConfiguration & WithStatus(BucketVersioningStatus &&value)
VersioningConfiguration & WithMFADelete(MFADelete &&value)
void SetStatus(BucketVersioningStatus &&value)
VersioningConfiguration & WithMFADelete(const MFADelete &value)
void SetStatus(const BucketVersioningStatus &value)
JSON (JavaScript Object Notation).