1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
    /// Constructs a fluent builder for the [`AuthorizeSecurityGroupEgress`](crate::operation::authorize_security_group_egress::builders::AuthorizeSecurityGroupEgressFluentBuilder) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`dry_run(bool)`](crate::operation::authorize_security_group_egress::builders::AuthorizeSecurityGroupEgressFluentBuilder::dry_run) / [`set_dry_run(Option<bool>)`](crate::operation::authorize_security_group_egress::builders::AuthorizeSecurityGroupEgressFluentBuilder::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>
    ///   - [`group_id(impl Into<String>)`](crate::operation::authorize_security_group_egress::builders::AuthorizeSecurityGroupEgressFluentBuilder::group_id) / [`set_group_id(Option<String>)`](crate::operation::authorize_security_group_egress::builders::AuthorizeSecurityGroupEgressFluentBuilder::set_group_id):<br>required: **true**<br><p>The ID of the security group.</p><br>
    ///   - [`ip_permissions(IpPermission)`](crate::operation::authorize_security_group_egress::builders::AuthorizeSecurityGroupEgressFluentBuilder::ip_permissions) / [`set_ip_permissions(Option<Vec::<IpPermission>>)`](crate::operation::authorize_security_group_egress::builders::AuthorizeSecurityGroupEgressFluentBuilder::set_ip_permissions):<br>required: **false**<br><p>The permissions for the security group rules.</p><br>
    ///   - [`tag_specifications(TagSpecification)`](crate::operation::authorize_security_group_egress::builders::AuthorizeSecurityGroupEgressFluentBuilder::tag_specifications) / [`set_tag_specifications(Option<Vec::<TagSpecification>>)`](crate::operation::authorize_security_group_egress::builders::AuthorizeSecurityGroupEgressFluentBuilder::set_tag_specifications):<br>required: **false**<br><p>The tags applied to the security group rule.</p><br>
    ///   - [`cidr_ip(impl Into<String>)`](crate::operation::authorize_security_group_egress::builders::AuthorizeSecurityGroupEgressFluentBuilder::cidr_ip) / [`set_cidr_ip(Option<String>)`](crate::operation::authorize_security_group_egress::builders::AuthorizeSecurityGroupEgressFluentBuilder::set_cidr_ip):<br>required: **false**<br><p>Not supported. Use IP permissions instead.</p><br>
    ///   - [`from_port(i32)`](crate::operation::authorize_security_group_egress::builders::AuthorizeSecurityGroupEgressFluentBuilder::from_port) / [`set_from_port(Option<i32>)`](crate::operation::authorize_security_group_egress::builders::AuthorizeSecurityGroupEgressFluentBuilder::set_from_port):<br>required: **false**<br><p>Not supported. Use IP permissions instead.</p><br>
    ///   - [`ip_protocol(impl Into<String>)`](crate::operation::authorize_security_group_egress::builders::AuthorizeSecurityGroupEgressFluentBuilder::ip_protocol) / [`set_ip_protocol(Option<String>)`](crate::operation::authorize_security_group_egress::builders::AuthorizeSecurityGroupEgressFluentBuilder::set_ip_protocol):<br>required: **false**<br><p>Not supported. Use IP permissions instead.</p><br>
    ///   - [`to_port(i32)`](crate::operation::authorize_security_group_egress::builders::AuthorizeSecurityGroupEgressFluentBuilder::to_port) / [`set_to_port(Option<i32>)`](crate::operation::authorize_security_group_egress::builders::AuthorizeSecurityGroupEgressFluentBuilder::set_to_port):<br>required: **false**<br><p>Not supported. Use IP permissions instead.</p><br>
    ///   - [`source_security_group_name(impl Into<String>)`](crate::operation::authorize_security_group_egress::builders::AuthorizeSecurityGroupEgressFluentBuilder::source_security_group_name) / [`set_source_security_group_name(Option<String>)`](crate::operation::authorize_security_group_egress::builders::AuthorizeSecurityGroupEgressFluentBuilder::set_source_security_group_name):<br>required: **false**<br><p>Not supported. Use IP permissions instead.</p><br>
    ///   - [`source_security_group_owner_id(impl Into<String>)`](crate::operation::authorize_security_group_egress::builders::AuthorizeSecurityGroupEgressFluentBuilder::source_security_group_owner_id) / [`set_source_security_group_owner_id(Option<String>)`](crate::operation::authorize_security_group_egress::builders::AuthorizeSecurityGroupEgressFluentBuilder::set_source_security_group_owner_id):<br>required: **false**<br><p>Not supported. Use IP permissions instead.</p><br>
    /// - On success, responds with [`AuthorizeSecurityGroupEgressOutput`](crate::operation::authorize_security_group_egress::AuthorizeSecurityGroupEgressOutput) with field(s):
    ///   - [`r#return(Option<bool>)`](crate::operation::authorize_security_group_egress::AuthorizeSecurityGroupEgressOutput::return): <p>Returns <code>true</code> if the request succeeds; otherwise, returns an error.</p>
    ///   - [`security_group_rules(Option<Vec::<SecurityGroupRule>>)`](crate::operation::authorize_security_group_egress::AuthorizeSecurityGroupEgressOutput::security_group_rules): <p>Information about the outbound (egress) security group rules that were added.</p>
    /// - On failure, responds with [`SdkError<AuthorizeSecurityGroupEgressError>`](crate::operation::authorize_security_group_egress::AuthorizeSecurityGroupEgressError)
    pub fn authorize_security_group_egress(
        &self,
    ) -> crate::operation::authorize_security_group_egress::builders::AuthorizeSecurityGroupEgressFluentBuilder {
        crate::operation::authorize_security_group_egress::builders::AuthorizeSecurityGroupEgressFluentBuilder::new(self.handle.clone())
    }
}