aws_sdk_macie2/operation/update_classification_job/builders.rs
1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2pub use crate::operation::update_classification_job::_update_classification_job_output::UpdateClassificationJobOutputBuilder;
3
4pub use crate::operation::update_classification_job::_update_classification_job_input::UpdateClassificationJobInputBuilder;
5
6impl crate::operation::update_classification_job::builders::UpdateClassificationJobInputBuilder {
7 /// Sends a request with this input using the given client.
8 pub async fn send_with(
9 self,
10 client: &crate::Client,
11 ) -> ::std::result::Result<
12 crate::operation::update_classification_job::UpdateClassificationJobOutput,
13 ::aws_smithy_runtime_api::client::result::SdkError<
14 crate::operation::update_classification_job::UpdateClassificationJobError,
15 ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
16 >,
17 > {
18 let mut fluent_builder = client.update_classification_job();
19 fluent_builder.inner = self;
20 fluent_builder.send().await
21 }
22}
23/// Fluent builder constructing a request to `UpdateClassificationJob`.
24///
25/// <p>Changes the status of a classification job.</p>
26#[derive(::std::clone::Clone, ::std::fmt::Debug)]
27pub struct UpdateClassificationJobFluentBuilder {
28 handle: ::std::sync::Arc<crate::client::Handle>,
29 inner: crate::operation::update_classification_job::builders::UpdateClassificationJobInputBuilder,
30 config_override: ::std::option::Option<crate::config::Builder>,
31}
32impl
33 crate::client::customize::internal::CustomizableSend<
34 crate::operation::update_classification_job::UpdateClassificationJobOutput,
35 crate::operation::update_classification_job::UpdateClassificationJobError,
36 > for UpdateClassificationJobFluentBuilder
37{
38 fn send(
39 self,
40 config_override: crate::config::Builder,
41 ) -> crate::client::customize::internal::BoxFuture<
42 crate::client::customize::internal::SendResult<
43 crate::operation::update_classification_job::UpdateClassificationJobOutput,
44 crate::operation::update_classification_job::UpdateClassificationJobError,
45 >,
46 > {
47 ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
48 }
49}
50impl UpdateClassificationJobFluentBuilder {
51 /// Creates a new `UpdateClassificationJobFluentBuilder`.
52 pub(crate) fn new(handle: ::std::sync::Arc<crate::client::Handle>) -> Self {
53 Self {
54 handle,
55 inner: ::std::default::Default::default(),
56 config_override: ::std::option::Option::None,
57 }
58 }
59 /// Access the UpdateClassificationJob as a reference.
60 pub fn as_input(&self) -> &crate::operation::update_classification_job::builders::UpdateClassificationJobInputBuilder {
61 &self.inner
62 }
63 /// Sends the request and returns the response.
64 ///
65 /// If an error occurs, an `SdkError` will be returned with additional details that
66 /// can be matched against.
67 ///
68 /// By default, any retryable failures will be retried twice. Retry behavior
69 /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
70 /// set when configuring the client.
71 pub async fn send(
72 self,
73 ) -> ::std::result::Result<
74 crate::operation::update_classification_job::UpdateClassificationJobOutput,
75 ::aws_smithy_runtime_api::client::result::SdkError<
76 crate::operation::update_classification_job::UpdateClassificationJobError,
77 ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
78 >,
79 > {
80 let input = self
81 .inner
82 .build()
83 .map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)?;
84 let runtime_plugins = crate::operation::update_classification_job::UpdateClassificationJob::operation_runtime_plugins(
85 self.handle.runtime_plugins.clone(),
86 &self.handle.conf,
87 self.config_override,
88 );
89 crate::operation::update_classification_job::UpdateClassificationJob::orchestrate(&runtime_plugins, input).await
90 }
91
92 /// Consumes this builder, creating a customizable operation that can be modified before being sent.
93 pub fn customize(
94 self,
95 ) -> crate::client::customize::CustomizableOperation<
96 crate::operation::update_classification_job::UpdateClassificationJobOutput,
97 crate::operation::update_classification_job::UpdateClassificationJobError,
98 Self,
99 > {
100 crate::client::customize::CustomizableOperation::new(self)
101 }
102 pub(crate) fn config_override(mut self, config_override: impl ::std::convert::Into<crate::config::Builder>) -> Self {
103 self.set_config_override(::std::option::Option::Some(config_override.into()));
104 self
105 }
106
107 pub(crate) fn set_config_override(&mut self, config_override: ::std::option::Option<crate::config::Builder>) -> &mut Self {
108 self.config_override = config_override;
109 self
110 }
111 /// <p>The unique identifier for the classification job.</p>
112 pub fn job_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
113 self.inner = self.inner.job_id(input.into());
114 self
115 }
116 /// <p>The unique identifier for the classification job.</p>
117 pub fn set_job_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
118 self.inner = self.inner.set_job_id(input);
119 self
120 }
121 /// <p>The unique identifier for the classification job.</p>
122 pub fn get_job_id(&self) -> &::std::option::Option<::std::string::String> {
123 self.inner.get_job_id()
124 }
125 /// <p>The new status for the job. Valid values are:</p>
126 /// <ul>
127 /// <li>
128 /// <p>CANCELLED - Stops the job permanently and cancels it. This value is valid only if the job's current status is IDLE, PAUSED, RUNNING, or USER_PAUSED.</p>
129 /// <p>If you specify this value and the job's current status is RUNNING, Amazon Macie immediately begins to stop all processing tasks for the job. You can't resume or restart a job after you cancel it.</p></li>
130 /// <li>
131 /// <p>RUNNING - Resumes the job. This value is valid only if the job's current status is USER_PAUSED.</p>
132 /// <p>If you paused the job while it was actively running and you specify this value less than 30 days after you paused the job, Macie immediately resumes processing from the point where you paused the job. Otherwise, Macie resumes the job according to the schedule and other settings for the job.</p></li>
133 /// <li>
134 /// <p>USER_PAUSED - Pauses the job temporarily. This value is valid only if the job's current status is IDLE, PAUSED, or RUNNING. If you specify this value and the job's current status is RUNNING, Macie immediately begins to pause all processing tasks for the job.</p>
135 /// <p>If you pause a one-time job and you don't resume it within 30 days, the job expires and Macie cancels the job. If you pause a recurring job when its status is RUNNING and you don't resume it within 30 days, the job run expires and Macie cancels the run. To check the expiration date, refer to the UserPausedDetails.jobExpiresAt property.</p></li>
136 /// </ul>
137 pub fn job_status(mut self, input: crate::types::JobStatus) -> Self {
138 self.inner = self.inner.job_status(input);
139 self
140 }
141 /// <p>The new status for the job. Valid values are:</p>
142 /// <ul>
143 /// <li>
144 /// <p>CANCELLED - Stops the job permanently and cancels it. This value is valid only if the job's current status is IDLE, PAUSED, RUNNING, or USER_PAUSED.</p>
145 /// <p>If you specify this value and the job's current status is RUNNING, Amazon Macie immediately begins to stop all processing tasks for the job. You can't resume or restart a job after you cancel it.</p></li>
146 /// <li>
147 /// <p>RUNNING - Resumes the job. This value is valid only if the job's current status is USER_PAUSED.</p>
148 /// <p>If you paused the job while it was actively running and you specify this value less than 30 days after you paused the job, Macie immediately resumes processing from the point where you paused the job. Otherwise, Macie resumes the job according to the schedule and other settings for the job.</p></li>
149 /// <li>
150 /// <p>USER_PAUSED - Pauses the job temporarily. This value is valid only if the job's current status is IDLE, PAUSED, or RUNNING. If you specify this value and the job's current status is RUNNING, Macie immediately begins to pause all processing tasks for the job.</p>
151 /// <p>If you pause a one-time job and you don't resume it within 30 days, the job expires and Macie cancels the job. If you pause a recurring job when its status is RUNNING and you don't resume it within 30 days, the job run expires and Macie cancels the run. To check the expiration date, refer to the UserPausedDetails.jobExpiresAt property.</p></li>
152 /// </ul>
153 pub fn set_job_status(mut self, input: ::std::option::Option<crate::types::JobStatus>) -> Self {
154 self.inner = self.inner.set_job_status(input);
155 self
156 }
157 /// <p>The new status for the job. Valid values are:</p>
158 /// <ul>
159 /// <li>
160 /// <p>CANCELLED - Stops the job permanently and cancels it. This value is valid only if the job's current status is IDLE, PAUSED, RUNNING, or USER_PAUSED.</p>
161 /// <p>If you specify this value and the job's current status is RUNNING, Amazon Macie immediately begins to stop all processing tasks for the job. You can't resume or restart a job after you cancel it.</p></li>
162 /// <li>
163 /// <p>RUNNING - Resumes the job. This value is valid only if the job's current status is USER_PAUSED.</p>
164 /// <p>If you paused the job while it was actively running and you specify this value less than 30 days after you paused the job, Macie immediately resumes processing from the point where you paused the job. Otherwise, Macie resumes the job according to the schedule and other settings for the job.</p></li>
165 /// <li>
166 /// <p>USER_PAUSED - Pauses the job temporarily. This value is valid only if the job's current status is IDLE, PAUSED, or RUNNING. If you specify this value and the job's current status is RUNNING, Macie immediately begins to pause all processing tasks for the job.</p>
167 /// <p>If you pause a one-time job and you don't resume it within 30 days, the job expires and Macie cancels the job. If you pause a recurring job when its status is RUNNING and you don't resume it within 30 days, the job run expires and Macie cancels the run. To check the expiration date, refer to the UserPausedDetails.jobExpiresAt property.</p></li>
168 /// </ul>
169 pub fn get_job_status(&self) -> &::std::option::Option<crate::types::JobStatus> {
170 self.inner.get_job_status()
171 }
172}