Struct aws_sdk_appmesh::model::grpc_retry_policy::Builder
source · pub struct Builder { /* private fields */ }
Expand description
A builder for GrpcRetryPolicy
.
Implementations§
source§impl Builder
impl Builder
sourcepub fn per_retry_timeout(self, input: Duration) -> Self
pub fn per_retry_timeout(self, input: Duration) -> Self
The timeout for each retry attempt.
sourcepub fn set_per_retry_timeout(self, input: Option<Duration>) -> Self
pub fn set_per_retry_timeout(self, input: Option<Duration>) -> Self
The timeout for each retry attempt.
Examples found in repository?
5708 5709 5710 5711 5712 5713 5714 5715 5716 5717 5718 5719 5720 5721 5722 5723 5724 5725 5726 5727 5728 5729 5730 5731 5732 5733 5734 5735 5736 5737 5738 5739 5740 5741 5742 5743 5744 5745 5746 5747 5748 5749 5750 5751 5752 5753 5754 5755 5756 5757 5758 5759 5760 5761 5762 5763 5764 5765 5766 5767 5768 5769 5770 5771 5772 5773 5774 5775 5776 5777 5778 5779 5780 5781 5782 5783 5784
pub(crate) fn deser_structure_crate_model_grpc_retry_policy<'a, I>(
tokens: &mut std::iter::Peekable<I>,
) -> Result<
Option<crate::model::GrpcRetryPolicy>,
aws_smithy_json::deserialize::error::DeserializeError,
>
where
I: Iterator<
Item = Result<
aws_smithy_json::deserialize::Token<'a>,
aws_smithy_json::deserialize::error::DeserializeError,
>,
>,
{
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
Some(aws_smithy_json::deserialize::Token::StartObject { .. }) => {
#[allow(unused_mut)]
let mut builder = crate::model::grpc_retry_policy::Builder::default();
loop {
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
Some(aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
match key.to_unescaped()?.as_ref() {
"perRetryTimeout" => {
builder = builder.set_per_retry_timeout(
crate::json_deser::deser_structure_crate_model_duration(
tokens,
)?,
);
}
"maxRetries" => {
builder = builder.set_max_retries(
aws_smithy_json::deserialize::token::expect_number_or_null(
tokens.next(),
)?
.map(i64::try_from)
.transpose()?,
);
}
"httpRetryEvents" => {
builder = builder.set_http_retry_events(
crate::json_deser::deser_list_com_amazonaws_appmesh_http_retry_policy_events(tokens)?
);
}
"tcpRetryEvents" => {
builder = builder.set_tcp_retry_events(
crate::json_deser::deser_list_com_amazonaws_appmesh_tcp_retry_policy_events(tokens)?
);
}
"grpcRetryEvents" => {
builder = builder.set_grpc_retry_events(
crate::json_deser::deser_list_com_amazonaws_appmesh_grpc_retry_policy_events(tokens)?
);
}
_ => aws_smithy_json::deserialize::token::skip_value(tokens)?,
}
}
other => {
return Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
"expected object key or end object, found: {:?}",
other
)),
)
}
}
}
Ok(Some(builder.build()))
}
_ => Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(
"expected start object or null",
),
),
}
}
sourcepub fn max_retries(self, input: i64) -> Self
pub fn max_retries(self, input: i64) -> Self
The maximum number of retry attempts.
sourcepub fn set_max_retries(self, input: Option<i64>) -> Self
pub fn set_max_retries(self, input: Option<i64>) -> Self
The maximum number of retry attempts.
Examples found in repository?
5708 5709 5710 5711 5712 5713 5714 5715 5716 5717 5718 5719 5720 5721 5722 5723 5724 5725 5726 5727 5728 5729 5730 5731 5732 5733 5734 5735 5736 5737 5738 5739 5740 5741 5742 5743 5744 5745 5746 5747 5748 5749 5750 5751 5752 5753 5754 5755 5756 5757 5758 5759 5760 5761 5762 5763 5764 5765 5766 5767 5768 5769 5770 5771 5772 5773 5774 5775 5776 5777 5778 5779 5780 5781 5782 5783 5784
pub(crate) fn deser_structure_crate_model_grpc_retry_policy<'a, I>(
tokens: &mut std::iter::Peekable<I>,
) -> Result<
Option<crate::model::GrpcRetryPolicy>,
aws_smithy_json::deserialize::error::DeserializeError,
>
where
I: Iterator<
Item = Result<
aws_smithy_json::deserialize::Token<'a>,
aws_smithy_json::deserialize::error::DeserializeError,
>,
>,
{
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
Some(aws_smithy_json::deserialize::Token::StartObject { .. }) => {
#[allow(unused_mut)]
let mut builder = crate::model::grpc_retry_policy::Builder::default();
loop {
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
Some(aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
match key.to_unescaped()?.as_ref() {
"perRetryTimeout" => {
builder = builder.set_per_retry_timeout(
crate::json_deser::deser_structure_crate_model_duration(
tokens,
)?,
);
}
"maxRetries" => {
builder = builder.set_max_retries(
aws_smithy_json::deserialize::token::expect_number_or_null(
tokens.next(),
)?
.map(i64::try_from)
.transpose()?,
);
}
"httpRetryEvents" => {
builder = builder.set_http_retry_events(
crate::json_deser::deser_list_com_amazonaws_appmesh_http_retry_policy_events(tokens)?
);
}
"tcpRetryEvents" => {
builder = builder.set_tcp_retry_events(
crate::json_deser::deser_list_com_amazonaws_appmesh_tcp_retry_policy_events(tokens)?
);
}
"grpcRetryEvents" => {
builder = builder.set_grpc_retry_events(
crate::json_deser::deser_list_com_amazonaws_appmesh_grpc_retry_policy_events(tokens)?
);
}
_ => aws_smithy_json::deserialize::token::skip_value(tokens)?,
}
}
other => {
return Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
"expected object key or end object, found: {:?}",
other
)),
)
}
}
}
Ok(Some(builder.build()))
}
_ => Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(
"expected start object or null",
),
),
}
}
sourcepub fn http_retry_events(self, input: impl Into<String>) -> Self
pub fn http_retry_events(self, input: impl Into<String>) -> Self
Appends an item to http_retry_events
.
To override the contents of this collection use set_http_retry_events
.
Specify at least one of the following values.
-
server-error – HTTP status codes 500, 501, 502, 503, 504, 505, 506, 507, 508, 510, and 511
-
gateway-error – HTTP status codes 502, 503, and 504
-
client-error – HTTP status code 409
-
stream-error – Retry on refused stream
sourcepub fn set_http_retry_events(self, input: Option<Vec<String>>) -> Self
pub fn set_http_retry_events(self, input: Option<Vec<String>>) -> Self
Specify at least one of the following values.
-
server-error – HTTP status codes 500, 501, 502, 503, 504, 505, 506, 507, 508, 510, and 511
-
gateway-error – HTTP status codes 502, 503, and 504
-
client-error – HTTP status code 409
-
stream-error – Retry on refused stream
Examples found in repository?
5708 5709 5710 5711 5712 5713 5714 5715 5716 5717 5718 5719 5720 5721 5722 5723 5724 5725 5726 5727 5728 5729 5730 5731 5732 5733 5734 5735 5736 5737 5738 5739 5740 5741 5742 5743 5744 5745 5746 5747 5748 5749 5750 5751 5752 5753 5754 5755 5756 5757 5758 5759 5760 5761 5762 5763 5764 5765 5766 5767 5768 5769 5770 5771 5772 5773 5774 5775 5776 5777 5778 5779 5780 5781 5782 5783 5784
pub(crate) fn deser_structure_crate_model_grpc_retry_policy<'a, I>(
tokens: &mut std::iter::Peekable<I>,
) -> Result<
Option<crate::model::GrpcRetryPolicy>,
aws_smithy_json::deserialize::error::DeserializeError,
>
where
I: Iterator<
Item = Result<
aws_smithy_json::deserialize::Token<'a>,
aws_smithy_json::deserialize::error::DeserializeError,
>,
>,
{
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
Some(aws_smithy_json::deserialize::Token::StartObject { .. }) => {
#[allow(unused_mut)]
let mut builder = crate::model::grpc_retry_policy::Builder::default();
loop {
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
Some(aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
match key.to_unescaped()?.as_ref() {
"perRetryTimeout" => {
builder = builder.set_per_retry_timeout(
crate::json_deser::deser_structure_crate_model_duration(
tokens,
)?,
);
}
"maxRetries" => {
builder = builder.set_max_retries(
aws_smithy_json::deserialize::token::expect_number_or_null(
tokens.next(),
)?
.map(i64::try_from)
.transpose()?,
);
}
"httpRetryEvents" => {
builder = builder.set_http_retry_events(
crate::json_deser::deser_list_com_amazonaws_appmesh_http_retry_policy_events(tokens)?
);
}
"tcpRetryEvents" => {
builder = builder.set_tcp_retry_events(
crate::json_deser::deser_list_com_amazonaws_appmesh_tcp_retry_policy_events(tokens)?
);
}
"grpcRetryEvents" => {
builder = builder.set_grpc_retry_events(
crate::json_deser::deser_list_com_amazonaws_appmesh_grpc_retry_policy_events(tokens)?
);
}
_ => aws_smithy_json::deserialize::token::skip_value(tokens)?,
}
}
other => {
return Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
"expected object key or end object, found: {:?}",
other
)),
)
}
}
}
Ok(Some(builder.build()))
}
_ => Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(
"expected start object or null",
),
),
}
}
sourcepub fn tcp_retry_events(self, input: TcpRetryPolicyEvent) -> Self
pub fn tcp_retry_events(self, input: TcpRetryPolicyEvent) -> Self
Appends an item to tcp_retry_events
.
To override the contents of this collection use set_tcp_retry_events
.
Specify a valid value. The event occurs before any processing of a request has started and is encountered when the upstream is temporarily or permanently unavailable.
sourcepub fn set_tcp_retry_events(
self,
input: Option<Vec<TcpRetryPolicyEvent>>
) -> Self
pub fn set_tcp_retry_events(
self,
input: Option<Vec<TcpRetryPolicyEvent>>
) -> Self
Specify a valid value. The event occurs before any processing of a request has started and is encountered when the upstream is temporarily or permanently unavailable.
Examples found in repository?
5708 5709 5710 5711 5712 5713 5714 5715 5716 5717 5718 5719 5720 5721 5722 5723 5724 5725 5726 5727 5728 5729 5730 5731 5732 5733 5734 5735 5736 5737 5738 5739 5740 5741 5742 5743 5744 5745 5746 5747 5748 5749 5750 5751 5752 5753 5754 5755 5756 5757 5758 5759 5760 5761 5762 5763 5764 5765 5766 5767 5768 5769 5770 5771 5772 5773 5774 5775 5776 5777 5778 5779 5780 5781 5782 5783 5784
pub(crate) fn deser_structure_crate_model_grpc_retry_policy<'a, I>(
tokens: &mut std::iter::Peekable<I>,
) -> Result<
Option<crate::model::GrpcRetryPolicy>,
aws_smithy_json::deserialize::error::DeserializeError,
>
where
I: Iterator<
Item = Result<
aws_smithy_json::deserialize::Token<'a>,
aws_smithy_json::deserialize::error::DeserializeError,
>,
>,
{
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
Some(aws_smithy_json::deserialize::Token::StartObject { .. }) => {
#[allow(unused_mut)]
let mut builder = crate::model::grpc_retry_policy::Builder::default();
loop {
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
Some(aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
match key.to_unescaped()?.as_ref() {
"perRetryTimeout" => {
builder = builder.set_per_retry_timeout(
crate::json_deser::deser_structure_crate_model_duration(
tokens,
)?,
);
}
"maxRetries" => {
builder = builder.set_max_retries(
aws_smithy_json::deserialize::token::expect_number_or_null(
tokens.next(),
)?
.map(i64::try_from)
.transpose()?,
);
}
"httpRetryEvents" => {
builder = builder.set_http_retry_events(
crate::json_deser::deser_list_com_amazonaws_appmesh_http_retry_policy_events(tokens)?
);
}
"tcpRetryEvents" => {
builder = builder.set_tcp_retry_events(
crate::json_deser::deser_list_com_amazonaws_appmesh_tcp_retry_policy_events(tokens)?
);
}
"grpcRetryEvents" => {
builder = builder.set_grpc_retry_events(
crate::json_deser::deser_list_com_amazonaws_appmesh_grpc_retry_policy_events(tokens)?
);
}
_ => aws_smithy_json::deserialize::token::skip_value(tokens)?,
}
}
other => {
return Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
"expected object key or end object, found: {:?}",
other
)),
)
}
}
}
Ok(Some(builder.build()))
}
_ => Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(
"expected start object or null",
),
),
}
}
sourcepub fn grpc_retry_events(self, input: GrpcRetryPolicyEvent) -> Self
pub fn grpc_retry_events(self, input: GrpcRetryPolicyEvent) -> Self
Appends an item to grpc_retry_events
.
To override the contents of this collection use set_grpc_retry_events
.
Specify at least one of the valid values.
sourcepub fn set_grpc_retry_events(
self,
input: Option<Vec<GrpcRetryPolicyEvent>>
) -> Self
pub fn set_grpc_retry_events(
self,
input: Option<Vec<GrpcRetryPolicyEvent>>
) -> Self
Specify at least one of the valid values.
Examples found in repository?
5708 5709 5710 5711 5712 5713 5714 5715 5716 5717 5718 5719 5720 5721 5722 5723 5724 5725 5726 5727 5728 5729 5730 5731 5732 5733 5734 5735 5736 5737 5738 5739 5740 5741 5742 5743 5744 5745 5746 5747 5748 5749 5750 5751 5752 5753 5754 5755 5756 5757 5758 5759 5760 5761 5762 5763 5764 5765 5766 5767 5768 5769 5770 5771 5772 5773 5774 5775 5776 5777 5778 5779 5780 5781 5782 5783 5784
pub(crate) fn deser_structure_crate_model_grpc_retry_policy<'a, I>(
tokens: &mut std::iter::Peekable<I>,
) -> Result<
Option<crate::model::GrpcRetryPolicy>,
aws_smithy_json::deserialize::error::DeserializeError,
>
where
I: Iterator<
Item = Result<
aws_smithy_json::deserialize::Token<'a>,
aws_smithy_json::deserialize::error::DeserializeError,
>,
>,
{
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
Some(aws_smithy_json::deserialize::Token::StartObject { .. }) => {
#[allow(unused_mut)]
let mut builder = crate::model::grpc_retry_policy::Builder::default();
loop {
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
Some(aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
match key.to_unescaped()?.as_ref() {
"perRetryTimeout" => {
builder = builder.set_per_retry_timeout(
crate::json_deser::deser_structure_crate_model_duration(
tokens,
)?,
);
}
"maxRetries" => {
builder = builder.set_max_retries(
aws_smithy_json::deserialize::token::expect_number_or_null(
tokens.next(),
)?
.map(i64::try_from)
.transpose()?,
);
}
"httpRetryEvents" => {
builder = builder.set_http_retry_events(
crate::json_deser::deser_list_com_amazonaws_appmesh_http_retry_policy_events(tokens)?
);
}
"tcpRetryEvents" => {
builder = builder.set_tcp_retry_events(
crate::json_deser::deser_list_com_amazonaws_appmesh_tcp_retry_policy_events(tokens)?
);
}
"grpcRetryEvents" => {
builder = builder.set_grpc_retry_events(
crate::json_deser::deser_list_com_amazonaws_appmesh_grpc_retry_policy_events(tokens)?
);
}
_ => aws_smithy_json::deserialize::token::skip_value(tokens)?,
}
}
other => {
return Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
"expected object key or end object, found: {:?}",
other
)),
)
}
}
}
Ok(Some(builder.build()))
}
_ => Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(
"expected start object or null",
),
),
}
}
sourcepub fn build(self) -> GrpcRetryPolicy
pub fn build(self) -> GrpcRetryPolicy
Consumes the builder and constructs a GrpcRetryPolicy
.
Examples found in repository?
5708 5709 5710 5711 5712 5713 5714 5715 5716 5717 5718 5719 5720 5721 5722 5723 5724 5725 5726 5727 5728 5729 5730 5731 5732 5733 5734 5735 5736 5737 5738 5739 5740 5741 5742 5743 5744 5745 5746 5747 5748 5749 5750 5751 5752 5753 5754 5755 5756 5757 5758 5759 5760 5761 5762 5763 5764 5765 5766 5767 5768 5769 5770 5771 5772 5773 5774 5775 5776 5777 5778 5779 5780 5781 5782 5783 5784
pub(crate) fn deser_structure_crate_model_grpc_retry_policy<'a, I>(
tokens: &mut std::iter::Peekable<I>,
) -> Result<
Option<crate::model::GrpcRetryPolicy>,
aws_smithy_json::deserialize::error::DeserializeError,
>
where
I: Iterator<
Item = Result<
aws_smithy_json::deserialize::Token<'a>,
aws_smithy_json::deserialize::error::DeserializeError,
>,
>,
{
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
Some(aws_smithy_json::deserialize::Token::StartObject { .. }) => {
#[allow(unused_mut)]
let mut builder = crate::model::grpc_retry_policy::Builder::default();
loop {
match tokens.next().transpose()? {
Some(aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
Some(aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
match key.to_unescaped()?.as_ref() {
"perRetryTimeout" => {
builder = builder.set_per_retry_timeout(
crate::json_deser::deser_structure_crate_model_duration(
tokens,
)?,
);
}
"maxRetries" => {
builder = builder.set_max_retries(
aws_smithy_json::deserialize::token::expect_number_or_null(
tokens.next(),
)?
.map(i64::try_from)
.transpose()?,
);
}
"httpRetryEvents" => {
builder = builder.set_http_retry_events(
crate::json_deser::deser_list_com_amazonaws_appmesh_http_retry_policy_events(tokens)?
);
}
"tcpRetryEvents" => {
builder = builder.set_tcp_retry_events(
crate::json_deser::deser_list_com_amazonaws_appmesh_tcp_retry_policy_events(tokens)?
);
}
"grpcRetryEvents" => {
builder = builder.set_grpc_retry_events(
crate::json_deser::deser_list_com_amazonaws_appmesh_grpc_retry_policy_events(tokens)?
);
}
_ => aws_smithy_json::deserialize::token::skip_value(tokens)?,
}
}
other => {
return Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
"expected object key or end object, found: {:?}",
other
)),
)
}
}
}
Ok(Some(builder.build()))
}
_ => Err(
aws_smithy_json::deserialize::error::DeserializeError::custom(
"expected start object or null",
),
),
}
}