1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #pragma once 7 #include <aws/s3control/S3Control_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSVector.h> 9 #include <aws/core/utils/memory/stl/AWSString.h> 10 #include <utility> 11 12 namespace Aws 13 { 14 namespace Utils 15 { 16 namespace Xml 17 { 18 class XmlNode; 19 } // namespace Xml 20 } // namespace Utils 21 namespace S3Control 22 { 23 namespace Model 24 { 25 26 /** 27 * <p>A container for what Amazon S3 Storage Lens will exclude.</p><p><h3>See 28 * Also:</h3> <a 29 * href="http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/Exclude">AWS 30 * API Reference</a></p> 31 */ 32 class AWS_S3CONTROL_API Exclude 33 { 34 public: 35 Exclude(); 36 Exclude(const Aws::Utils::Xml::XmlNode& xmlNode); 37 Exclude& operator=(const Aws::Utils::Xml::XmlNode& xmlNode); 38 39 void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const; 40 41 42 /** 43 * <p>A container for the S3 Storage Lens bucket excludes.</p> 44 */ GetBuckets()45 inline const Aws::Vector<Aws::String>& GetBuckets() const{ return m_buckets; } 46 47 /** 48 * <p>A container for the S3 Storage Lens bucket excludes.</p> 49 */ BucketsHasBeenSet()50 inline bool BucketsHasBeenSet() const { return m_bucketsHasBeenSet; } 51 52 /** 53 * <p>A container for the S3 Storage Lens bucket excludes.</p> 54 */ SetBuckets(const Aws::Vector<Aws::String> & value)55 inline void SetBuckets(const Aws::Vector<Aws::String>& value) { m_bucketsHasBeenSet = true; m_buckets = value; } 56 57 /** 58 * <p>A container for the S3 Storage Lens bucket excludes.</p> 59 */ SetBuckets(Aws::Vector<Aws::String> && value)60 inline void SetBuckets(Aws::Vector<Aws::String>&& value) { m_bucketsHasBeenSet = true; m_buckets = std::move(value); } 61 62 /** 63 * <p>A container for the S3 Storage Lens bucket excludes.</p> 64 */ WithBuckets(const Aws::Vector<Aws::String> & value)65 inline Exclude& WithBuckets(const Aws::Vector<Aws::String>& value) { SetBuckets(value); return *this;} 66 67 /** 68 * <p>A container for the S3 Storage Lens bucket excludes.</p> 69 */ WithBuckets(Aws::Vector<Aws::String> && value)70 inline Exclude& WithBuckets(Aws::Vector<Aws::String>&& value) { SetBuckets(std::move(value)); return *this;} 71 72 /** 73 * <p>A container for the S3 Storage Lens bucket excludes.</p> 74 */ AddBuckets(const Aws::String & value)75 inline Exclude& AddBuckets(const Aws::String& value) { m_bucketsHasBeenSet = true; m_buckets.push_back(value); return *this; } 76 77 /** 78 * <p>A container for the S3 Storage Lens bucket excludes.</p> 79 */ AddBuckets(Aws::String && value)80 inline Exclude& AddBuckets(Aws::String&& value) { m_bucketsHasBeenSet = true; m_buckets.push_back(std::move(value)); return *this; } 81 82 /** 83 * <p>A container for the S3 Storage Lens bucket excludes.</p> 84 */ AddBuckets(const char * value)85 inline Exclude& AddBuckets(const char* value) { m_bucketsHasBeenSet = true; m_buckets.push_back(value); return *this; } 86 87 88 /** 89 * <p>A container for the S3 Storage Lens Region excludes.</p> 90 */ GetRegions()91 inline const Aws::Vector<Aws::String>& GetRegions() const{ return m_regions; } 92 93 /** 94 * <p>A container for the S3 Storage Lens Region excludes.</p> 95 */ RegionsHasBeenSet()96 inline bool RegionsHasBeenSet() const { return m_regionsHasBeenSet; } 97 98 /** 99 * <p>A container for the S3 Storage Lens Region excludes.</p> 100 */ SetRegions(const Aws::Vector<Aws::String> & value)101 inline void SetRegions(const Aws::Vector<Aws::String>& value) { m_regionsHasBeenSet = true; m_regions = value; } 102 103 /** 104 * <p>A container for the S3 Storage Lens Region excludes.</p> 105 */ SetRegions(Aws::Vector<Aws::String> && value)106 inline void SetRegions(Aws::Vector<Aws::String>&& value) { m_regionsHasBeenSet = true; m_regions = std::move(value); } 107 108 /** 109 * <p>A container for the S3 Storage Lens Region excludes.</p> 110 */ WithRegions(const Aws::Vector<Aws::String> & value)111 inline Exclude& WithRegions(const Aws::Vector<Aws::String>& value) { SetRegions(value); return *this;} 112 113 /** 114 * <p>A container for the S3 Storage Lens Region excludes.</p> 115 */ WithRegions(Aws::Vector<Aws::String> && value)116 inline Exclude& WithRegions(Aws::Vector<Aws::String>&& value) { SetRegions(std::move(value)); return *this;} 117 118 /** 119 * <p>A container for the S3 Storage Lens Region excludes.</p> 120 */ AddRegions(const Aws::String & value)121 inline Exclude& AddRegions(const Aws::String& value) { m_regionsHasBeenSet = true; m_regions.push_back(value); return *this; } 122 123 /** 124 * <p>A container for the S3 Storage Lens Region excludes.</p> 125 */ AddRegions(Aws::String && value)126 inline Exclude& AddRegions(Aws::String&& value) { m_regionsHasBeenSet = true; m_regions.push_back(std::move(value)); return *this; } 127 128 /** 129 * <p>A container for the S3 Storage Lens Region excludes.</p> 130 */ AddRegions(const char * value)131 inline Exclude& AddRegions(const char* value) { m_regionsHasBeenSet = true; m_regions.push_back(value); return *this; } 132 133 private: 134 135 Aws::Vector<Aws::String> m_buckets; 136 bool m_bucketsHasBeenSet; 137 138 Aws::Vector<Aws::String> m_regions; 139 bool m_regionsHasBeenSet; 140 }; 141 142 } // namespace Model 143 } // namespace S3Control 144 } // namespace Aws 145