aws_sdk_networksecuritymanager/client/create_rule_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 [`CreateRuleSnapshot`](crate::operation::create_rule_snapshot::builders::CreateRuleSnapshotFluentBuilder) operation.
4 ///
5 /// - The fluent builder is configurable:
6 /// - [`rule_identifier(impl Into<String>)`](crate::operation::create_rule_snapshot::builders::CreateRuleSnapshotFluentBuilder::rule_identifier) / [`set_rule_identifier(Option<String>)`](crate::operation::create_rule_snapshot::builders::CreateRuleSnapshotFluentBuilder::set_rule_identifier):<br>required: **true**<br><p>The identifier of the rule. This is the rule's Amazon Resource Name (ARN).</p><br>
7 /// - [`client_token(impl Into<String>)`](crate::operation::create_rule_snapshot::builders::CreateRuleSnapshotFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::create_rule_snapshot::builders::CreateRuleSnapshotFluentBuilder::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_rule_snapshot::builders::CreateRuleSnapshotFluentBuilder::tags) / [`set_tags(Option<HashMap::<String, String>>)`](crate::operation::create_rule_snapshot::builders::CreateRuleSnapshotFluentBuilder::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 [`CreateRuleSnapshotOutput`](crate::operation::create_rule_snapshot::CreateRuleSnapshotOutput) with field(s):
10 /// - [`rule_id(String)`](crate::operation::create_rule_snapshot::CreateRuleSnapshotOutput::rule_id): <p>The service-generated id of the rule.</p>
11 /// - [`rule_arn(String)`](crate::operation::create_rule_snapshot::CreateRuleSnapshotOutput::rule_arn): <p>The Amazon Resource Name (ARN) of the rule.</p>
12 /// - [`rule_name(String)`](crate::operation::create_rule_snapshot::CreateRuleSnapshotOutput::rule_name): <p>The name of the rule.</p>
13 /// - [`firewall_type(RuleFirewallType)`](crate::operation::create_rule_snapshot::CreateRuleSnapshotOutput::firewall_type): <p>The firewall type associated with the resource.</p>
14 /// - [`rule_type(Option<RuleType>)`](crate::operation::create_rule_snapshot::CreateRuleSnapshotOutput::rule_type): <p>The type of the rule. <code>CONFIGURATION</code> rules contain firewall settings, and <code>INSPECTION</code> rules contain rule groups.</p>
15 /// - [`rule_description(Option<String>)`](crate::operation::create_rule_snapshot::CreateRuleSnapshotOutput::rule_description): <p>A description of the rule.</p>
16 /// - [`configuration(Document)`](crate::operation::create_rule_snapshot::CreateRuleSnapshotOutput::configuration): <p>The firewall configuration for the rule, as a JSON document. The structure depends on the rule's firewall type and rule type.</p>
17 /// - [`status(EntityStatus)`](crate::operation::create_rule_snapshot::CreateRuleSnapshotOutput::status): <p>The current status of the resource: <code>DRAFT</code> (unpublished, editable) or <code>ACTIVE</code> (published, in use).</p>
18 /// - [`version(String)`](crate::operation::create_rule_snapshot::CreateRuleSnapshotOutput::version): <p>The version of the resource.</p>
19 /// - [`update_token(Option<String>)`](crate::operation::create_rule_snapshot::CreateRuleSnapshotOutput::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>
20 /// - [`is_snapshot(Option<bool>)`](crate::operation::create_rule_snapshot::CreateRuleSnapshotOutput::is_snapshot): <p>Specifies whether the resource is a snapshot of a published version.</p>
21 /// - [`has_published_version(Option<bool>)`](crate::operation::create_rule_snapshot::CreateRuleSnapshotOutput::has_published_version): <p>Specifies whether a published version of the resource exists.</p>
22 /// - [`updated_at(Option<DateTime>)`](crate::operation::create_rule_snapshot::CreateRuleSnapshotOutput::updated_at): <p>The time when the snapshot was created.</p>
23 /// - On failure, responds with [`SdkError<CreateRuleSnapshotError>`](crate::operation::create_rule_snapshot::CreateRuleSnapshotError)
24 pub fn create_rule_snapshot(&self) -> crate::operation::create_rule_snapshot::builders::CreateRuleSnapshotFluentBuilder {
25 crate::operation::create_rule_snapshot::builders::CreateRuleSnapshotFluentBuilder::new(self.handle.clone())
26 }
27}