aws_sdk_networksecuritymanager/client/create_policy_snapshot.rs
1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2impl super::Client {
3 /// Constructs a fluent builder for the [`CreatePolicySnapshot`](crate::operation::create_policy_snapshot::builders::CreatePolicySnapshotFluentBuilder) operation.
4 ///
5 /// - The fluent builder is configurable:
6 /// - [`policy_identifier(impl Into<String>)`](crate::operation::create_policy_snapshot::builders::CreatePolicySnapshotFluentBuilder::policy_identifier) / [`set_policy_identifier(Option<String>)`](crate::operation::create_policy_snapshot::builders::CreatePolicySnapshotFluentBuilder::set_policy_identifier):<br>required: **true**<br><p>The identifier of the policy. This is the policy's Amazon Resource Name (ARN).</p><br>
7 /// - [`client_token(impl Into<String>)`](crate::operation::create_policy_snapshot::builders::CreatePolicySnapshotFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::create_policy_snapshot::builders::CreatePolicySnapshotFluentBuilder::set_client_token):<br>required: **false**<br><p>A unique, case-sensitive token that you provide to ensure that the operation completes no more than one time. If you retry a request with the same client token and the same parameters, the service returns the result of the original successful request.</p><br>
8 /// - [`tags(impl Into<String>, impl Into<String>)`](crate::operation::create_policy_snapshot::builders::CreatePolicySnapshotFluentBuilder::tags) / [`set_tags(Option<HashMap::<String, String>>)`](crate::operation::create_policy_snapshot::builders::CreatePolicySnapshotFluentBuilder::set_tags):<br>required: **false**<br><p>The tags to add to the snapshot when it is created.</p><br>
9 /// - On success, responds with [`CreatePolicySnapshotOutput`](crate::operation::create_policy_snapshot::CreatePolicySnapshotOutput) with field(s):
10 /// - [`policy_id(String)`](crate::operation::create_policy_snapshot::CreatePolicySnapshotOutput::policy_id): <p>The service-generated id of the policy.</p>
11 /// - [`policy_arn(String)`](crate::operation::create_policy_snapshot::CreatePolicySnapshotOutput::policy_arn): <p>The Amazon Resource Name (ARN) of the policy.</p>
12 /// - [`policy_name(String)`](crate::operation::create_policy_snapshot::CreatePolicySnapshotOutput::policy_name): <p>The name of the policy.</p>
13 /// - [`policy_description(Option<String>)`](crate::operation::create_policy_snapshot::CreatePolicySnapshotOutput::policy_description): <p>A description of the policy.</p>
14 /// - [`status(EntityStatus)`](crate::operation::create_policy_snapshot::CreatePolicySnapshotOutput::status): <p>The current status of the resource: <code>DRAFT</code> (unpublished, editable) or <code>ACTIVE</code> (published, in use).</p>
15 /// - [`priority(i32)`](crate::operation::create_policy_snapshot::CreatePolicySnapshotOutput::priority): <p>The priority of the resource. A lower number indicates a higher priority.</p>
16 /// - [`associated_template_and_rule_list(Vec::<AssociatedTemplateOrRule>)`](crate::operation::create_policy_snapshot::CreatePolicySnapshotOutput::associated_template_and_rule_list): <p>The templates and rules associated with the policy. For AWS WAF policies, this list contains 1 to 100 templates or rules, of which at most 2 can be templates. For AWS Shield Advanced policies, this list is empty.</p>
17 /// - [`version(String)`](crate::operation::create_policy_snapshot::CreatePolicySnapshotOutput::version): <p>The version of the resource.</p>
18 /// - [`update_token(Option<String>)`](crate::operation::create_policy_snapshot::CreatePolicySnapshotOutput::update_token): <p>A token used for optimistic concurrency control. Each read and write returns an <code>updateToken</code>. Provide the most recent value on your next update to detect and prevent conflicting concurrent modifications.</p>
19 /// - [`is_snapshot(Option<bool>)`](crate::operation::create_policy_snapshot::CreatePolicySnapshotOutput::is_snapshot): <p>Specifies whether the resource is a snapshot of a published version.</p>
20 /// - [`has_published_version(Option<bool>)`](crate::operation::create_policy_snapshot::CreatePolicySnapshotOutput::has_published_version): <p>Specifies whether a published version of the resource exists.</p>
21 /// - [`firewall_type(PolicyFirewallType)`](crate::operation::create_policy_snapshot::CreatePolicySnapshotOutput::firewall_type): <p>The firewall type associated with the resource.</p>
22 /// - [`policy_configuration(Option<PolicyConfiguration>)`](crate::operation::create_policy_snapshot::CreatePolicySnapshotOutput::policy_configuration): <p>The configuration settings that control the policy's behavior, including remediation and firewall-type-specific settings.</p>
23 /// - [`updated_at(Option<DateTime>)`](crate::operation::create_policy_snapshot::CreatePolicySnapshotOutput::updated_at): <p>The time when the snapshot was created.</p>
24 /// - On failure, responds with [`SdkError<CreatePolicySnapshotError>`](crate::operation::create_policy_snapshot::CreatePolicySnapshotError)
25 pub fn create_policy_snapshot(&self) -> crate::operation::create_policy_snapshot::builders::CreatePolicySnapshotFluentBuilder {
26 crate::operation::create_policy_snapshot::builders::CreatePolicySnapshotFluentBuilder::new(self.handle.clone())
27 }
28}