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/redshift/Redshift_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSStreamFwd.h> 9 #include <aws/redshift/model/ScheduledActionFilterName.h> 10 #include <aws/core/utils/memory/stl/AWSVector.h> 11 #include <aws/core/utils/memory/stl/AWSString.h> 12 #include <utility> 13 14 namespace Aws 15 { 16 namespace Utils 17 { 18 namespace Xml 19 { 20 class XmlNode; 21 } // namespace Xml 22 } // namespace Utils 23 namespace Redshift 24 { 25 namespace Model 26 { 27 28 /** 29 * <p>A set of elements to filter the returned scheduled actions. </p><p><h3>See 30 * Also:</h3> <a 31 * href="http://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ScheduledActionFilter">AWS 32 * API Reference</a></p> 33 */ 34 class AWS_REDSHIFT_API ScheduledActionFilter 35 { 36 public: 37 ScheduledActionFilter(); 38 ScheduledActionFilter(const Aws::Utils::Xml::XmlNode& xmlNode); 39 ScheduledActionFilter& operator=(const Aws::Utils::Xml::XmlNode& xmlNode); 40 41 void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const; 42 void OutputToStream(Aws::OStream& oStream, const char* location) const; 43 44 45 /** 46 * <p>The type of element to filter. </p> 47 */ GetName()48 inline const ScheduledActionFilterName& GetName() const{ return m_name; } 49 50 /** 51 * <p>The type of element to filter. </p> 52 */ NameHasBeenSet()53 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } 54 55 /** 56 * <p>The type of element to filter. </p> 57 */ SetName(const ScheduledActionFilterName & value)58 inline void SetName(const ScheduledActionFilterName& value) { m_nameHasBeenSet = true; m_name = value; } 59 60 /** 61 * <p>The type of element to filter. </p> 62 */ SetName(ScheduledActionFilterName && value)63 inline void SetName(ScheduledActionFilterName&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } 64 65 /** 66 * <p>The type of element to filter. </p> 67 */ WithName(const ScheduledActionFilterName & value)68 inline ScheduledActionFilter& WithName(const ScheduledActionFilterName& value) { SetName(value); return *this;} 69 70 /** 71 * <p>The type of element to filter. </p> 72 */ WithName(ScheduledActionFilterName && value)73 inline ScheduledActionFilter& WithName(ScheduledActionFilterName&& value) { SetName(std::move(value)); return *this;} 74 75 76 /** 77 * <p>List of values. Compare if the value (of type defined by <code>Name</code>) 78 * equals an item in the list of scheduled actions. </p> 79 */ GetValues()80 inline const Aws::Vector<Aws::String>& GetValues() const{ return m_values; } 81 82 /** 83 * <p>List of values. Compare if the value (of type defined by <code>Name</code>) 84 * equals an item in the list of scheduled actions. </p> 85 */ ValuesHasBeenSet()86 inline bool ValuesHasBeenSet() const { return m_valuesHasBeenSet; } 87 88 /** 89 * <p>List of values. Compare if the value (of type defined by <code>Name</code>) 90 * equals an item in the list of scheduled actions. </p> 91 */ SetValues(const Aws::Vector<Aws::String> & value)92 inline void SetValues(const Aws::Vector<Aws::String>& value) { m_valuesHasBeenSet = true; m_values = value; } 93 94 /** 95 * <p>List of values. Compare if the value (of type defined by <code>Name</code>) 96 * equals an item in the list of scheduled actions. </p> 97 */ SetValues(Aws::Vector<Aws::String> && value)98 inline void SetValues(Aws::Vector<Aws::String>&& value) { m_valuesHasBeenSet = true; m_values = std::move(value); } 99 100 /** 101 * <p>List of values. Compare if the value (of type defined by <code>Name</code>) 102 * equals an item in the list of scheduled actions. </p> 103 */ WithValues(const Aws::Vector<Aws::String> & value)104 inline ScheduledActionFilter& WithValues(const Aws::Vector<Aws::String>& value) { SetValues(value); return *this;} 105 106 /** 107 * <p>List of values. Compare if the value (of type defined by <code>Name</code>) 108 * equals an item in the list of scheduled actions. </p> 109 */ WithValues(Aws::Vector<Aws::String> && value)110 inline ScheduledActionFilter& WithValues(Aws::Vector<Aws::String>&& value) { SetValues(std::move(value)); return *this;} 111 112 /** 113 * <p>List of values. Compare if the value (of type defined by <code>Name</code>) 114 * equals an item in the list of scheduled actions. </p> 115 */ AddValues(const Aws::String & value)116 inline ScheduledActionFilter& AddValues(const Aws::String& value) { m_valuesHasBeenSet = true; m_values.push_back(value); return *this; } 117 118 /** 119 * <p>List of values. Compare if the value (of type defined by <code>Name</code>) 120 * equals an item in the list of scheduled actions. </p> 121 */ AddValues(Aws::String && value)122 inline ScheduledActionFilter& AddValues(Aws::String&& value) { m_valuesHasBeenSet = true; m_values.push_back(std::move(value)); return *this; } 123 124 /** 125 * <p>List of values. Compare if the value (of type defined by <code>Name</code>) 126 * equals an item in the list of scheduled actions. </p> 127 */ AddValues(const char * value)128 inline ScheduledActionFilter& AddValues(const char* value) { m_valuesHasBeenSet = true; m_values.push_back(value); return *this; } 129 130 private: 131 132 ScheduledActionFilterName m_name; 133 bool m_nameHasBeenSet; 134 135 Aws::Vector<Aws::String> m_values; 136 bool m_valuesHasBeenSet; 137 }; 138 139 } // namespace Model 140 } // namespace Redshift 141 } // namespace Aws 142