/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the network-firewall-2020-11-12.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.NetworkFirewall.Model
{
///
/// Container for the parameters to the UpdateFirewallPolicy operation.
/// Updates the properties of the specified firewall policy.
///
public partial class UpdateFirewallPolicyRequest : AmazonNetworkFirewallRequest
{
private string _description;
private bool? _dryRun;
private EncryptionConfiguration _encryptionConfiguration;
private FirewallPolicy _firewallPolicy;
private string _firewallPolicyArn;
private string _firewallPolicyName;
private string _updateToken;
///
/// Gets and sets the property Description.
///
/// A description of the firewall policy.
///
///
[AWSProperty(Max=512)]
public string Description
{
get { return this._description; }
set { this._description = value; }
}
// Check to see if Description property is set
internal bool IsSetDescription()
{
return this._description != null;
}
///
/// Gets and sets the property DryRun.
///
/// Indicates whether you want Network Firewall to just check the validity of the request,
/// rather than run the request.
///
///
///
/// If set to TRUE
, Network Firewall checks whether the request can run successfully,
/// but doesn't actually make the requested changes. The call returns the value that the
/// request would return if you ran it with dry run set to FALSE
, but doesn't
/// make additions or changes to your resources. This option allows you to make sure that
/// you have the required permissions to run the request and that your request parameters
/// are valid.
///
///
///
/// If set to FALSE
, Network Firewall makes the requested changes to your
/// resources.
///
///
public bool DryRun
{
get { return this._dryRun.GetValueOrDefault(); }
set { this._dryRun = value; }
}
// Check to see if DryRun property is set
internal bool IsSetDryRun()
{
return this._dryRun.HasValue;
}
///
/// Gets and sets the property EncryptionConfiguration.
///
/// A complex type that contains settings for encryption of your firewall policy resources.
///
///
public EncryptionConfiguration EncryptionConfiguration
{
get { return this._encryptionConfiguration; }
set { this._encryptionConfiguration = value; }
}
// Check to see if EncryptionConfiguration property is set
internal bool IsSetEncryptionConfiguration()
{
return this._encryptionConfiguration != null;
}
///
/// Gets and sets the property FirewallPolicy.
///
/// The updated firewall policy to use for the firewall.
///
///
[AWSProperty(Required=true)]
public FirewallPolicy FirewallPolicy
{
get { return this._firewallPolicy; }
set { this._firewallPolicy = value; }
}
// Check to see if FirewallPolicy property is set
internal bool IsSetFirewallPolicy()
{
return this._firewallPolicy != null;
}
///
/// Gets and sets the property FirewallPolicyArn.
///
/// The Amazon Resource Name (ARN) of the firewall policy.
///
///
///
/// You must specify the ARN or the name, and you can specify both.
///
///
[AWSProperty(Min=1, Max=256)]
public string FirewallPolicyArn
{
get { return this._firewallPolicyArn; }
set { this._firewallPolicyArn = value; }
}
// Check to see if FirewallPolicyArn property is set
internal bool IsSetFirewallPolicyArn()
{
return this._firewallPolicyArn != null;
}
///
/// Gets and sets the property FirewallPolicyName.
///
/// The descriptive name of the firewall policy. You can't change the name of a firewall
/// policy after you create it.
///
///
///
/// You must specify the ARN or the name, and you can specify both.
///
///
[AWSProperty(Min=1, Max=128)]
public string FirewallPolicyName
{
get { return this._firewallPolicyName; }
set { this._firewallPolicyName = value; }
}
// Check to see if FirewallPolicyName property is set
internal bool IsSetFirewallPolicyName()
{
return this._firewallPolicyName != null;
}
///
/// Gets and sets the property UpdateToken.
///
/// A token used for optimistic locking. Network Firewall returns a token to your requests
/// that access the firewall policy. The token marks the state of the policy resource
/// at the time of the request.
///
///
///
/// To make changes to the policy, you provide the token in your request. Network Firewall
/// uses the token to ensure that the policy hasn't changed since you last retrieved it.
/// If it has changed, the operation fails with an InvalidTokenException
.
/// If this happens, retrieve the firewall policy again to get a current copy of it with
/// current token. Reapply your changes as needed, then try the operation again using
/// the new token.
///
///
[AWSProperty(Required=true, Min=1, Max=1024)]
public string UpdateToken
{
get { return this._updateToken; }
set { this._updateToken = value; }
}
// Check to see if UpdateToken property is set
internal bool IsSetUpdateToken()
{
return this._updateToken != null;
}
}
}