aws_sdk_scheduler/operation/get_schedule/_get_schedule_output.rs
1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2#[allow(missing_docs)] // documentation missing in model
3#[non_exhaustive]
4#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
5pub struct GetScheduleOutput {
6 /// <p>The Amazon Resource Name (ARN) of the schedule.</p>
7 pub arn: ::std::option::Option<::std::string::String>,
8 /// <p>The name of the schedule group associated with this schedule.</p>
9 pub group_name: ::std::option::Option<::std::string::String>,
10 /// <p>The name of the schedule.</p>
11 pub name: ::std::option::Option<::std::string::String>,
12 /// <p>The expression that defines when the schedule runs. The following formats are supported.</p>
13 /// <ul>
14 /// <li>
15 /// <p><code>at</code> expression - <code>at(yyyy-mm-ddThh:mm:ss)</code></p></li>
16 /// <li>
17 /// <p><code>rate</code> expression - <code>rate(value unit)</code></p></li>
18 /// <li>
19 /// <p><code>cron</code> expression - <code>cron(fields)</code></p></li>
20 /// </ul>
21 /// <p>You can use <code>at</code> expressions to create one-time schedules that invoke a target once, at the time and in the time zone, that you specify. You can use <code>rate</code> and <code>cron</code> expressions to create recurring schedules. Rate-based schedules are useful when you want to invoke a target at regular intervals, such as every 15 minutes or every five days. Cron-based schedules are useful when you want to invoke a target periodically at a specific time, such as at 8:00 am (UTC+0) every 1st day of the month.</p>
22 /// <p>A <code>cron</code> expression consists of six fields separated by white spaces: <code>(minutes hours day_of_month month day_of_week year)</code>.</p>
23 /// <p>A <code>rate</code> expression consists of a <i>value</i> as a positive integer, and a <i>unit</i> with the following options: <code>minute</code> | <code>minutes</code> | <code>hour</code> | <code>hours</code> | <code>day</code> | <code>days</code></p>
24 /// <p>For more information and examples, see <a href="https://docs.aws.amazon.com/scheduler/latest/UserGuide/schedule-types.html">Schedule types on EventBridge Scheduler</a> in the <i>EventBridge Scheduler User Guide</i>.</p>
25 pub schedule_expression: ::std::option::Option<::std::string::String>,
26 /// <p>The date, in UTC, after which the schedule can begin invoking its target. Depending on the schedule's recurrence expression, invocations might occur on, or after, the <code>StartDate</code> you specify. EventBridge Scheduler ignores <code>StartDate</code> for one-time schedules.</p>
27 pub start_date: ::std::option::Option<::aws_smithy_types::DateTime>,
28 /// <p>The date, in UTC, before which the schedule can invoke its target. Depending on the schedule's recurrence expression, invocations might stop on, or before, the <code>EndDate</code> you specify. EventBridge Scheduler ignores <code>EndDate</code> for one-time schedules.</p>
29 pub end_date: ::std::option::Option<::aws_smithy_types::DateTime>,
30 /// <p>The description of the schedule.</p>
31 pub description: ::std::option::Option<::std::string::String>,
32 /// <p>The timezone in which the scheduling expression is evaluated.</p>
33 pub schedule_expression_timezone: ::std::option::Option<::std::string::String>,
34 /// <p>Specifies whether the schedule is enabled or disabled.</p>
35 pub state: ::std::option::Option<crate::types::ScheduleState>,
36 /// <p>The time at which the schedule was created.</p>
37 pub creation_date: ::std::option::Option<::aws_smithy_types::DateTime>,
38 /// <p>The time at which the schedule was last modified.</p>
39 pub last_modification_date: ::std::option::Option<::aws_smithy_types::DateTime>,
40 /// <p>The ARN for a customer managed KMS Key that is be used to encrypt and decrypt your data.</p>
41 pub kms_key_arn: ::std::option::Option<::std::string::String>,
42 /// <p>The schedule target.</p>
43 pub target: ::std::option::Option<crate::types::Target>,
44 /// <p>Allows you to configure a time window during which EventBridge Scheduler invokes the schedule.</p>
45 pub flexible_time_window: ::std::option::Option<crate::types::FlexibleTimeWindow>,
46 /// <p>Indicates the action that EventBridge Scheduler applies to the schedule after the schedule completes invoking the target.</p>
47 pub action_after_completion: ::std::option::Option<crate::types::ActionAfterCompletion>,
48 _request_id: Option<String>,
49}
50impl GetScheduleOutput {
51 /// <p>The Amazon Resource Name (ARN) of the schedule.</p>
52 pub fn arn(&self) -> ::std::option::Option<&str> {
53 self.arn.as_deref()
54 }
55 /// <p>The name of the schedule group associated with this schedule.</p>
56 pub fn group_name(&self) -> ::std::option::Option<&str> {
57 self.group_name.as_deref()
58 }
59 /// <p>The name of the schedule.</p>
60 pub fn name(&self) -> ::std::option::Option<&str> {
61 self.name.as_deref()
62 }
63 /// <p>The expression that defines when the schedule runs. The following formats are supported.</p>
64 /// <ul>
65 /// <li>
66 /// <p><code>at</code> expression - <code>at(yyyy-mm-ddThh:mm:ss)</code></p></li>
67 /// <li>
68 /// <p><code>rate</code> expression - <code>rate(value unit)</code></p></li>
69 /// <li>
70 /// <p><code>cron</code> expression - <code>cron(fields)</code></p></li>
71 /// </ul>
72 /// <p>You can use <code>at</code> expressions to create one-time schedules that invoke a target once, at the time and in the time zone, that you specify. You can use <code>rate</code> and <code>cron</code> expressions to create recurring schedules. Rate-based schedules are useful when you want to invoke a target at regular intervals, such as every 15 minutes or every five days. Cron-based schedules are useful when you want to invoke a target periodically at a specific time, such as at 8:00 am (UTC+0) every 1st day of the month.</p>
73 /// <p>A <code>cron</code> expression consists of six fields separated by white spaces: <code>(minutes hours day_of_month month day_of_week year)</code>.</p>
74 /// <p>A <code>rate</code> expression consists of a <i>value</i> as a positive integer, and a <i>unit</i> with the following options: <code>minute</code> | <code>minutes</code> | <code>hour</code> | <code>hours</code> | <code>day</code> | <code>days</code></p>
75 /// <p>For more information and examples, see <a href="https://docs.aws.amazon.com/scheduler/latest/UserGuide/schedule-types.html">Schedule types on EventBridge Scheduler</a> in the <i>EventBridge Scheduler User Guide</i>.</p>
76 pub fn schedule_expression(&self) -> ::std::option::Option<&str> {
77 self.schedule_expression.as_deref()
78 }
79 /// <p>The date, in UTC, after which the schedule can begin invoking its target. Depending on the schedule's recurrence expression, invocations might occur on, or after, the <code>StartDate</code> you specify. EventBridge Scheduler ignores <code>StartDate</code> for one-time schedules.</p>
80 pub fn start_date(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
81 self.start_date.as_ref()
82 }
83 /// <p>The date, in UTC, before which the schedule can invoke its target. Depending on the schedule's recurrence expression, invocations might stop on, or before, the <code>EndDate</code> you specify. EventBridge Scheduler ignores <code>EndDate</code> for one-time schedules.</p>
84 pub fn end_date(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
85 self.end_date.as_ref()
86 }
87 /// <p>The description of the schedule.</p>
88 pub fn description(&self) -> ::std::option::Option<&str> {
89 self.description.as_deref()
90 }
91 /// <p>The timezone in which the scheduling expression is evaluated.</p>
92 pub fn schedule_expression_timezone(&self) -> ::std::option::Option<&str> {
93 self.schedule_expression_timezone.as_deref()
94 }
95 /// <p>Specifies whether the schedule is enabled or disabled.</p>
96 pub fn state(&self) -> ::std::option::Option<&crate::types::ScheduleState> {
97 self.state.as_ref()
98 }
99 /// <p>The time at which the schedule was created.</p>
100 pub fn creation_date(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
101 self.creation_date.as_ref()
102 }
103 /// <p>The time at which the schedule was last modified.</p>
104 pub fn last_modification_date(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
105 self.last_modification_date.as_ref()
106 }
107 /// <p>The ARN for a customer managed KMS Key that is be used to encrypt and decrypt your data.</p>
108 pub fn kms_key_arn(&self) -> ::std::option::Option<&str> {
109 self.kms_key_arn.as_deref()
110 }
111 /// <p>The schedule target.</p>
112 pub fn target(&self) -> ::std::option::Option<&crate::types::Target> {
113 self.target.as_ref()
114 }
115 /// <p>Allows you to configure a time window during which EventBridge Scheduler invokes the schedule.</p>
116 pub fn flexible_time_window(&self) -> ::std::option::Option<&crate::types::FlexibleTimeWindow> {
117 self.flexible_time_window.as_ref()
118 }
119 /// <p>Indicates the action that EventBridge Scheduler applies to the schedule after the schedule completes invoking the target.</p>
120 pub fn action_after_completion(&self) -> ::std::option::Option<&crate::types::ActionAfterCompletion> {
121 self.action_after_completion.as_ref()
122 }
123}
124impl ::aws_types::request_id::RequestId for GetScheduleOutput {
125 fn request_id(&self) -> Option<&str> {
126 self._request_id.as_deref()
127 }
128}
129impl GetScheduleOutput {
130 /// Creates a new builder-style object to manufacture [`GetScheduleOutput`](crate::operation::get_schedule::GetScheduleOutput).
131 pub fn builder() -> crate::operation::get_schedule::builders::GetScheduleOutputBuilder {
132 crate::operation::get_schedule::builders::GetScheduleOutputBuilder::default()
133 }
134}
135
136/// A builder for [`GetScheduleOutput`](crate::operation::get_schedule::GetScheduleOutput).
137#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
138#[non_exhaustive]
139pub struct GetScheduleOutputBuilder {
140 pub(crate) arn: ::std::option::Option<::std::string::String>,
141 pub(crate) group_name: ::std::option::Option<::std::string::String>,
142 pub(crate) name: ::std::option::Option<::std::string::String>,
143 pub(crate) schedule_expression: ::std::option::Option<::std::string::String>,
144 pub(crate) start_date: ::std::option::Option<::aws_smithy_types::DateTime>,
145 pub(crate) end_date: ::std::option::Option<::aws_smithy_types::DateTime>,
146 pub(crate) description: ::std::option::Option<::std::string::String>,
147 pub(crate) schedule_expression_timezone: ::std::option::Option<::std::string::String>,
148 pub(crate) state: ::std::option::Option<crate::types::ScheduleState>,
149 pub(crate) creation_date: ::std::option::Option<::aws_smithy_types::DateTime>,
150 pub(crate) last_modification_date: ::std::option::Option<::aws_smithy_types::DateTime>,
151 pub(crate) kms_key_arn: ::std::option::Option<::std::string::String>,
152 pub(crate) target: ::std::option::Option<crate::types::Target>,
153 pub(crate) flexible_time_window: ::std::option::Option<crate::types::FlexibleTimeWindow>,
154 pub(crate) action_after_completion: ::std::option::Option<crate::types::ActionAfterCompletion>,
155 _request_id: Option<String>,
156}
157impl GetScheduleOutputBuilder {
158 /// <p>The Amazon Resource Name (ARN) of the schedule.</p>
159 pub fn arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
160 self.arn = ::std::option::Option::Some(input.into());
161 self
162 }
163 /// <p>The Amazon Resource Name (ARN) of the schedule.</p>
164 pub fn set_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
165 self.arn = input;
166 self
167 }
168 /// <p>The Amazon Resource Name (ARN) of the schedule.</p>
169 pub fn get_arn(&self) -> &::std::option::Option<::std::string::String> {
170 &self.arn
171 }
172 /// <p>The name of the schedule group associated with this schedule.</p>
173 pub fn group_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
174 self.group_name = ::std::option::Option::Some(input.into());
175 self
176 }
177 /// <p>The name of the schedule group associated with this schedule.</p>
178 pub fn set_group_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
179 self.group_name = input;
180 self
181 }
182 /// <p>The name of the schedule group associated with this schedule.</p>
183 pub fn get_group_name(&self) -> &::std::option::Option<::std::string::String> {
184 &self.group_name
185 }
186 /// <p>The name of the schedule.</p>
187 pub fn name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
188 self.name = ::std::option::Option::Some(input.into());
189 self
190 }
191 /// <p>The name of the schedule.</p>
192 pub fn set_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
193 self.name = input;
194 self
195 }
196 /// <p>The name of the schedule.</p>
197 pub fn get_name(&self) -> &::std::option::Option<::std::string::String> {
198 &self.name
199 }
200 /// <p>The expression that defines when the schedule runs. The following formats are supported.</p>
201 /// <ul>
202 /// <li>
203 /// <p><code>at</code> expression - <code>at(yyyy-mm-ddThh:mm:ss)</code></p></li>
204 /// <li>
205 /// <p><code>rate</code> expression - <code>rate(value unit)</code></p></li>
206 /// <li>
207 /// <p><code>cron</code> expression - <code>cron(fields)</code></p></li>
208 /// </ul>
209 /// <p>You can use <code>at</code> expressions to create one-time schedules that invoke a target once, at the time and in the time zone, that you specify. You can use <code>rate</code> and <code>cron</code> expressions to create recurring schedules. Rate-based schedules are useful when you want to invoke a target at regular intervals, such as every 15 minutes or every five days. Cron-based schedules are useful when you want to invoke a target periodically at a specific time, such as at 8:00 am (UTC+0) every 1st day of the month.</p>
210 /// <p>A <code>cron</code> expression consists of six fields separated by white spaces: <code>(minutes hours day_of_month month day_of_week year)</code>.</p>
211 /// <p>A <code>rate</code> expression consists of a <i>value</i> as a positive integer, and a <i>unit</i> with the following options: <code>minute</code> | <code>minutes</code> | <code>hour</code> | <code>hours</code> | <code>day</code> | <code>days</code></p>
212 /// <p>For more information and examples, see <a href="https://docs.aws.amazon.com/scheduler/latest/UserGuide/schedule-types.html">Schedule types on EventBridge Scheduler</a> in the <i>EventBridge Scheduler User Guide</i>.</p>
213 pub fn schedule_expression(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
214 self.schedule_expression = ::std::option::Option::Some(input.into());
215 self
216 }
217 /// <p>The expression that defines when the schedule runs. The following formats are supported.</p>
218 /// <ul>
219 /// <li>
220 /// <p><code>at</code> expression - <code>at(yyyy-mm-ddThh:mm:ss)</code></p></li>
221 /// <li>
222 /// <p><code>rate</code> expression - <code>rate(value unit)</code></p></li>
223 /// <li>
224 /// <p><code>cron</code> expression - <code>cron(fields)</code></p></li>
225 /// </ul>
226 /// <p>You can use <code>at</code> expressions to create one-time schedules that invoke a target once, at the time and in the time zone, that you specify. You can use <code>rate</code> and <code>cron</code> expressions to create recurring schedules. Rate-based schedules are useful when you want to invoke a target at regular intervals, such as every 15 minutes or every five days. Cron-based schedules are useful when you want to invoke a target periodically at a specific time, such as at 8:00 am (UTC+0) every 1st day of the month.</p>
227 /// <p>A <code>cron</code> expression consists of six fields separated by white spaces: <code>(minutes hours day_of_month month day_of_week year)</code>.</p>
228 /// <p>A <code>rate</code> expression consists of a <i>value</i> as a positive integer, and a <i>unit</i> with the following options: <code>minute</code> | <code>minutes</code> | <code>hour</code> | <code>hours</code> | <code>day</code> | <code>days</code></p>
229 /// <p>For more information and examples, see <a href="https://docs.aws.amazon.com/scheduler/latest/UserGuide/schedule-types.html">Schedule types on EventBridge Scheduler</a> in the <i>EventBridge Scheduler User Guide</i>.</p>
230 pub fn set_schedule_expression(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
231 self.schedule_expression = input;
232 self
233 }
234 /// <p>The expression that defines when the schedule runs. The following formats are supported.</p>
235 /// <ul>
236 /// <li>
237 /// <p><code>at</code> expression - <code>at(yyyy-mm-ddThh:mm:ss)</code></p></li>
238 /// <li>
239 /// <p><code>rate</code> expression - <code>rate(value unit)</code></p></li>
240 /// <li>
241 /// <p><code>cron</code> expression - <code>cron(fields)</code></p></li>
242 /// </ul>
243 /// <p>You can use <code>at</code> expressions to create one-time schedules that invoke a target once, at the time and in the time zone, that you specify. You can use <code>rate</code> and <code>cron</code> expressions to create recurring schedules. Rate-based schedules are useful when you want to invoke a target at regular intervals, such as every 15 minutes or every five days. Cron-based schedules are useful when you want to invoke a target periodically at a specific time, such as at 8:00 am (UTC+0) every 1st day of the month.</p>
244 /// <p>A <code>cron</code> expression consists of six fields separated by white spaces: <code>(minutes hours day_of_month month day_of_week year)</code>.</p>
245 /// <p>A <code>rate</code> expression consists of a <i>value</i> as a positive integer, and a <i>unit</i> with the following options: <code>minute</code> | <code>minutes</code> | <code>hour</code> | <code>hours</code> | <code>day</code> | <code>days</code></p>
246 /// <p>For more information and examples, see <a href="https://docs.aws.amazon.com/scheduler/latest/UserGuide/schedule-types.html">Schedule types on EventBridge Scheduler</a> in the <i>EventBridge Scheduler User Guide</i>.</p>
247 pub fn get_schedule_expression(&self) -> &::std::option::Option<::std::string::String> {
248 &self.schedule_expression
249 }
250 /// <p>The date, in UTC, after which the schedule can begin invoking its target. Depending on the schedule's recurrence expression, invocations might occur on, or after, the <code>StartDate</code> you specify. EventBridge Scheduler ignores <code>StartDate</code> for one-time schedules.</p>
251 pub fn start_date(mut self, input: ::aws_smithy_types::DateTime) -> Self {
252 self.start_date = ::std::option::Option::Some(input);
253 self
254 }
255 /// <p>The date, in UTC, after which the schedule can begin invoking its target. Depending on the schedule's recurrence expression, invocations might occur on, or after, the <code>StartDate</code> you specify. EventBridge Scheduler ignores <code>StartDate</code> for one-time schedules.</p>
256 pub fn set_start_date(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
257 self.start_date = input;
258 self
259 }
260 /// <p>The date, in UTC, after which the schedule can begin invoking its target. Depending on the schedule's recurrence expression, invocations might occur on, or after, the <code>StartDate</code> you specify. EventBridge Scheduler ignores <code>StartDate</code> for one-time schedules.</p>
261 pub fn get_start_date(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
262 &self.start_date
263 }
264 /// <p>The date, in UTC, before which the schedule can invoke its target. Depending on the schedule's recurrence expression, invocations might stop on, or before, the <code>EndDate</code> you specify. EventBridge Scheduler ignores <code>EndDate</code> for one-time schedules.</p>
265 pub fn end_date(mut self, input: ::aws_smithy_types::DateTime) -> Self {
266 self.end_date = ::std::option::Option::Some(input);
267 self
268 }
269 /// <p>The date, in UTC, before which the schedule can invoke its target. Depending on the schedule's recurrence expression, invocations might stop on, or before, the <code>EndDate</code> you specify. EventBridge Scheduler ignores <code>EndDate</code> for one-time schedules.</p>
270 pub fn set_end_date(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
271 self.end_date = input;
272 self
273 }
274 /// <p>The date, in UTC, before which the schedule can invoke its target. Depending on the schedule's recurrence expression, invocations might stop on, or before, the <code>EndDate</code> you specify. EventBridge Scheduler ignores <code>EndDate</code> for one-time schedules.</p>
275 pub fn get_end_date(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
276 &self.end_date
277 }
278 /// <p>The description of the schedule.</p>
279 pub fn description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
280 self.description = ::std::option::Option::Some(input.into());
281 self
282 }
283 /// <p>The description of the schedule.</p>
284 pub fn set_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
285 self.description = input;
286 self
287 }
288 /// <p>The description of the schedule.</p>
289 pub fn get_description(&self) -> &::std::option::Option<::std::string::String> {
290 &self.description
291 }
292 /// <p>The timezone in which the scheduling expression is evaluated.</p>
293 pub fn schedule_expression_timezone(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
294 self.schedule_expression_timezone = ::std::option::Option::Some(input.into());
295 self
296 }
297 /// <p>The timezone in which the scheduling expression is evaluated.</p>
298 pub fn set_schedule_expression_timezone(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
299 self.schedule_expression_timezone = input;
300 self
301 }
302 /// <p>The timezone in which the scheduling expression is evaluated.</p>
303 pub fn get_schedule_expression_timezone(&self) -> &::std::option::Option<::std::string::String> {
304 &self.schedule_expression_timezone
305 }
306 /// <p>Specifies whether the schedule is enabled or disabled.</p>
307 pub fn state(mut self, input: crate::types::ScheduleState) -> Self {
308 self.state = ::std::option::Option::Some(input);
309 self
310 }
311 /// <p>Specifies whether the schedule is enabled or disabled.</p>
312 pub fn set_state(mut self, input: ::std::option::Option<crate::types::ScheduleState>) -> Self {
313 self.state = input;
314 self
315 }
316 /// <p>Specifies whether the schedule is enabled or disabled.</p>
317 pub fn get_state(&self) -> &::std::option::Option<crate::types::ScheduleState> {
318 &self.state
319 }
320 /// <p>The time at which the schedule was created.</p>
321 pub fn creation_date(mut self, input: ::aws_smithy_types::DateTime) -> Self {
322 self.creation_date = ::std::option::Option::Some(input);
323 self
324 }
325 /// <p>The time at which the schedule was created.</p>
326 pub fn set_creation_date(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
327 self.creation_date = input;
328 self
329 }
330 /// <p>The time at which the schedule was created.</p>
331 pub fn get_creation_date(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
332 &self.creation_date
333 }
334 /// <p>The time at which the schedule was last modified.</p>
335 pub fn last_modification_date(mut self, input: ::aws_smithy_types::DateTime) -> Self {
336 self.last_modification_date = ::std::option::Option::Some(input);
337 self
338 }
339 /// <p>The time at which the schedule was last modified.</p>
340 pub fn set_last_modification_date(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
341 self.last_modification_date = input;
342 self
343 }
344 /// <p>The time at which the schedule was last modified.</p>
345 pub fn get_last_modification_date(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
346 &self.last_modification_date
347 }
348 /// <p>The ARN for a customer managed KMS Key that is be used to encrypt and decrypt your data.</p>
349 pub fn kms_key_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
350 self.kms_key_arn = ::std::option::Option::Some(input.into());
351 self
352 }
353 /// <p>The ARN for a customer managed KMS Key that is be used to encrypt and decrypt your data.</p>
354 pub fn set_kms_key_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
355 self.kms_key_arn = input;
356 self
357 }
358 /// <p>The ARN for a customer managed KMS Key that is be used to encrypt and decrypt your data.</p>
359 pub fn get_kms_key_arn(&self) -> &::std::option::Option<::std::string::String> {
360 &self.kms_key_arn
361 }
362 /// <p>The schedule target.</p>
363 pub fn target(mut self, input: crate::types::Target) -> Self {
364 self.target = ::std::option::Option::Some(input);
365 self
366 }
367 /// <p>The schedule target.</p>
368 pub fn set_target(mut self, input: ::std::option::Option<crate::types::Target>) -> Self {
369 self.target = input;
370 self
371 }
372 /// <p>The schedule target.</p>
373 pub fn get_target(&self) -> &::std::option::Option<crate::types::Target> {
374 &self.target
375 }
376 /// <p>Allows you to configure a time window during which EventBridge Scheduler invokes the schedule.</p>
377 pub fn flexible_time_window(mut self, input: crate::types::FlexibleTimeWindow) -> Self {
378 self.flexible_time_window = ::std::option::Option::Some(input);
379 self
380 }
381 /// <p>Allows you to configure a time window during which EventBridge Scheduler invokes the schedule.</p>
382 pub fn set_flexible_time_window(mut self, input: ::std::option::Option<crate::types::FlexibleTimeWindow>) -> Self {
383 self.flexible_time_window = input;
384 self
385 }
386 /// <p>Allows you to configure a time window during which EventBridge Scheduler invokes the schedule.</p>
387 pub fn get_flexible_time_window(&self) -> &::std::option::Option<crate::types::FlexibleTimeWindow> {
388 &self.flexible_time_window
389 }
390 /// <p>Indicates the action that EventBridge Scheduler applies to the schedule after the schedule completes invoking the target.</p>
391 pub fn action_after_completion(mut self, input: crate::types::ActionAfterCompletion) -> Self {
392 self.action_after_completion = ::std::option::Option::Some(input);
393 self
394 }
395 /// <p>Indicates the action that EventBridge Scheduler applies to the schedule after the schedule completes invoking the target.</p>
396 pub fn set_action_after_completion(mut self, input: ::std::option::Option<crate::types::ActionAfterCompletion>) -> Self {
397 self.action_after_completion = input;
398 self
399 }
400 /// <p>Indicates the action that EventBridge Scheduler applies to the schedule after the schedule completes invoking the target.</p>
401 pub fn get_action_after_completion(&self) -> &::std::option::Option<crate::types::ActionAfterCompletion> {
402 &self.action_after_completion
403 }
404 pub(crate) fn _request_id(mut self, request_id: impl Into<String>) -> Self {
405 self._request_id = Some(request_id.into());
406 self
407 }
408
409 pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
410 self._request_id = request_id;
411 self
412 }
413 /// Consumes the builder and constructs a [`GetScheduleOutput`](crate::operation::get_schedule::GetScheduleOutput).
414 pub fn build(self) -> crate::operation::get_schedule::GetScheduleOutput {
415 crate::operation::get_schedule::GetScheduleOutput {
416 arn: self.arn,
417 group_name: self.group_name,
418 name: self.name,
419 schedule_expression: self.schedule_expression,
420 start_date: self.start_date,
421 end_date: self.end_date,
422 description: self.description,
423 schedule_expression_timezone: self.schedule_expression_timezone,
424 state: self.state,
425 creation_date: self.creation_date,
426 last_modification_date: self.last_modification_date,
427 kms_key_arn: self.kms_key_arn,
428 target: self.target,
429 flexible_time_window: self.flexible_time_window,
430 action_after_completion: self.action_after_completion,
431 _request_id: self._request_id,
432 }
433 }
434}