pub struct Builder { /* private fields */ }
Expand description

A builder for CreateVpcEndpointInput.

Implementations§

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 DryRunOperation. Otherwise, it is UnauthorizedOperation.

Examples found in repository?
src/client.rs (line 24649)
24648
24649
24650
24651
        pub fn dry_run(mut self, input: bool) -> Self {
            self.inner = self.inner.dry_run(input);
            self
        }

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 DryRunOperation. Otherwise, it is UnauthorizedOperation.

Examples found in repository?
src/client.rs (line 24654)
24653
24654
24655
24656
        pub fn set_dry_run(mut self, input: std::option::Option<bool>) -> Self {
            self.inner = self.inner.set_dry_run(input);
            self
        }

The type of endpoint.

Default: Gateway

Examples found in repository?
src/client.rs (line 24660)
24659
24660
24661
24662
        pub fn vpc_endpoint_type(mut self, input: crate::model::VpcEndpointType) -> Self {
            self.inner = self.inner.vpc_endpoint_type(input);
            self
        }

The type of endpoint.

Default: Gateway

Examples found in repository?
src/client.rs (line 24669)
24665
24666
24667
24668
24669
24670
24671
        pub fn set_vpc_endpoint_type(
            mut self,
            input: std::option::Option<crate::model::VpcEndpointType>,
        ) -> Self {
            self.inner = self.inner.set_vpc_endpoint_type(input);
            self
        }

The ID of the VPC in which the endpoint will be used.

Examples found in repository?
src/client.rs (line 24674)
24673
24674
24675
24676
        pub fn vpc_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.vpc_id(input.into());
            self
        }

The ID of the VPC in which the endpoint will be used.

Examples found in repository?
src/client.rs (line 24679)
24678
24679
24680
24681
        pub fn set_vpc_id(mut self, input: std::option::Option<std::string::String>) -> Self {
            self.inner = self.inner.set_vpc_id(input);
            self
        }

The service name. To get a list of available services, use the DescribeVpcEndpointServices request, or get the name from the service provider.

Examples found in repository?
src/client.rs (line 24684)
24683
24684
24685
24686
        pub fn service_name(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.service_name(input.into());
            self
        }

The service name. To get a list of available services, use the DescribeVpcEndpointServices request, or get the name from the service provider.

Examples found in repository?
src/client.rs (line 24689)
24688
24689
24690
24691
        pub fn set_service_name(mut self, input: std::option::Option<std::string::String>) -> Self {
            self.inner = self.inner.set_service_name(input);
            self
        }

(Interface and gateway endpoints) A policy to attach to the endpoint that controls access to the service. The policy must be in valid JSON format. If this parameter is not specified, we attach a default policy that allows full access to the service.

Examples found in repository?
src/client.rs (line 24694)
24693
24694
24695
24696
        pub fn policy_document(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.policy_document(input.into());
            self
        }

(Interface and gateway endpoints) A policy to attach to the endpoint that controls access to the service. The policy must be in valid JSON format. If this parameter is not specified, we attach a default policy that allows full access to the service.

Examples found in repository?
src/client.rs (line 24702)
24698
24699
24700
24701
24702
24703
24704
        pub fn set_policy_document(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_policy_document(input);
            self
        }

Appends an item to route_table_ids.

To override the contents of this collection use set_route_table_ids.

(Gateway endpoint) One or more route table IDs.

Examples found in repository?
src/client.rs (line 24711)
24710
24711
24712
24713
        pub fn route_table_ids(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.route_table_ids(input.into());
            self
        }

(Gateway endpoint) One or more route table IDs.

Examples found in repository?
src/client.rs (line 24719)
24715
24716
24717
24718
24719
24720
24721
        pub fn set_route_table_ids(
            mut self,
            input: std::option::Option<std::vec::Vec<std::string::String>>,
        ) -> Self {
            self.inner = self.inner.set_route_table_ids(input);
            self
        }

Appends an item to subnet_ids.

To override the contents of this collection use set_subnet_ids.

(Interface and Gateway Load Balancer endpoints) The ID of one or more subnets in which to create an endpoint network interface. For a Gateway Load Balancer endpoint, you can specify one subnet only.

Examples found in repository?
src/client.rs (line 24728)
24727
24728
24729
24730
        pub fn subnet_ids(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.subnet_ids(input.into());
            self
        }

(Interface and Gateway Load Balancer endpoints) The ID of one or more subnets in which to create an endpoint network interface. For a Gateway Load Balancer endpoint, you can specify one subnet only.

Examples found in repository?
src/client.rs (line 24736)
24732
24733
24734
24735
24736
24737
24738
        pub fn set_subnet_ids(
            mut self,
            input: std::option::Option<std::vec::Vec<std::string::String>>,
        ) -> Self {
            self.inner = self.inner.set_subnet_ids(input);
            self
        }

Appends an item to security_group_ids.

To override the contents of this collection use set_security_group_ids.

(Interface endpoint) The ID of one or more security groups to associate with the endpoint network interface.

Examples found in repository?
src/client.rs (line 24745)
24744
24745
24746
24747
        pub fn security_group_ids(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.security_group_ids(input.into());
            self
        }

(Interface endpoint) The ID of one or more security groups to associate with the endpoint network interface.

Examples found in repository?
src/client.rs (line 24753)
24749
24750
24751
24752
24753
24754
24755
        pub fn set_security_group_ids(
            mut self,
            input: std::option::Option<std::vec::Vec<std::string::String>>,
        ) -> Self {
            self.inner = self.inner.set_security_group_ids(input);
            self
        }

The IP address type for the endpoint.

