aws_sdk_ec2/client/
create_transit_gateway_metering_policy_entry.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 [`CreateTransitGatewayMeteringPolicyEntry`](crate::operation::create_transit_gateway_metering_policy_entry::builders::CreateTransitGatewayMeteringPolicyEntryFluentBuilder) operation.
4    ///
5    /// - The fluent builder is configurable:
6    ///   - [`transit_gateway_metering_policy_id(impl Into<String>)`](crate::operation::create_transit_gateway_metering_policy_entry::builders::CreateTransitGatewayMeteringPolicyEntryFluentBuilder::transit_gateway_metering_policy_id) / [`set_transit_gateway_metering_policy_id(Option<String>)`](crate::operation::create_transit_gateway_metering_policy_entry::builders::CreateTransitGatewayMeteringPolicyEntryFluentBuilder::set_transit_gateway_metering_policy_id):<br>required: **true**<br><p>The ID of the transit gateway metering policy to add the entry to.</p><br>
7    ///   - [`policy_rule_number(i32)`](crate::operation::create_transit_gateway_metering_policy_entry::builders::CreateTransitGatewayMeteringPolicyEntryFluentBuilder::policy_rule_number) / [`set_policy_rule_number(Option<i32>)`](crate::operation::create_transit_gateway_metering_policy_entry::builders::CreateTransitGatewayMeteringPolicyEntryFluentBuilder::set_policy_rule_number):<br>required: **true**<br><p>The rule number for the metering policy entry. Rules are processed in order from lowest to highest number.</p><br>
8    ///   - [`source_transit_gateway_attachment_id(impl Into<String>)`](crate::operation::create_transit_gateway_metering_policy_entry::builders::CreateTransitGatewayMeteringPolicyEntryFluentBuilder::source_transit_gateway_attachment_id) / [`set_source_transit_gateway_attachment_id(Option<String>)`](crate::operation::create_transit_gateway_metering_policy_entry::builders::CreateTransitGatewayMeteringPolicyEntryFluentBuilder::set_source_transit_gateway_attachment_id):<br>required: **false**<br><p>The ID of the source transit gateway attachment for traffic matching.</p><br>
9    ///   - [`source_transit_gateway_attachment_type(TransitGatewayAttachmentResourceType)`](crate::operation::create_transit_gateway_metering_policy_entry::builders::CreateTransitGatewayMeteringPolicyEntryFluentBuilder::source_transit_gateway_attachment_type) / [`set_source_transit_gateway_attachment_type(Option<TransitGatewayAttachmentResourceType>)`](crate::operation::create_transit_gateway_metering_policy_entry::builders::CreateTransitGatewayMeteringPolicyEntryFluentBuilder::set_source_transit_gateway_attachment_type):<br>required: **false**<br><p>The type of the source transit gateway attachment for traffic matching. Note that the <code>tgw-peering</code> resource type has been deprecated. To configure metering policies for Connect, use the transport attachment type.</p><br>
10    ///   - [`source_cidr_block(impl Into<String>)`](crate::operation::create_transit_gateway_metering_policy_entry::builders::CreateTransitGatewayMeteringPolicyEntryFluentBuilder::source_cidr_block) / [`set_source_cidr_block(Option<String>)`](crate::operation::create_transit_gateway_metering_policy_entry::builders::CreateTransitGatewayMeteringPolicyEntryFluentBuilder::set_source_cidr_block):<br>required: **false**<br><p>The source CIDR block for traffic matching.</p><br>
11    ///   - [`source_port_range(impl Into<String>)`](crate::operation::create_transit_gateway_metering_policy_entry::builders::CreateTransitGatewayMeteringPolicyEntryFluentBuilder::source_port_range) / [`set_source_port_range(Option<String>)`](crate::operation::create_transit_gateway_metering_policy_entry::builders::CreateTransitGatewayMeteringPolicyEntryFluentBuilder::set_source_port_range):<br>required: **false**<br><p>The source port range for traffic matching.</p><br>
12    ///   - [`destination_transit_gateway_attachment_id(impl Into<String>)`](crate::operation::create_transit_gateway_metering_policy_entry::builders::CreateTransitGatewayMeteringPolicyEntryFluentBuilder::destination_transit_gateway_attachment_id) / [`set_destination_transit_gateway_attachment_id(Option<String>)`](crate::operation::create_transit_gateway_metering_policy_entry::builders::CreateTransitGatewayMeteringPolicyEntryFluentBuilder::set_destination_transit_gateway_attachment_id):<br>required: **false**<br><p>The ID of the destination transit gateway attachment for traffic matching.</p><br>
13    ///   - [`destination_transit_gateway_attachment_type(TransitGatewayAttachmentResourceType)`](crate::operation::create_transit_gateway_metering_policy_entry::builders::CreateTransitGatewayMeteringPolicyEntryFluentBuilder::destination_transit_gateway_attachment_type) / [`set_destination_transit_gateway_attachment_type(Option<TransitGatewayAttachmentResourceType>)`](crate::operation::create_transit_gateway_metering_policy_entry::builders::CreateTransitGatewayMeteringPolicyEntryFluentBuilder::set_destination_transit_gateway_attachment_type):<br>required: **false**<br><p>The type of the destination transit gateway attachment for traffic matching. Note that the <code>tgw-peering</code> resource type has been deprecated. To configure metering policies for Connect, use the transport attachment type.</p><br>
14    ///   - [`destination_cidr_block(impl Into<String>)`](crate::operation::create_transit_gateway_metering_policy_entry::builders::CreateTransitGatewayMeteringPolicyEntryFluentBuilder::destination_cidr_block) / [`set_destination_cidr_block(Option<String>)`](crate::operation::create_transit_gateway_metering_policy_entry::builders::CreateTransitGatewayMeteringPolicyEntryFluentBuilder::set_destination_cidr_block):<br>required: **false**<br><p>The destination CIDR block for traffic matching.</p><br>
15    ///   - [`destination_port_range(impl Into<String>)`](crate::operation::create_transit_gateway_metering_policy_entry::builders::CreateTransitGatewayMeteringPolicyEntryFluentBuilder::destination_port_range) / [`set_destination_port_range(Option<String>)`](crate::operation::create_transit_gateway_metering_policy_entry::builders::CreateTransitGatewayMeteringPolicyEntryFluentBuilder::set_destination_port_range):<br>required: **false**<br><p>The destination port range for traffic matching.</p><br>
16    ///   - [`protocol(impl Into<String>)`](crate::operation::create_transit_gateway_metering_policy_entry::builders::CreateTransitGatewayMeteringPolicyEntryFluentBuilder::protocol) / [`set_protocol(Option<String>)`](crate::operation::create_transit_gateway_metering_policy_entry::builders::CreateTransitGatewayMeteringPolicyEntryFluentBuilder::set_protocol):<br>required: **false**<br><p>The protocol for traffic matching (1, 6, 17, etc.).</p><br>
17    ///   - [`metered_account(TransitGatewayMeteringPayerType)`](crate::operation::create_transit_gateway_metering_policy_entry::builders::CreateTransitGatewayMeteringPolicyEntryFluentBuilder::metered_account) / [`set_metered_account(Option<TransitGatewayMeteringPayerType>)`](crate::operation::create_transit_gateway_metering_policy_entry::builders::CreateTransitGatewayMeteringPolicyEntryFluentBuilder::set_metered_account):<br>required: **true**<br><p>The Amazon Web Services account ID to which the metered traffic should be attributed.</p><br>
18    ///   - [`dry_run(bool)`](crate::operation::create_transit_gateway_metering_policy_entry::builders::CreateTransitGatewayMeteringPolicyEntryFluentBuilder::dry_run) / [`set_dry_run(Option<bool>)`](crate::operation::create_transit_gateway_metering_policy_entry::builders::CreateTransitGatewayMeteringPolicyEntryFluentBuilder::set_dry_run):<br>required: **false**<br><p>Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is <code>DryRunOperation</code>. Otherwise, it is <code>UnauthorizedOperation</code>.</p><br>
19    /// - On success, responds with [`CreateTransitGatewayMeteringPolicyEntryOutput`](crate::operation::create_transit_gateway_metering_policy_entry::CreateTransitGatewayMeteringPolicyEntryOutput) with field(s):
20    ///   - [`transit_gateway_metering_policy_entry(Option<TransitGatewayMeteringPolicyEntry>)`](crate::operation::create_transit_gateway_metering_policy_entry::CreateTransitGatewayMeteringPolicyEntryOutput::transit_gateway_metering_policy_entry): <p>Information about the created transit gateway metering policy entry.</p>
21    /// - On failure, responds with [`SdkError<CreateTransitGatewayMeteringPolicyEntryError>`](crate::operation::create_transit_gateway_metering_policy_entry::CreateTransitGatewayMeteringPolicyEntryError)
22    pub fn create_transit_gateway_metering_policy_entry(
23        &self,
24    ) -> crate::operation::create_transit_gateway_metering_policy_entry::builders::CreateTransitGatewayMeteringPolicyEntryFluentBuilder {
25        crate::operation::create_transit_gateway_metering_policy_entry::builders::CreateTransitGatewayMeteringPolicyEntryFluentBuilder::new(
26            self.handle.clone(),
27        )
28    }
29}