pub struct CreateRouteFluentBuilder { /* private fields */ }
Expand description
Fluent builder constructing a request to CreateRoute
.
Creates an Amazon Web Services Migration Hub Refactor Spaces route. The account owner of the service resource is always the environment owner, regardless of which account creates the route. Routes target a service in the application. If an application does not have any routes, then the first route must be created as a DEFAULT
RouteType
.
When created, the default route defaults to an active state so state is not a required input. However, like all other state values the state of the default route can be updated after creation, but only when all other routes are also inactive. Conversely, no route can be active without the default route also being active.
When you create a route, Refactor Spaces configures the Amazon API Gateway to send traffic to the target service as follows:
-
URL Endpoints
If the service has a URL endpoint, and the endpoint resolves to a private IP address, Refactor Spaces routes traffic using the API Gateway VPC link. If a service endpoint resolves to a public IP address, Refactor Spaces routes traffic over the public internet. Services can have HTTP or HTTPS URL endpoints. For HTTPS URLs, publicly-signed certificates are supported. Private Certificate Authorities (CAs) are permitted only if the CA's domain is also publicly resolvable.
Refactor Spaces automatically resolves the public Domain Name System (DNS) names that are set in
CreateService:UrlEndpoint
when you create a service. The DNS names resolve when the DNS time-to-live (TTL) expires, or every 60 seconds for TTLs less than 60 seconds. This periodic DNS resolution ensures that the route configuration remains up-to-date.One-time health check
A one-time health check is performed on the service when either the route is updated from inactive to active, or when it is created with an active state. If the health check fails, the route transitions the route state to
FAILED
, an error code ofSERVICE_ENDPOINT_HEALTH_CHECK_FAILURE
is provided, and no traffic is sent to the service.For private URLs, a target group is created on the Network Load Balancer and the load balancer target group runs default target health checks. By default, the health check is run against the service endpoint URL. Optionally, the health check can be performed against a different protocol, port, and/or path using the CreateService:UrlEndpoint parameter. All other health check settings for the load balancer use the default values described in the Health checks for your target groups in the Elastic Load Balancing guide. The health check is considered successful if at least one target within the target group transitions to a healthy state.
-
Lambda function endpoints
If the service has an Lambda function endpoint, then Refactor Spaces configures the Lambda function's resource policy to allow the application's API Gateway to invoke the function.
The Lambda function state is checked. If the function is not active, the function configuration is updated so that Lambda resources are provisioned. If the Lambda state is
Failed
, then the route creation fails. For more information, see the GetFunctionConfiguration's State response parameter in the Lambda Developer Guide.A check is performed to determine that a Lambda function with the specified ARN exists. If it does not exist, the health check fails. For public URLs, a connection is opened to the public endpoint. If the URL is not reachable, the health check fails.
Environments without a network bridge
When you create environments without a network bridge (CreateEnvironment:NetworkFabricType is NONE)
and you use your own networking infrastructure, you need to configure VPC to VPC connectivity between your network and the application proxy VPC. Route creation from the application proxy to service endpoints will fail if your network is not configured to connect to the application proxy VPC. For more information, see Create a route in the Refactor Spaces User Guide.
Implementations§
Source§impl CreateRouteFluentBuilder
impl CreateRouteFluentBuilder
Sourcepub fn as_input(&self) -> &CreateRouteInputBuilder
pub fn as_input(&self) -> &CreateRouteInputBuilder
Access the CreateRoute as a reference.
Sourcepub async fn send(
self,
) -> Result<CreateRouteOutput, SdkError<CreateRouteError, HttpResponse>>
pub async fn send( self, ) -> Result<CreateRouteOutput, SdkError<CreateRouteError, HttpResponse>>
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, which can be set when configuring the client.
Sourcepub fn customize(
self,
) -> CustomizableOperation<CreateRouteOutput, CreateRouteError, Self>
pub fn customize( self, ) -> CustomizableOperation<CreateRouteOutput, CreateRouteError, Self>
Consumes this builder, creating a customizable operation that can be modified before being sent.
Sourcepub fn environment_identifier(self, input: impl Into<String>) -> Self
pub fn environment_identifier(self, input: impl Into<String>) -> Self
The ID of the environment in which the route is created.
Sourcepub fn set_environment_identifier(self, input: Option<String>) -> Self
pub fn set_environment_identifier(self, input: Option<String>) -> Self
The ID of the environment in which the route is created.
Sourcepub fn get_environment_identifier(&self) -> &Option<String>
pub fn get_environment_identifier(&self) -> &Option<String>
The ID of the environment in which the route is created.
Sourcepub fn application_identifier(self, input: impl Into<String>) -> Self
pub fn application_identifier(self, input: impl Into<String>) -> Self
The ID of the application within which the route is being created.
Sourcepub fn set_application_identifier(self, input: Option<String>) -> Self
pub fn set_application_identifier(self, input: Option<String>) -> Self
The ID of the application within which the route is being created.
Sourcepub fn get_application_identifier(&self) -> &Option<String>
pub fn get_application_identifier(&self) -> &Option<String>
The ID of the application within which the route is being created.
Sourcepub fn service_identifier(self, input: impl Into<String>) -> Self
pub fn service_identifier(self, input: impl Into<String>) -> Self
The ID of the service in which the route is created. Traffic that matches this route is forwarded to this service.
Sourcepub fn set_service_identifier(self, input: Option<String>) -> Self
pub fn set_service_identifier(self, input: Option<String>) -> Self
The ID of the service in which the route is created. Traffic that matches this route is forwarded to this service.
Sourcepub fn get_service_identifier(&self) -> &Option<String>
pub fn get_service_identifier(&self) -> &Option<String>
The ID of the service in which the route is created. Traffic that matches this route is forwarded to this service.
Sourcepub fn route_type(self, input: RouteType) -> Self
pub fn route_type(self, input: RouteType) -> Self
The route type of the route. DEFAULT
indicates that all traffic that does not match another route is forwarded to the default route. Applications must have a default route before any other routes can be created. URI_PATH
indicates a route that is based on a URI path.
Sourcepub fn set_route_type(self, input: Option<RouteType>) -> Self
pub fn set_route_type(self, input: Option<RouteType>) -> Self
The route type of the route. DEFAULT
indicates that all traffic that does not match another route is forwarded to the default route. Applications must have a default route before any other routes can be created. URI_PATH
indicates a route that is based on a URI path.
Sourcepub fn get_route_type(&self) -> &Option<RouteType>
pub fn get_route_type(&self) -> &Option<RouteType>
The route type of the route. DEFAULT
indicates that all traffic that does not match another route is forwarded to the default route. Applications must have a default route before any other routes can be created. URI_PATH
indicates a route that is based on a URI path.
Sourcepub fn default_route(self, input: DefaultRouteInput) -> Self
pub fn default_route(self, input: DefaultRouteInput) -> Self
Configuration for the default route type.
Sourcepub fn set_default_route(self, input: Option<DefaultRouteInput>) -> Self
pub fn set_default_route(self, input: Option<DefaultRouteInput>) -> Self
Configuration for the default route type.
Sourcepub fn get_default_route(&self) -> &Option<DefaultRouteInput>
pub fn get_default_route(&self) -> &Option<DefaultRouteInput>
Configuration for the default route type.
Sourcepub fn uri_path_route(self, input: UriPathRouteInput) -> Self
pub fn uri_path_route(self, input: UriPathRouteInput) -> Self
The configuration for the URI path route type.
Sourcepub fn set_uri_path_route(self, input: Option<UriPathRouteInput>) -> Self
pub fn set_uri_path_route(self, input: Option<UriPathRouteInput>) -> Self
The configuration for the URI path route type.
Sourcepub fn get_uri_path_route(&self) -> &Option<UriPathRouteInput>
pub fn get_uri_path_route(&self) -> &Option<UriPathRouteInput>
The configuration for the URI path route type.
Adds a key-value pair to Tags
.
To override the contents of this collection use set_tags
.
The tags to assign to the route. A tag is a label that you assign to an Amazon Web Services resource. Each tag consists of a key-value pair..
The tags to assign to the route. A tag is a label that you assign to an Amazon Web Services resource. Each tag consists of a key-value pair..
The tags to assign to the route. A tag is a label that you assign to an Amazon Web Services resource. Each tag consists of a key-value pair..
Sourcepub fn client_token(self, input: impl Into<String>) -> Self
pub fn client_token(self, input: impl Into<String>) -> Self
A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.
Sourcepub fn set_client_token(self, input: Option<String>) -> Self
pub fn set_client_token(self, input: Option<String>) -> Self
A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.
Sourcepub fn get_client_token(&self) -> &Option<String>
pub fn get_client_token(&self) -> &Option<String>
A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.
Trait Implementations§
Source§impl Clone for CreateRouteFluentBuilder
impl Clone for CreateRouteFluentBuilder
Source§fn clone(&self) -> CreateRouteFluentBuilder
fn clone(&self) -> CreateRouteFluentBuilder
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreAuto Trait Implementations§
impl Freeze for CreateRouteFluentBuilder
impl !RefUnwindSafe for CreateRouteFluentBuilder
impl Send for CreateRouteFluentBuilder
impl Sync for CreateRouteFluentBuilder
impl Unpin for CreateRouteFluentBuilder
impl !UnwindSafe for CreateRouteFluentBuilder
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Paint for Twhere
T: ?Sized,
impl<T> Paint for Twhere
T: ?Sized,
Source§fn fg(&self, value: Color) -> Painted<&T>
fn fg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the foreground set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like red()
and
green()
, which have the same functionality but are
pithier.
§Example
Set foreground color to white using fg()
:
use yansi::{Paint, Color};
painted.fg(Color::White);
Set foreground color to white using white()
.
use yansi::Paint;
painted.white();
Source§fn bright_black(&self) -> Painted<&T>
fn bright_black(&self) -> Painted<&T>
Source§fn bright_red(&self) -> Painted<&T>
fn bright_red(&self) -> Painted<&T>
Source§fn bright_green(&self) -> Painted<&T>
fn bright_green(&self) -> Painted<&T>
Source§fn bright_yellow(&self) -> Painted<&T>
fn bright_yellow(&self) -> Painted<&T>
Source§fn bright_blue(&self) -> Painted<&T>
fn bright_blue(&self) -> Painted<&T>
Source§fn bright_magenta(&self) -> Painted<&T>
fn bright_magenta(&self) -> Painted<&T>
Source§fn bright_cyan(&self) -> Painted<&T>
fn bright_cyan(&self) -> Painted<&T>
Source§fn bright_white(&self) -> Painted<&T>
fn bright_white(&self) -> Painted<&T>
Source§fn bg(&self, value: Color) -> Painted<&T>
fn bg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the background set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like on_red()
and
on_green()
, which have the same functionality but
are pithier.
§Example
Set background color to red using fg()
:
use yansi::{Paint, Color};
painted.bg(Color::Red);
Set background color to red using on_red()
.
use yansi::Paint;
painted.on_red();
Source§fn on_primary(&self) -> Painted<&T>
fn on_primary(&self) -> Painted<&T>
Source§fn on_magenta(&self) -> Painted<&T>
fn on_magenta(&self) -> Painted<&T>
Source§fn on_bright_black(&self) -> Painted<&T>
fn on_bright_black(&self) -> Painted<&T>
Source§fn on_bright_red(&self) -> Painted<&T>
fn on_bright_red(&self) -> Painted<&T>
Source§fn on_bright_green(&self) -> Painted<&T>
fn on_bright_green(&self) -> Painted<&T>
Source§fn on_bright_yellow(&self) -> Painted<&T>
fn on_bright_yellow(&self) -> Painted<&T>
Source§fn on_bright_blue(&self) -> Painted<&T>
fn on_bright_blue(&self) -> Painted<&T>
Source§fn on_bright_magenta(&self) -> Painted<&T>
fn on_bright_magenta(&self) -> Painted<&T>
Source§fn on_bright_cyan(&self) -> Painted<&T>
fn on_bright_cyan(&self) -> Painted<&T>
Source§fn on_bright_white(&self) -> Painted<&T>
fn on_bright_white(&self) -> Painted<&T>
Source§fn attr(&self, value: Attribute) -> Painted<&T>
fn attr(&self, value: Attribute) -> Painted<&T>
Enables the styling Attribute
value
.
This method should be used rarely. Instead, prefer to use
attribute-specific builder methods like bold()
and
underline()
, which have the same functionality
but are pithier.
§Example
Make text bold using attr()
:
use yansi::{Paint, Attribute};
painted.attr(Attribute::Bold);
Make text bold using using bold()
.
use yansi::Paint;
painted.bold();
Source§fn rapid_blink(&self) -> Painted<&T>
fn rapid_blink(&self) -> Painted<&T>
Source§fn quirk(&self, value: Quirk) -> Painted<&T>
fn quirk(&self, value: Quirk) -> Painted<&T>
Enables the yansi
Quirk
value
.
This method should be used rarely. Instead, prefer to use quirk-specific
builder methods like mask()
and
wrap()
, which have the same functionality but are
pithier.
§Example
Enable wrapping using .quirk()
:
use yansi::{Paint, Quirk};
painted.quirk(Quirk::Wrap);
Enable wrapping using wrap()
.
use yansi::Paint;
painted.wrap();
Source§fn clear(&self) -> Painted<&T>
👎Deprecated since 1.0.1: renamed to resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.
fn clear(&self) -> Painted<&T>
resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.Source§fn whenever(&self, value: Condition) -> Painted<&T>
fn whenever(&self, value: Condition) -> Painted<&T>
Conditionally enable styling based on whether the Condition
value
applies. Replaces any previous condition.
See the crate level docs for more details.
§Example
Enable styling painted
only when both stdout
and stderr
are TTYs:
use yansi::{Paint, Condition};
painted.red().on_yellow().whenever(Condition::STDOUTERR_ARE_TTY);