/// <summary> /// When you want to create, update, or delete AWS WAF objects, get a change token and /// include the change token in the create, update, or delete request. Change tokens ensure /// that your application doesn't submit conflicting requests to AWS WAF. /// /// /// <para> /// Each create, update, or delete request must use a unique change token. If your application /// submits a <code>GetChangeToken</code> request and then submits a second <code>GetChangeToken</code> /// request before submitting a create, update, or delete request, the second <code>GetChangeToken</code> /// request returns the same value as the first <code>GetChangeToken</code> request. /// </para> /// /// <para> /// When you use a change token in a create, update, or delete request, the status of /// the change token changes to <code>PENDING</code>, which indicates that AWS WAF is /// propagating the change to all AWS WAF servers. Use <code>GetChangeTokenStatus</code> /// to determine the status of your change token. /// </para> /// </summary> /// <param name="request">Container for the necessary parameters to execute the GetChangeToken service method.</param> /// /// <returns>The response from the GetChangeToken service method, as returned by WAF.</returns> /// <exception cref="Amazon.WAF.Model.WAFInternalErrorException"> /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// </exception> public GetChangeTokenResponse GetChangeToken(GetChangeTokenRequest request) { var marshaller = new GetChangeTokenRequestMarshaller(); var unmarshaller = GetChangeTokenResponseUnmarshaller.Instance; return Invoke<GetChangeTokenRequest,GetChangeTokenResponse>(request, marshaller, unmarshaller); }
/// <summary> /// Initiates the asynchronous execution of the GetChangeToken operation. /// </summary> /// /// <param name="request">Container for the necessary parameters to execute the GetChangeToken operation on AmazonWAFClient.</param> /// <param name="callback">An AsyncCallback delegate that is invoked when the operation completes.</param> /// <param name="state">A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property.</param> /// /// <returns>An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetChangeToken /// operation.</returns> public IAsyncResult BeginGetChangeToken(GetChangeTokenRequest request, AsyncCallback callback, object state) { var marshaller = new GetChangeTokenRequestMarshaller(); var unmarshaller = GetChangeTokenResponseUnmarshaller.Instance; return BeginInvoke<GetChangeTokenRequest>(request, marshaller, unmarshaller, callback, state); }
/// <summary> /// Initiates the asynchronous execution of the GetChangeToken operation. /// </summary> /// /// <param name="request">Container for the necessary parameters to execute the GetChangeToken operation.</param> /// <param name="cancellationToken"> /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// </param> /// <returns>The task object representing the asynchronous operation.</returns> public Task<GetChangeTokenResponse> GetChangeTokenAsync(GetChangeTokenRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var marshaller = new GetChangeTokenRequestMarshaller(); var unmarshaller = GetChangeTokenResponseUnmarshaller.Instance; return InvokeAsync<GetChangeTokenRequest,GetChangeTokenResponse>(request, marshaller, unmarshaller, cancellationToken); }