Struct aws_sdk_iot::operation::GetPolicyVersion
source · pub struct GetPolicyVersion { /* private fields */ }
Expand description
Operation shape for GetPolicyVersion
.
This is usually constructed for you using the the fluent builder returned by
get_policy_version
.
See crate::client::fluent_builders::GetPolicyVersion
for more details about the operation.
Implementations§
source§impl GetPolicyVersion
impl GetPolicyVersion
sourcepub fn builder() -> Builder
pub fn builder() -> Builder
Creates a new builder-style object to manufacture GetPolicyVersionInput
.
sourcepub fn new() -> Self
pub fn new() -> Self
Creates a new GetPolicyVersion
operation.
Examples found in repository?
src/input.rs (line 22783)
22663 22664 22665 22666 22667 22668 22669 22670 22671 22672 22673 22674 22675 22676 22677 22678 22679 22680 22681 22682 22683 22684 22685 22686 22687 22688 22689 22690 22691 22692 22693 22694 22695 22696 22697 22698 22699 22700 22701 22702 22703 22704 22705 22706 22707 22708 22709 22710 22711 22712 22713 22714 22715 22716 22717 22718 22719 22720 22721 22722 22723 22724 22725 22726 22727 22728 22729 22730 22731 22732 22733 22734 22735 22736 22737 22738 22739 22740 22741 22742 22743 22744 22745 22746 22747 22748 22749 22750 22751 22752 22753 22754 22755 22756 22757 22758 22759 22760 22761 22762 22763 22764 22765 22766 22767 22768 22769 22770 22771 22772 22773 22774 22775 22776 22777 22778 22779 22780 22781 22782 22783 22784 22785 22786 22787 22788 22789 22790 22791
pub async fn make_operation(
&self,
_config: &crate::config::Config,
) -> std::result::Result<
aws_smithy_http::operation::Operation<
crate::operation::GetPolicyVersion,
aws_http::retry::AwsResponseRetryClassifier,
>,
aws_smithy_http::operation::error::BuildError,
> {
let mut request = {
fn uri_base(
_input: &crate::input::GetPolicyVersionInput,
output: &mut String,
) -> Result<(), aws_smithy_http::operation::error::BuildError> {
let input_129 = &_input.policy_name;
let input_129 = input_129.as_ref().ok_or_else(|| {
aws_smithy_http::operation::error::BuildError::missing_field(
"policy_name",
"cannot be empty or unset",
)
})?;
let policy_name = aws_smithy_http::label::fmt_string(
input_129,
aws_smithy_http::label::EncodingStrategy::Default,
);
if policy_name.is_empty() {
return Err(
aws_smithy_http::operation::error::BuildError::missing_field(
"policy_name",
"cannot be empty or unset",
),
);
}
let input_130 = &_input.policy_version_id;
let input_130 = input_130.as_ref().ok_or_else(|| {
aws_smithy_http::operation::error::BuildError::missing_field(
"policy_version_id",
"cannot be empty or unset",
)
})?;
let policy_version_id = aws_smithy_http::label::fmt_string(
input_130,
aws_smithy_http::label::EncodingStrategy::Default,
);
if policy_version_id.is_empty() {
return Err(
aws_smithy_http::operation::error::BuildError::missing_field(
"policy_version_id",
"cannot be empty or unset",
),
);
}
write!(
output,
"/policies/{policyName}/version/{policyVersionId}",
policyName = policy_name,
policyVersionId = policy_version_id
)
.expect("formatting should succeed");
Ok(())
}
#[allow(clippy::unnecessary_wraps)]
fn update_http_builder(
input: &crate::input::GetPolicyVersionInput,
builder: http::request::Builder,
) -> std::result::Result<
http::request::Builder,
aws_smithy_http::operation::error::BuildError,
> {
let mut uri = String::new();
uri_base(input, &mut uri)?;
Ok(builder.method("GET").uri(uri))
}
let mut builder = update_http_builder(&self, http::request::Builder::new())?;
builder
};
let mut properties = aws_smithy_http::property_bag::SharedPropertyBag::new();
#[allow(clippy::useless_conversion)]
let body = aws_smithy_http::body::SdkBody::from("");
let request = request.body(body).expect("should be valid request");
let mut request = aws_smithy_http::operation::Request::from_parts(request, properties);
request
.properties_mut()
.insert(aws_smithy_http::http_versions::DEFAULT_HTTP_VERSION_LIST.clone());
let mut user_agent = aws_http::user_agent::AwsUserAgent::new_from_environment(
aws_types::os_shim_internal::Env::real(),
crate::API_METADATA.clone(),
);
if let Some(app_name) = _config.app_name() {
user_agent = user_agent.with_app_name(app_name.clone());
}
request.properties_mut().insert(user_agent);
let mut signing_config = aws_sig_auth::signer::OperationSigningConfig::default_config();
request.properties_mut().insert(signing_config);
request
.properties_mut()
.insert(aws_types::SigningService::from_static(
_config.signing_service(),
));
if let Some(region) = &_config.region {
request
.properties_mut()
.insert(aws_types::region::SigningRegion::from(region.clone()));
}
let endpoint_params = aws_endpoint::Params::new(_config.region.clone());
request
.properties_mut()
.insert::<aws_smithy_http::endpoint::Result>(
_config.endpoint_resolver.resolve_endpoint(&endpoint_params),
);
if let Some(region) = &_config.region {
request.properties_mut().insert(region.clone());
}
aws_http::auth::set_provider(
&mut request.properties_mut(),
_config.credentials_provider.clone(),
);
let op = aws_smithy_http::operation::Operation::new(
request,
crate::operation::GetPolicyVersion::new(),
)
.with_metadata(aws_smithy_http::operation::Metadata::new(
"GetPolicyVersion",
"iot",
));
let op = op.with_retry_classifier(aws_http::retry::AwsResponseRetryClassifier::new());
Ok(op)
}
Trait Implementations§
source§impl Clone for GetPolicyVersion
impl Clone for GetPolicyVersion
source§fn clone(&self) -> GetPolicyVersion
fn clone(&self) -> GetPolicyVersion
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for GetPolicyVersion
impl Debug for GetPolicyVersion
source§impl Default for GetPolicyVersion
impl Default for GetPolicyVersion
source§fn default() -> GetPolicyVersion
fn default() -> GetPolicyVersion
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl RefUnwindSafe for GetPolicyVersion
impl Send for GetPolicyVersion
impl Sync for GetPolicyVersion
impl Unpin for GetPolicyVersion
impl UnwindSafe for GetPolicyVersion
Blanket Implementations§
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> ParseHttpResponse for Twhere
T: ParseStrictResponse,
impl<T> ParseHttpResponse for Twhere
T: ParseStrictResponse,
§type Output = <T as ParseStrictResponse>::Output
type Output = <T as ParseStrictResponse>::Output
Output type of the HttpResponse. Read more
source§fn parse_unloaded(
&self,
_response: &mut Response
) -> Option<<T as ParseHttpResponse>::Output>
fn parse_unloaded(
&self,
_response: &mut Response
) -> Option<<T as ParseHttpResponse>::Output>
Parse an HTTP request without reading the body. If the body must be provided to proceed,
return
None
Read moresource§fn parse_loaded(
&self,
response: &Response<Bytes>
) -> <T as ParseHttpResponse>::Output
fn parse_loaded(
&self,
response: &Response<Bytes>
) -> <T as ParseHttpResponse>::Output
Parse an HTTP request from a fully loaded body. This is for standard request/response style
APIs like AwsJson 1.0/1.1 and the error path of most streaming APIs Read more