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/quicksight/QuickSight_EXPORTS.h> 8 #include <aws/quicksight/model/FilterOperator.h> 9 #include <aws/quicksight/model/FolderFilterAttribute.h> 10 #include <aws/core/utils/memory/stl/AWSString.h> 11 #include <utility> 12 13 namespace Aws 14 { 15 namespace Utils 16 { 17 namespace Json 18 { 19 class JsonValue; 20 class JsonView; 21 } // namespace Json 22 } // namespace Utils 23 namespace QuickSight 24 { 25 namespace Model 26 { 27 28 /** 29 * <p>Searches a folder by a filter.</p><p><h3>See Also:</h3> <a 30 * href="http://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/FolderSearchFilter">AWS 31 * API Reference</a></p> 32 */ 33 class AWS_QUICKSIGHT_API FolderSearchFilter 34 { 35 public: 36 FolderSearchFilter(); 37 FolderSearchFilter(Aws::Utils::Json::JsonView jsonValue); 38 FolderSearchFilter& operator=(Aws::Utils::Json::JsonView jsonValue); 39 Aws::Utils::Json::JsonValue Jsonize() const; 40 41 42 /** 43 * <p>The comparison operator that you want to use as a filter. For example, 44 * <code>"Operator": "StringEquals"</code>.</p> 45 */ GetOperator()46 inline const FilterOperator& GetOperator() const{ return m_operator; } 47 48 /** 49 * <p>The comparison operator that you want to use as a filter. For example, 50 * <code>"Operator": "StringEquals"</code>.</p> 51 */ OperatorHasBeenSet()52 inline bool OperatorHasBeenSet() const { return m_operatorHasBeenSet; } 53 54 /** 55 * <p>The comparison operator that you want to use as a filter. For example, 56 * <code>"Operator": "StringEquals"</code>.</p> 57 */ SetOperator(const FilterOperator & value)58 inline void SetOperator(const FilterOperator& value) { m_operatorHasBeenSet = true; m_operator = value; } 59 60 /** 61 * <p>The comparison operator that you want to use as a filter. For example, 62 * <code>"Operator": "StringEquals"</code>.</p> 63 */ SetOperator(FilterOperator && value)64 inline void SetOperator(FilterOperator&& value) { m_operatorHasBeenSet = true; m_operator = std::move(value); } 65 66 /** 67 * <p>The comparison operator that you want to use as a filter. For example, 68 * <code>"Operator": "StringEquals"</code>.</p> 69 */ WithOperator(const FilterOperator & value)70 inline FolderSearchFilter& WithOperator(const FilterOperator& value) { SetOperator(value); return *this;} 71 72 /** 73 * <p>The comparison operator that you want to use as a filter. For example, 74 * <code>"Operator": "StringEquals"</code>.</p> 75 */ WithOperator(FilterOperator && value)76 inline FolderSearchFilter& WithOperator(FilterOperator&& value) { SetOperator(std::move(value)); return *this;} 77 78 79 /** 80 * <p>The name of the value that you want to use as a filter. For example, 81 * <code>"Name": "PARENT_FOLDER_ARN"</code>.</p> 82 */ GetName()83 inline const FolderFilterAttribute& GetName() const{ return m_name; } 84 85 /** 86 * <p>The name of the value that you want to use as a filter. For example, 87 * <code>"Name": "PARENT_FOLDER_ARN"</code>.</p> 88 */ NameHasBeenSet()89 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } 90 91 /** 92 * <p>The name of the value that you want to use as a filter. For example, 93 * <code>"Name": "PARENT_FOLDER_ARN"</code>.</p> 94 */ SetName(const FolderFilterAttribute & value)95 inline void SetName(const FolderFilterAttribute& value) { m_nameHasBeenSet = true; m_name = value; } 96 97 /** 98 * <p>The name of the value that you want to use as a filter. For example, 99 * <code>"Name": "PARENT_FOLDER_ARN"</code>.</p> 100 */ SetName(FolderFilterAttribute && value)101 inline void SetName(FolderFilterAttribute&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } 102 103 /** 104 * <p>The name of the value that you want to use as a filter. For example, 105 * <code>"Name": "PARENT_FOLDER_ARN"</code>.</p> 106 */ WithName(const FolderFilterAttribute & value)107 inline FolderSearchFilter& WithName(const FolderFilterAttribute& value) { SetName(value); return *this;} 108 109 /** 110 * <p>The name of the value that you want to use as a filter. For example, 111 * <code>"Name": "PARENT_FOLDER_ARN"</code>.</p> 112 */ WithName(FolderFilterAttribute && value)113 inline FolderSearchFilter& WithName(FolderFilterAttribute&& value) { SetName(std::move(value)); return *this;} 114 115 116 /** 117 * <p>The value of the named item (in this example, 118 * <code>PARENT_FOLDER_ARN</code>), that you want to use as a filter. For example, 119 * <code>"Value": "arn:aws:quicksight:us-east-1:1:folder/folderId"</code>.</p> 120 */ GetValue()121 inline const Aws::String& GetValue() const{ return m_value; } 122 123 /** 124 * <p>The value of the named item (in this example, 125 * <code>PARENT_FOLDER_ARN</code>), that you want to use as a filter. For example, 126 * <code>"Value": "arn:aws:quicksight:us-east-1:1:folder/folderId"</code>.</p> 127 */ ValueHasBeenSet()128 inline bool ValueHasBeenSet() const { return m_valueHasBeenSet; } 129 130 /** 131 * <p>The value of the named item (in this example, 132 * <code>PARENT_FOLDER_ARN</code>), that you want to use as a filter. For example, 133 * <code>"Value": "arn:aws:quicksight:us-east-1:1:folder/folderId"</code>.</p> 134 */ SetValue(const Aws::String & value)135 inline void SetValue(const Aws::String& value) { m_valueHasBeenSet = true; m_value = value; } 136 137 /** 138 * <p>The value of the named item (in this example, 139 * <code>PARENT_FOLDER_ARN</code>), that you want to use as a filter. For example, 140 * <code>"Value": "arn:aws:quicksight:us-east-1:1:folder/folderId"</code>.</p> 141 */ SetValue(Aws::String && value)142 inline void SetValue(Aws::String&& value) { m_valueHasBeenSet = true; m_value = std::move(value); } 143 144 /** 145 * <p>The value of the named item (in this example, 146 * <code>PARENT_FOLDER_ARN</code>), that you want to use as a filter. For example, 147 * <code>"Value": "arn:aws:quicksight:us-east-1:1:folder/folderId"</code>.</p> 148 */ SetValue(const char * value)149 inline void SetValue(const char* value) { m_valueHasBeenSet = true; m_value.assign(value); } 150 151 /** 152 * <p>The value of the named item (in this example, 153 * <code>PARENT_FOLDER_ARN</code>), that you want to use as a filter. For example, 154 * <code>"Value": "arn:aws:quicksight:us-east-1:1:folder/folderId"</code>.</p> 155 */ WithValue(const Aws::String & value)156 inline FolderSearchFilter& WithValue(const Aws::String& value) { SetValue(value); return *this;} 157 158 /** 159 * <p>The value of the named item (in this example, 160 * <code>PARENT_FOLDER_ARN</code>), that you want to use as a filter. For example, 161 * <code>"Value": "arn:aws:quicksight:us-east-1:1:folder/folderId"</code>.</p> 162 */ WithValue(Aws::String && value)163 inline FolderSearchFilter& WithValue(Aws::String&& value) { SetValue(std::move(value)); return *this;} 164 165 /** 166 * <p>The value of the named item (in this example, 167 * <code>PARENT_FOLDER_ARN</code>), that you want to use as a filter. For example, 168 * <code>"Value": "arn:aws:quicksight:us-east-1:1:folder/folderId"</code>.</p> 169 */ WithValue(const char * value)170 inline FolderSearchFilter& WithValue(const char* value) { SetValue(value); return *this;} 171 172 private: 173 174 FilterOperator m_operator; 175 bool m_operatorHasBeenSet; 176 177 FolderFilterAttribute m_name; 178 bool m_nameHasBeenSet; 179 180 Aws::String m_value; 181 bool m_valueHasBeenSet; 182 }; 183 184 } // namespace Model 185 } // namespace QuickSight 186 } // namespace Aws 187