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/waf-regional/WAFRegional_EXPORTS.h> 8 #include <aws/waf-regional/WAFRegionalRequest.h> 9 #include <aws/core/utils/memory/stl/AWSString.h> 10 #include <aws/core/utils/memory/stl/AWSVector.h> 11 #include <aws/waf-regional/model/XssMatchSetUpdate.h> 12 #include <utility> 13 14 namespace Aws 15 { 16 namespace WAFRegional 17 { 18 namespace Model 19 { 20 21 /** 22 * <p>A request to update an <a>XssMatchSet</a>.</p><p><h3>See Also:</h3> <a 23 * href="http://docs.aws.amazon.com/goto/WebAPI/waf-regional-2016-11-28/UpdateXssMatchSetRequest">AWS 24 * API Reference</a></p> 25 */ 26 class AWS_WAFREGIONAL_API UpdateXssMatchSetRequest : public WAFRegionalRequest 27 { 28 public: 29 UpdateXssMatchSetRequest(); 30 31 // Service request name is the Operation name which will send this request out, 32 // each operation should has unique request name, so that we can get operation's name from this request. 33 // Note: this is not true for response, multiple operations may have the same response name, 34 // so we can not get operation's name from response. GetServiceRequestName()35 inline virtual const char* GetServiceRequestName() const override { return "UpdateXssMatchSet"; } 36 37 Aws::String SerializePayload() const override; 38 39 Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; 40 41 42 /** 43 * <p>The <code>XssMatchSetId</code> of the <code>XssMatchSet</code> that you want 44 * to update. <code>XssMatchSetId</code> is returned by <a>CreateXssMatchSet</a> 45 * and by <a>ListXssMatchSets</a>.</p> 46 */ GetXssMatchSetId()47 inline const Aws::String& GetXssMatchSetId() const{ return m_xssMatchSetId; } 48 49 /** 50 * <p>The <code>XssMatchSetId</code> of the <code>XssMatchSet</code> that you want 51 * to update. <code>XssMatchSetId</code> is returned by <a>CreateXssMatchSet</a> 52 * and by <a>ListXssMatchSets</a>.</p> 53 */ XssMatchSetIdHasBeenSet()54 inline bool XssMatchSetIdHasBeenSet() const { return m_xssMatchSetIdHasBeenSet; } 55 56 /** 57 * <p>The <code>XssMatchSetId</code> of the <code>XssMatchSet</code> that you want 58 * to update. <code>XssMatchSetId</code> is returned by <a>CreateXssMatchSet</a> 59 * and by <a>ListXssMatchSets</a>.</p> 60 */ SetXssMatchSetId(const Aws::String & value)61 inline void SetXssMatchSetId(const Aws::String& value) { m_xssMatchSetIdHasBeenSet = true; m_xssMatchSetId = value; } 62 63 /** 64 * <p>The <code>XssMatchSetId</code> of the <code>XssMatchSet</code> that you want 65 * to update. <code>XssMatchSetId</code> is returned by <a>CreateXssMatchSet</a> 66 * and by <a>ListXssMatchSets</a>.</p> 67 */ SetXssMatchSetId(Aws::String && value)68 inline void SetXssMatchSetId(Aws::String&& value) { m_xssMatchSetIdHasBeenSet = true; m_xssMatchSetId = std::move(value); } 69 70 /** 71 * <p>The <code>XssMatchSetId</code> of the <code>XssMatchSet</code> that you want 72 * to update. <code>XssMatchSetId</code> is returned by <a>CreateXssMatchSet</a> 73 * and by <a>ListXssMatchSets</a>.</p> 74 */ SetXssMatchSetId(const char * value)75 inline void SetXssMatchSetId(const char* value) { m_xssMatchSetIdHasBeenSet = true; m_xssMatchSetId.assign(value); } 76 77 /** 78 * <p>The <code>XssMatchSetId</code> of the <code>XssMatchSet</code> that you want 79 * to update. <code>XssMatchSetId</code> is returned by <a>CreateXssMatchSet</a> 80 * and by <a>ListXssMatchSets</a>.</p> 81 */ WithXssMatchSetId(const Aws::String & value)82 inline UpdateXssMatchSetRequest& WithXssMatchSetId(const Aws::String& value) { SetXssMatchSetId(value); return *this;} 83 84 /** 85 * <p>The <code>XssMatchSetId</code> of the <code>XssMatchSet</code> that you want 86 * to update. <code>XssMatchSetId</code> is returned by <a>CreateXssMatchSet</a> 87 * and by <a>ListXssMatchSets</a>.</p> 88 */ WithXssMatchSetId(Aws::String && value)89 inline UpdateXssMatchSetRequest& WithXssMatchSetId(Aws::String&& value) { SetXssMatchSetId(std::move(value)); return *this;} 90 91 /** 92 * <p>The <code>XssMatchSetId</code> of the <code>XssMatchSet</code> that you want 93 * to update. <code>XssMatchSetId</code> is returned by <a>CreateXssMatchSet</a> 94 * and by <a>ListXssMatchSets</a>.</p> 95 */ WithXssMatchSetId(const char * value)96 inline UpdateXssMatchSetRequest& WithXssMatchSetId(const char* value) { SetXssMatchSetId(value); return *this;} 97 98 99 /** 100 * <p>The value returned by the most recent call to <a>GetChangeToken</a>.</p> 101 */ GetChangeToken()102 inline const Aws::String& GetChangeToken() const{ return m_changeToken; } 103 104 /** 105 * <p>The value returned by the most recent call to <a>GetChangeToken</a>.</p> 106 */ ChangeTokenHasBeenSet()107 inline bool ChangeTokenHasBeenSet() const { return m_changeTokenHasBeenSet; } 108 109 /** 110 * <p>The value returned by the most recent call to <a>GetChangeToken</a>.</p> 111 */ SetChangeToken(const Aws::String & value)112 inline void SetChangeToken(const Aws::String& value) { m_changeTokenHasBeenSet = true; m_changeToken = value; } 113 114 /** 115 * <p>The value returned by the most recent call to <a>GetChangeToken</a>.</p> 116 */ SetChangeToken(Aws::String && value)117 inline void SetChangeToken(Aws::String&& value) { m_changeTokenHasBeenSet = true; m_changeToken = std::move(value); } 118 119 /** 120 * <p>The value returned by the most recent call to <a>GetChangeToken</a>.</p> 121 */ SetChangeToken(const char * value)122 inline void SetChangeToken(const char* value) { m_changeTokenHasBeenSet = true; m_changeToken.assign(value); } 123 124 /** 125 * <p>The value returned by the most recent call to <a>GetChangeToken</a>.</p> 126 */ WithChangeToken(const Aws::String & value)127 inline UpdateXssMatchSetRequest& WithChangeToken(const Aws::String& value) { SetChangeToken(value); return *this;} 128 129 /** 130 * <p>The value returned by the most recent call to <a>GetChangeToken</a>.</p> 131 */ WithChangeToken(Aws::String && value)132 inline UpdateXssMatchSetRequest& WithChangeToken(Aws::String&& value) { SetChangeToken(std::move(value)); return *this;} 133 134 /** 135 * <p>The value returned by the most recent call to <a>GetChangeToken</a>.</p> 136 */ WithChangeToken(const char * value)137 inline UpdateXssMatchSetRequest& WithChangeToken(const char* value) { SetChangeToken(value); return *this;} 138 139 140 /** 141 * <p>An array of <code>XssMatchSetUpdate</code> objects that you want to insert 142 * into or delete from an <a>XssMatchSet</a>. For more information, see the 143 * applicable data types:</p> <ul> <li> <p> <a>XssMatchSetUpdate</a>: Contains 144 * <code>Action</code> and <code>XssMatchTuple</code> </p> </li> <li> <p> 145 * <a>XssMatchTuple</a>: Contains <code>FieldToMatch</code> and 146 * <code>TextTransformation</code> </p> </li> <li> <p> <a>FieldToMatch</a>: 147 * Contains <code>Data</code> and <code>Type</code> </p> </li> </ul> 148 */ GetUpdates()149 inline const Aws::Vector<XssMatchSetUpdate>& GetUpdates() const{ return m_updates; } 150 151 /** 152 * <p>An array of <code>XssMatchSetUpdate</code> objects that you want to insert 153 * into or delete from an <a>XssMatchSet</a>. For more information, see the 154 * applicable data types:</p> <ul> <li> <p> <a>XssMatchSetUpdate</a>: Contains 155 * <code>Action</code> and <code>XssMatchTuple</code> </p> </li> <li> <p> 156 * <a>XssMatchTuple</a>: Contains <code>FieldToMatch</code> and 157 * <code>TextTransformation</code> </p> </li> <li> <p> <a>FieldToMatch</a>: 158 * Contains <code>Data</code> and <code>Type</code> </p> </li> </ul> 159 */ UpdatesHasBeenSet()160 inline bool UpdatesHasBeenSet() const { return m_updatesHasBeenSet; } 161 162 /** 163 * <p>An array of <code>XssMatchSetUpdate</code> objects that you want to insert 164 * into or delete from an <a>XssMatchSet</a>. For more information, see the 165 * applicable data types:</p> <ul> <li> <p> <a>XssMatchSetUpdate</a>: Contains 166 * <code>Action</code> and <code>XssMatchTuple</code> </p> </li> <li> <p> 167 * <a>XssMatchTuple</a>: Contains <code>FieldToMatch</code> and 168 * <code>TextTransformation</code> </p> </li> <li> <p> <a>FieldToMatch</a>: 169 * Contains <code>Data</code> and <code>Type</code> </p> </li> </ul> 170 */ SetUpdates(const Aws::Vector<XssMatchSetUpdate> & value)171 inline void SetUpdates(const Aws::Vector<XssMatchSetUpdate>& value) { m_updatesHasBeenSet = true; m_updates = value; } 172 173 /** 174 * <p>An array of <code>XssMatchSetUpdate</code> objects that you want to insert 175 * into or delete from an <a>XssMatchSet</a>. For more information, see the 176 * applicable data types:</p> <ul> <li> <p> <a>XssMatchSetUpdate</a>: Contains 177 * <code>Action</code> and <code>XssMatchTuple</code> </p> </li> <li> <p> 178 * <a>XssMatchTuple</a>: Contains <code>FieldToMatch</code> and 179 * <code>TextTransformation</code> </p> </li> <li> <p> <a>FieldToMatch</a>: 180 * Contains <code>Data</code> and <code>Type</code> </p> </li> </ul> 181 */ SetUpdates(Aws::Vector<XssMatchSetUpdate> && value)182 inline void SetUpdates(Aws::Vector<XssMatchSetUpdate>&& value) { m_updatesHasBeenSet = true; m_updates = std::move(value); } 183 184 /** 185 * <p>An array of <code>XssMatchSetUpdate</code> objects that you want to insert 186 * into or delete from an <a>XssMatchSet</a>. For more information, see the 187 * applicable data types:</p> <ul> <li> <p> <a>XssMatchSetUpdate</a>: Contains 188 * <code>Action</code> and <code>XssMatchTuple</code> </p> </li> <li> <p> 189 * <a>XssMatchTuple</a>: Contains <code>FieldToMatch</code> and 190 * <code>TextTransformation</code> </p> </li> <li> <p> <a>FieldToMatch</a>: 191 * Contains <code>Data</code> and <code>Type</code> </p> </li> </ul> 192 */ WithUpdates(const Aws::Vector<XssMatchSetUpdate> & value)193 inline UpdateXssMatchSetRequest& WithUpdates(const Aws::Vector<XssMatchSetUpdate>& value) { SetUpdates(value); return *this;} 194 195 /** 196 * <p>An array of <code>XssMatchSetUpdate</code> objects that you want to insert 197 * into or delete from an <a>XssMatchSet</a>. For more information, see the 198 * applicable data types:</p> <ul> <li> <p> <a>XssMatchSetUpdate</a>: Contains 199 * <code>Action</code> and <code>XssMatchTuple</code> </p> </li> <li> <p> 200 * <a>XssMatchTuple</a>: Contains <code>FieldToMatch</code> and 201 * <code>TextTransformation</code> </p> </li> <li> <p> <a>FieldToMatch</a>: 202 * Contains <code>Data</code> and <code>Type</code> </p> </li> </ul> 203 */ WithUpdates(Aws::Vector<XssMatchSetUpdate> && value)204 inline UpdateXssMatchSetRequest& WithUpdates(Aws::Vector<XssMatchSetUpdate>&& value) { SetUpdates(std::move(value)); return *this;} 205 206 /** 207 * <p>An array of <code>XssMatchSetUpdate</code> objects that you want to insert 208 * into or delete from an <a>XssMatchSet</a>. For more information, see the 209 * applicable data types:</p> <ul> <li> <p> <a>XssMatchSetUpdate</a>: Contains 210 * <code>Action</code> and <code>XssMatchTuple</code> </p> </li> <li> <p> 211 * <a>XssMatchTuple</a>: Contains <code>FieldToMatch</code> and 212 * <code>TextTransformation</code> </p> </li> <li> <p> <a>FieldToMatch</a>: 213 * Contains <code>Data</code> and <code>Type</code> </p> </li> </ul> 214 */ AddUpdates(const XssMatchSetUpdate & value)215 inline UpdateXssMatchSetRequest& AddUpdates(const XssMatchSetUpdate& value) { m_updatesHasBeenSet = true; m_updates.push_back(value); return *this; } 216 217 /** 218 * <p>An array of <code>XssMatchSetUpdate</code> objects that you want to insert 219 * into or delete from an <a>XssMatchSet</a>. For more information, see the 220 * applicable data types:</p> <ul> <li> <p> <a>XssMatchSetUpdate</a>: Contains 221 * <code>Action</code> and <code>XssMatchTuple</code> </p> </li> <li> <p> 222 * <a>XssMatchTuple</a>: Contains <code>FieldToMatch</code> and 223 * <code>TextTransformation</code> </p> </li> <li> <p> <a>FieldToMatch</a>: 224 * Contains <code>Data</code> and <code>Type</code> </p> </li> </ul> 225 */ AddUpdates(XssMatchSetUpdate && value)226 inline UpdateXssMatchSetRequest& AddUpdates(XssMatchSetUpdate&& value) { m_updatesHasBeenSet = true; m_updates.push_back(std::move(value)); return *this; } 227 228 private: 229 230 Aws::String m_xssMatchSetId; 231 bool m_xssMatchSetIdHasBeenSet; 232 233 Aws::String m_changeToken; 234 bool m_changeTokenHasBeenSet; 235 236 Aws::Vector<XssMatchSetUpdate> m_updates; 237 bool m_updatesHasBeenSet; 238 }; 239 240 } // namespace Model 241 } // namespace WAFRegional 242 } // namespace Aws 243