Examples found in repository?
src/client.rs (line 24758)
24757
24758
24759
24760
        pub fn ip_address_type(mut self, input: crate::model::IpAddressType) -> Self {
            self.inner = self.inner.ip_address_type(input);
            self
        }

The IP address type for the endpoint.

Examples found in repository?
src/client.rs (line 24766)
24762
24763
24764
24765
24766
24767
24768
        pub fn set_ip_address_type(
            mut self,
            input: std::option::Option<crate::model::IpAddressType>,
        ) -> Self {
            self.inner = self.inner.set_ip_address_type(input);
            self
        }

The DNS options for the endpoint.

Examples found in repository?
src/client.rs (line 24771)
24770
24771
24772
24773
        pub fn dns_options(mut self, input: crate::model::DnsOptionsSpecification) -> Self {
            self.inner = self.inner.dns_options(input);
            self
        }

The DNS options for the endpoint.

Examples found in repository?
src/client.rs (line 24779)
24775
24776
24777
24778
24779
24780
24781
        pub fn set_dns_options(
            mut self,
            input: std::option::Option<crate::model::DnsOptionsSpecification>,
        ) -> Self {
            self.inner = self.inner.set_dns_options(input);
            self
        }

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

Examples found in repository?
src/client.rs (line 24784)
24783
24784
24785
24786
        pub fn client_token(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.client_token(input.into());
            self
        }

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

Examples found in repository?
src/client.rs (line 24789)
24788
24789
24790
24791
        pub fn set_client_token(mut self, input: std::option::Option<std::string::String>) -> Self {
            self.inner = self.inner.set_client_token(input);
            self
        }

(Interface endpoint) Indicates whether to associate a private hosted zone with the specified VPC. The private hosted zone contains a record set for the default public DNS name for the service for the Region (for example, kinesis.us-east-1.amazonaws.com), which resolves to the private IP addresses of the endpoint network interfaces in the VPC. This enables you to make requests to the default public DNS name for the service instead of the public DNS names that are automatically generated by the VPC endpoint service.

To use a private hosted zone, you must set the following VPC attributes to true: enableDnsHostnames and enableDnsSupport. Use ModifyVpcAttribute to set the VPC attributes.

Default: true

Examples found in repository?
src/client.rs (line 24796)
24795
24796
24797
24798
        pub fn private_dns_enabled(mut self, input: bool) -> Self {
            self.inner = self.inner.private_dns_enabled(input);
            self
        }

(Interface endpoint) Indicates whether to associate a private hosted zone with the specified VPC. The private hosted zone contains a record set for the default public DNS name for the service for the Region (for example, kinesis.us-east-1.amazonaws.com), which resolves to the private IP addresses of the endpoint network interfaces in the VPC. This enables you to make requests to the default public DNS name for the service instead of the public DNS names that are automatically generated by the VPC endpoint service.

To use a private hosted zone, you must set the following VPC attributes to true: enableDnsHostnames and enableDnsSupport. Use ModifyVpcAttribute to set the VPC attributes.

Default: true

Examples found in repository?
src/client.rs (line 24803)
24802
24803
24804
24805
        pub fn set_private_dns_enabled(mut self, input: std::option::Option<bool>) -> Self {
            self.inner = self.inner.set_private_dns_enabled(input);
            self
        }

Appends an item to tag_specifications.

To override the contents of this collection use set_tag_specifications.

The tags to associate with the endpoint.

Examples found in repository?
src/client.rs (line 24812)
24811
24812
24813
24814
        pub fn tag_specifications(mut self, input: crate::model::TagSpecification) -> Self {
            self.inner = self.inner.tag_specifications(input);
            self
        }

The tags to associate with the endpoint.

Examples found in repository?
src/client.rs (line 24820)
24816
24817
24818
24819
24820
24821
24822
        pub fn set_tag_specifications(
            mut self,
            input: std::option::Option<std::vec::Vec<crate::model::TagSpecification>>,
        ) -> Self {
            self.inner = self.inner.set_tag_specifications(input);
            self
        }

Consumes the builder and constructs a CreateVpcEndpointInput.

Examples found in repository?
src/client.rs (line 24616)
24604
24605
24606
24607
24608
24609
24610
24611
24612
24613
24614
24615
24616
24617
24618
24619
24620
24621
24622
24623
24624
24625
24626
24627
24628
24629
24630
24631
24632
24633
24634
24635
24636
24637
24638
24639
24640
24641
24642
24643
24644
24645
24646
        pub async fn customize(
            self,
        ) -> std::result::Result<
            crate::operation::customize::CustomizableOperation<
                crate::operation::CreateVpcEndpoint,
                aws_http::retry::AwsResponseRetryClassifier,
            >,
            aws_smithy_http::result::SdkError<crate::error::CreateVpcEndpointError>,
        > {
            let handle = self.handle.clone();
            let operation = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            Ok(crate::operation::customize::CustomizableOperation { handle, operation })
        }

        /// Sends the request and returns the response.
        ///
        /// If an error occurs, an `SdkError` will be returned with additional details that
        /// can be matched against.
        ///
        /// By default, any retryable failures will be retried twice. Retry behavior
        /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
        /// set when configuring the client.
        pub async fn send(
            self,
        ) -> std::result::Result<
            crate::output::CreateVpcEndpointOutput,
            aws_smithy_http::result::SdkError<crate::error::CreateVpcEndpointError>,
        > {
            let op = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&self.handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            self.handle.client.call(op).await
        }

Trait Implementations§

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
Returns the “default value” for a type. Read more
This method tests for self and other values to be equal, and is used by ==. Read more
This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason. Read more

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Should always be Self
The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.
Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more