aws_sdk_omics/operation/create_workflow/
builders.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2pub use crate::operation::create_workflow::_create_workflow_output::CreateWorkflowOutputBuilder;
3
4pub use crate::operation::create_workflow::_create_workflow_input::CreateWorkflowInputBuilder;
5
6impl crate::operation::create_workflow::builders::CreateWorkflowInputBuilder {
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::create_workflow::CreateWorkflowOutput,
13        ::aws_smithy_runtime_api::client::result::SdkError<
14            crate::operation::create_workflow::CreateWorkflowError,
15            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
16        >,
17    > {
18        let mut fluent_builder = client.create_workflow();
19        fluent_builder.inner = self;
20        fluent_builder.send().await
21    }
22}
23/// Fluent builder constructing a request to `CreateWorkflow`.
24///
25/// <p>Creates a private workflow. Before you create a private workflow, you must create and configure these required resources:</p>
26/// <ul>
27/// <li>
28/// <p><i>Workflow definition files</i>: Define your workflow in one or more workflow definition files, written in WDL, Nextflow, or CWL. The workflow definition specifies the inputs and outputs for runs that use the workflow. It also includes specifications for the runs and run tasks for your workflow, including compute and memory requirements. The workflow definition file must be in .zip format.</p></li>
29/// <li>
30/// <p>(Optional) <i>Parameter template</i>: You can create a parameter template file that defines the run parameters, or Amazon Web Services HealthOmics can generate the parameter template for you.</p></li>
31/// <li>
32/// <p><i>ECR container images</i>: Create container images for the workflow in a private ECR repository, or synchronize images from a supported upstream registry with your Amazon ECR private repository.</p></li>
33/// <li>
34/// <p>(Optional) <i>Sentieon licenses</i>: Request a Sentieon license if using the Sentieon software in a private workflow.</p></li>
35/// </ul>
36/// <p>For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/creating-private-workflows.html">Creating or updating a private workflow in Amazon Web Services HealthOmics</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
37#[derive(::std::clone::Clone, ::std::fmt::Debug)]
38pub struct CreateWorkflowFluentBuilder {
39    handle: ::std::sync::Arc<crate::client::Handle>,
40    inner: crate::operation::create_workflow::builders::CreateWorkflowInputBuilder,
41    config_override: ::std::option::Option<crate::config::Builder>,
42}
43impl
44    crate::client::customize::internal::CustomizableSend<
45        crate::operation::create_workflow::CreateWorkflowOutput,
46        crate::operation::create_workflow::CreateWorkflowError,
47    > for CreateWorkflowFluentBuilder
48{
49    fn send(
50        self,
51        config_override: crate::config::Builder,
52    ) -> crate::client::customize::internal::BoxFuture<
53        crate::client::customize::internal::SendResult<
54            crate::operation::create_workflow::CreateWorkflowOutput,
55            crate::operation::create_workflow::CreateWorkflowError,
56        >,
57    > {
58        ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
59    }
60}
61impl CreateWorkflowFluentBuilder {
62    /// Creates a new `CreateWorkflowFluentBuilder`.
63    pub(crate) fn new(handle: ::std::sync::Arc<crate::client::Handle>) -> Self {
64        Self {
65            handle,
66            inner: ::std::default::Default::default(),
67            config_override: ::std::option::Option::None,
68        }
69    }
70    /// Access the CreateWorkflow as a reference.
71    pub fn as_input(&self) -> &crate::operation::create_workflow::builders::CreateWorkflowInputBuilder {
72        &self.inner
73    }
74    /// Sends the request and returns the response.
75    ///
76    /// If an error occurs, an `SdkError` will be returned with additional details that
77    /// can be matched against.
78    ///
79    /// By default, any retryable failures will be retried twice. Retry behavior
80    /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
81    /// set when configuring the client.
82    pub async fn send(
83        self,
84    ) -> ::std::result::Result<
85        crate::operation::create_workflow::CreateWorkflowOutput,
86        ::aws_smithy_runtime_api::client::result::SdkError<
87            crate::operation::create_workflow::CreateWorkflowError,
88            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
89        >,
90    > {
91        let input = self
92            .inner
93            .build()
94            .map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)?;
95        let runtime_plugins = crate::operation::create_workflow::CreateWorkflow::operation_runtime_plugins(
96            self.handle.runtime_plugins.clone(),
97            &self.handle.conf,
98            self.config_override,
99        );
100        crate::operation::create_workflow::CreateWorkflow::orchestrate(&runtime_plugins, input).await
101    }
102
103    /// Consumes this builder, creating a customizable operation that can be modified before being sent.
104    pub fn customize(
105        self,
106    ) -> crate::client::customize::CustomizableOperation<
107        crate::operation::create_workflow::CreateWorkflowOutput,
108        crate::operation::create_workflow::CreateWorkflowError,
109        Self,
110    > {
111        crate::client::customize::CustomizableOperation::new(self)
112    }
113    pub(crate) fn config_override(mut self, config_override: impl ::std::convert::Into<crate::config::Builder>) -> Self {
114        self.set_config_override(::std::option::Option::Some(config_override.into()));
115        self
116    }
117
118    pub(crate) fn set_config_override(&mut self, config_override: ::std::option::Option<crate::config::Builder>) -> &mut Self {
119        self.config_override = config_override;
120        self
121    }
122    /// <p>Name (optional but highly recommended) for the workflow to locate relevant information in the CloudWatch logs and Amazon Web Services HealthOmics console.</p>
123    pub fn name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
124        self.inner = self.inner.name(input.into());
125        self
126    }
127    /// <p>Name (optional but highly recommended) for the workflow to locate relevant information in the CloudWatch logs and Amazon Web Services HealthOmics console.</p>
128    pub fn set_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
129        self.inner = self.inner.set_name(input);
130        self
131    }
132    /// <p>Name (optional but highly recommended) for the workflow to locate relevant information in the CloudWatch logs and Amazon Web Services HealthOmics console.</p>
133    pub fn get_name(&self) -> &::std::option::Option<::std::string::String> {
134        self.inner.get_name()
135    }
136    /// <p>A description for the workflow.</p>
137    pub fn description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
138        self.inner = self.inner.description(input.into());
139        self
140    }
141    /// <p>A description for the workflow.</p>
142    pub fn set_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
143        self.inner = self.inner.set_description(input);
144        self
145    }
146    /// <p>A description for the workflow.</p>
147    pub fn get_description(&self) -> &::std::option::Option<::std::string::String> {
148        self.inner.get_description()
149    }
150    /// <p>The workflow engine for the workflow. This is only required if you have workflow definition files from more than one engine in your zip file. Otherwise, the service can detect the engine automatically from your workflow definition.</p>
151    pub fn engine(mut self, input: crate::types::WorkflowEngine) -> Self {
152        self.inner = self.inner.engine(input);
153        self
154    }
155    /// <p>The workflow engine for the workflow. This is only required if you have workflow definition files from more than one engine in your zip file. Otherwise, the service can detect the engine automatically from your workflow definition.</p>
156    pub fn set_engine(mut self, input: ::std::option::Option<crate::types::WorkflowEngine>) -> Self {
157        self.inner = self.inner.set_engine(input);
158        self
159    }
160    /// <p>The workflow engine for the workflow. This is only required if you have workflow definition files from more than one engine in your zip file. Otherwise, the service can detect the engine automatically from your workflow definition.</p>
161    pub fn get_engine(&self) -> &::std::option::Option<crate::types::WorkflowEngine> {
162        self.inner.get_engine()
163    }
164    /// <p>A ZIP archive containing the main workflow definition file and dependencies that it imports for the workflow. You can use a file with a ://fileb prefix instead of the Base64 string. For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/workflow-defn-requirements.html">Workflow definition requirements</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
165    pub fn definition_zip(mut self, input: ::aws_smithy_types::Blob) -> Self {
166        self.inner = self.inner.definition_zip(input);
167        self
168    }
169    /// <p>A ZIP archive containing the main workflow definition file and dependencies that it imports for the workflow. You can use a file with a ://fileb prefix instead of the Base64 string. For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/workflow-defn-requirements.html">Workflow definition requirements</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
170    pub fn set_definition_zip(mut self, input: ::std::option::Option<::aws_smithy_types::Blob>) -> Self {
171        self.inner = self.inner.set_definition_zip(input);
172        self
173    }
174    /// <p>A ZIP archive containing the main workflow definition file and dependencies that it imports for the workflow. You can use a file with a ://fileb prefix instead of the Base64 string. For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/workflow-defn-requirements.html">Workflow definition requirements</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
175    pub fn get_definition_zip(&self) -> &::std::option::Option<::aws_smithy_types::Blob> {
176        self.inner.get_definition_zip()
177    }
178    /// <p>The S3 URI of a definition for the workflow. The S3 bucket must be in the same region as the workflow.</p>
179    pub fn definition_uri(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
180        self.inner = self.inner.definition_uri(input.into());
181        self
182    }
183    /// <p>The S3 URI of a definition for the workflow. The S3 bucket must be in the same region as the workflow.</p>
184    pub fn set_definition_uri(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
185        self.inner = self.inner.set_definition_uri(input);
186        self
187    }
188    /// <p>The S3 URI of a definition for the workflow. The S3 bucket must be in the same region as the workflow.</p>
189    pub fn get_definition_uri(&self) -> &::std::option::Option<::std::string::String> {
190        self.inner.get_definition_uri()
191    }
192    /// <p>The path of the main definition file for the workflow. This parameter is not required if the ZIP archive contains only one workflow definition file, or if the main definition file is named “main”. An example path is: <code>workflow-definition/main-file.wdl</code>.</p>
193    pub fn main(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
194        self.inner = self.inner.main(input.into());
195        self
196    }
197    /// <p>The path of the main definition file for the workflow. This parameter is not required if the ZIP archive contains only one workflow definition file, or if the main definition file is named “main”. An example path is: <code>workflow-definition/main-file.wdl</code>.</p>
198    pub fn set_main(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
199        self.inner = self.inner.set_main(input);
200        self
201    }
202    /// <p>The path of the main definition file for the workflow. This parameter is not required if the ZIP archive contains only one workflow definition file, or if the main definition file is named “main”. An example path is: <code>workflow-definition/main-file.wdl</code>.</p>
203    pub fn get_main(&self) -> &::std::option::Option<::std::string::String> {
204        self.inner.get_main()
205    }
206    ///
207    /// Adds a key-value pair to `parameterTemplate`.
208    ///
209    /// To override the contents of this collection use [`set_parameter_template`](Self::set_parameter_template).
210    ///
211    /// <p>A parameter template for the workflow. If this field is blank, Amazon Web Services HealthOmics will automatically parse the parameter template values from your workflow definition file. To override these service generated default values, provide a parameter template. To view an example of a parameter template, see <a href="https://docs.aws.amazon.com/omics/latest/dev/parameter-templates.html">Parameter template files</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
212    pub fn parameter_template(mut self, k: impl ::std::convert::Into<::std::string::String>, v: crate::types::WorkflowParameter) -> Self {
213        self.inner = self.inner.parameter_template(k.into(), v);
214        self
215    }
216    /// <p>A parameter template for the workflow. If this field is blank, Amazon Web Services HealthOmics will automatically parse the parameter template values from your workflow definition file. To override these service generated default values, provide a parameter template. To view an example of a parameter template, see <a href="https://docs.aws.amazon.com/omics/latest/dev/parameter-templates.html">Parameter template files</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
217    pub fn set_parameter_template(
218        mut self,
219        input: ::std::option::Option<::std::collections::HashMap<::std::string::String, crate::types::WorkflowParameter>>,
220    ) -> Self {
221        self.inner = self.inner.set_parameter_template(input);
222        self
223    }
224    /// <p>A parameter template for the workflow. If this field is blank, Amazon Web Services HealthOmics will automatically parse the parameter template values from your workflow definition file. To override these service generated default values, provide a parameter template. To view an example of a parameter template, see <a href="https://docs.aws.amazon.com/omics/latest/dev/parameter-templates.html">Parameter template files</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
225    pub fn get_parameter_template(
226        &self,
227    ) -> &::std::option::Option<::std::collections::HashMap<::std::string::String, crate::types::WorkflowParameter>> {
228        self.inner.get_parameter_template()
229    }
230    /// <p>The default static storage capacity (in gibibytes) for runs that use this workflow or workflow version. The <code>storageCapacity</code> can be overwritten at run time. The storage capacity is not required for runs with a <code>DYNAMIC</code> storage type.</p>
231    pub fn storage_capacity(mut self, input: i32) -> Self {
232        self.inner = self.inner.storage_capacity(input);
233        self
234    }
235    /// <p>The default static storage capacity (in gibibytes) for runs that use this workflow or workflow version. The <code>storageCapacity</code> can be overwritten at run time. The storage capacity is not required for runs with a <code>DYNAMIC</code> storage type.</p>
236    pub fn set_storage_capacity(mut self, input: ::std::option::Option<i32>) -> Self {
237        self.inner = self.inner.set_storage_capacity(input);
238        self
239    }
240    /// <p>The default static storage capacity (in gibibytes) for runs that use this workflow or workflow version. The <code>storageCapacity</code> can be overwritten at run time. The storage capacity is not required for runs with a <code>DYNAMIC</code> storage type.</p>
241    pub fn get_storage_capacity(&self) -> &::std::option::Option<i32> {
242        self.inner.get_storage_capacity()
243    }
244    ///
245    /// Adds a key-value pair to `tags`.
246    ///
247    /// To override the contents of this collection use [`set_tags`](Self::set_tags).
248    ///
249    /// <p>Tags for the workflow. You can define up to 50 tags for the workflow. For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/add-a-tag.html">Adding a tag</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
250    pub fn tags(mut self, k: impl ::std::convert::Into<::std::string::String>, v: impl ::std::convert::Into<::std::string::String>) -> Self {
251        self.inner = self.inner.tags(k.into(), v.into());
252        self
253    }
254    /// <p>Tags for the workflow. You can define up to 50 tags for the workflow. For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/add-a-tag.html">Adding a tag</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
255    pub fn set_tags(mut self, input: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>) -> Self {
256        self.inner = self.inner.set_tags(input);
257        self
258    }
259    /// <p>Tags for the workflow. You can define up to 50 tags for the workflow. For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/add-a-tag.html">Adding a tag</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
260    pub fn get_tags(&self) -> &::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>> {
261        self.inner.get_tags()
262    }
263    /// <p>An idempotency token to ensure that duplicate workflows are not created when Amazon Web Services HealthOmics submits retry requests.</p>
264    pub fn request_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
265        self.inner = self.inner.request_id(input.into());
266        self
267    }
268    /// <p>An idempotency token to ensure that duplicate workflows are not created when Amazon Web Services HealthOmics submits retry requests.</p>
269    pub fn set_request_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
270        self.inner = self.inner.set_request_id(input);
271        self
272    }
273    /// <p>An idempotency token to ensure that duplicate workflows are not created when Amazon Web Services HealthOmics submits retry requests.</p>
274    pub fn get_request_id(&self) -> &::std::option::Option<::std::string::String> {
275        self.inner.get_request_id()
276    }
277    /// <p>The computational accelerator specified to run the workflow.</p>
278    pub fn accelerators(mut self, input: crate::types::Accelerators) -> Self {
279        self.inner = self.inner.accelerators(input);
280        self
281    }
282    /// <p>The computational accelerator specified to run the workflow.</p>
283    pub fn set_accelerators(mut self, input: ::std::option::Option<crate::types::Accelerators>) -> Self {
284        self.inner = self.inner.set_accelerators(input);
285        self
286    }
287    /// <p>The computational accelerator specified to run the workflow.</p>
288    pub fn get_accelerators(&self) -> &::std::option::Option<crate::types::Accelerators> {
289        self.inner.get_accelerators()
290    }
291    /// <p>The default storage type for runs that use this workflow. The <code>storageType</code> can be overridden at run time. <code>DYNAMIC</code> storage dynamically scales the storage up or down, based on file system utilization. <code>STATIC</code> storage allocates a fixed amount of storage. For more information about dynamic and static storage types, see <a href="https://docs.aws.amazon.com/omics/latest/dev/workflows-run-types.html">Run storage types</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
292    pub fn storage_type(mut self, input: crate::types::StorageType) -> Self {
293        self.inner = self.inner.storage_type(input);
294        self
295    }
296    /// <p>The default storage type for runs that use this workflow. The <code>storageType</code> can be overridden at run time. <code>DYNAMIC</code> storage dynamically scales the storage up or down, based on file system utilization. <code>STATIC</code> storage allocates a fixed amount of storage. For more information about dynamic and static storage types, see <a href="https://docs.aws.amazon.com/omics/latest/dev/workflows-run-types.html">Run storage types</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
297    pub fn set_storage_type(mut self, input: ::std::option::Option<crate::types::StorageType>) -> Self {
298        self.inner = self.inner.set_storage_type(input);
299        self
300    }
301    /// <p>The default storage type for runs that use this workflow. The <code>storageType</code> can be overridden at run time. <code>DYNAMIC</code> storage dynamically scales the storage up or down, based on file system utilization. <code>STATIC</code> storage allocates a fixed amount of storage. For more information about dynamic and static storage types, see <a href="https://docs.aws.amazon.com/omics/latest/dev/workflows-run-types.html">Run storage types</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
302    pub fn get_storage_type(&self) -> &::std::option::Option<crate::types::StorageType> {
303        self.inner.get_storage_type()
304    }
305    /// <p>(Optional) Use a container registry map to specify mappings between the ECR private repository and one or more upstream registries. For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/workflows-ecr.html">Container images</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
306    pub fn container_registry_map(mut self, input: crate::types::ContainerRegistryMap) -> Self {
307        self.inner = self.inner.container_registry_map(input);
308        self
309    }
310    /// <p>(Optional) Use a container registry map to specify mappings between the ECR private repository and one or more upstream registries. For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/workflows-ecr.html">Container images</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
311    pub fn set_container_registry_map(mut self, input: ::std::option::Option<crate::types::ContainerRegistryMap>) -> Self {
312        self.inner = self.inner.set_container_registry_map(input);
313        self
314    }
315    /// <p>(Optional) Use a container registry map to specify mappings between the ECR private repository and one or more upstream registries. For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/workflows-ecr.html">Container images</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
316    pub fn get_container_registry_map(&self) -> &::std::option::Option<crate::types::ContainerRegistryMap> {
317        self.inner.get_container_registry_map()
318    }
319    /// <p>(Optional) URI of the S3 location for the registry mapping file.</p>
320    pub fn container_registry_map_uri(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
321        self.inner = self.inner.container_registry_map_uri(input.into());
322        self
323    }
324    /// <p>(Optional) URI of the S3 location for the registry mapping file.</p>
325    pub fn set_container_registry_map_uri(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
326        self.inner = self.inner.set_container_registry_map_uri(input);
327        self
328    }
329    /// <p>(Optional) URI of the S3 location for the registry mapping file.</p>
330    pub fn get_container_registry_map_uri(&self) -> &::std::option::Option<::std::string::String> {
331        self.inner.get_container_registry_map_uri()
332    }
333    /// <p>The markdown content for the workflow's README file. This provides documentation and usage information for users of the workflow.</p>
334    pub fn readme_markdown(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
335        self.inner = self.inner.readme_markdown(input.into());
336        self
337    }
338    /// <p>The markdown content for the workflow's README file. This provides documentation and usage information for users of the workflow.</p>
339    pub fn set_readme_markdown(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
340        self.inner = self.inner.set_readme_markdown(input);
341        self
342    }
343    /// <p>The markdown content for the workflow's README file. This provides documentation and usage information for users of the workflow.</p>
344    pub fn get_readme_markdown(&self) -> &::std::option::Option<::std::string::String> {
345        self.inner.get_readme_markdown()
346    }
347    /// <p>The path to the workflow parameter template JSON file within the repository. This file defines the input parameters for runs that use this workflow. If not specified, the workflow will be created without a parameter template.</p>
348    pub fn parameter_template_path(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
349        self.inner = self.inner.parameter_template_path(input.into());
350        self
351    }
352    /// <p>The path to the workflow parameter template JSON file within the repository. This file defines the input parameters for runs that use this workflow. If not specified, the workflow will be created without a parameter template.</p>
353    pub fn set_parameter_template_path(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
354        self.inner = self.inner.set_parameter_template_path(input);
355        self
356    }
357    /// <p>The path to the workflow parameter template JSON file within the repository. This file defines the input parameters for runs that use this workflow. If not specified, the workflow will be created without a parameter template.</p>
358    pub fn get_parameter_template_path(&self) -> &::std::option::Option<::std::string::String> {
359        self.inner.get_parameter_template_path()
360    }
361    /// <p>The path to the workflow README markdown file within the repository. This file provides documentation and usage information for the workflow. If not specified, the <code>README.md</code> file from the root directory of the repository will be used.</p>
362    pub fn readme_path(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
363        self.inner = self.inner.readme_path(input.into());
364        self
365    }
366    /// <p>The path to the workflow README markdown file within the repository. This file provides documentation and usage information for the workflow. If not specified, the <code>README.md</code> file from the root directory of the repository will be used.</p>
367    pub fn set_readme_path(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
368        self.inner = self.inner.set_readme_path(input);
369        self
370    }
371    /// <p>The path to the workflow README markdown file within the repository. This file provides documentation and usage information for the workflow. If not specified, the <code>README.md</code> file from the root directory of the repository will be used.</p>
372    pub fn get_readme_path(&self) -> &::std::option::Option<::std::string::String> {
373        self.inner.get_readme_path()
374    }
375    /// <p>The repository information for the workflow definition. This allows you to source your workflow definition directly from a code repository.</p>
376    pub fn definition_repository(mut self, input: crate::types::DefinitionRepository) -> Self {
377        self.inner = self.inner.definition_repository(input);
378        self
379    }
380    /// <p>The repository information for the workflow definition. This allows you to source your workflow definition directly from a code repository.</p>
381    pub fn set_definition_repository(mut self, input: ::std::option::Option<crate::types::DefinitionRepository>) -> Self {
382        self.inner = self.inner.set_definition_repository(input);
383        self
384    }
385    /// <p>The repository information for the workflow definition. This allows you to source your workflow definition directly from a code repository.</p>
386    pub fn get_definition_repository(&self) -> &::std::option::Option<crate::types::DefinitionRepository> {
387        self.inner.get_definition_repository()
388    }
389    /// <p>The Amazon Web Services account ID of the expected owner of the S3 bucket that contains the workflow definition. If not specified, the service skips the validation.</p>
390    pub fn workflow_bucket_owner_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
391        self.inner = self.inner.workflow_bucket_owner_id(input.into());
392        self
393    }
394    /// <p>The Amazon Web Services account ID of the expected owner of the S3 bucket that contains the workflow definition. If not specified, the service skips the validation.</p>
395    pub fn set_workflow_bucket_owner_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
396        self.inner = self.inner.set_workflow_bucket_owner_id(input);
397        self
398    }
399    /// <p>The Amazon Web Services account ID of the expected owner of the S3 bucket that contains the workflow definition. If not specified, the service skips the validation.</p>
400    pub fn get_workflow_bucket_owner_id(&self) -> &::std::option::Option<::std::string::String> {
401        self.inner.get_workflow_bucket_owner_id()
402    }
403    /// <p>The S3 URI of the README file for the workflow. This file provides documentation and usage information for the workflow. Requirements include:</p>
404    /// <ul>
405    /// <li>
406    /// <p>The S3 URI must begin with <code>s3://USER-OWNED-BUCKET/</code></p></li>
407    /// <li>
408    /// <p>The requester must have access to the S3 bucket and object.</p></li>
409    /// <li>
410    /// <p>The max README content length is 500 KiB.</p></li>
411    /// </ul>
412    pub fn readme_uri(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
413        self.inner = self.inner.readme_uri(input.into());
414        self
415    }
416    /// <p>The S3 URI of the README file for the workflow. This file provides documentation and usage information for the workflow. Requirements include:</p>
417    /// <ul>
418    /// <li>
419    /// <p>The S3 URI must begin with <code>s3://USER-OWNED-BUCKET/</code></p></li>
420    /// <li>
421    /// <p>The requester must have access to the S3 bucket and object.</p></li>
422    /// <li>
423    /// <p>The max README content length is 500 KiB.</p></li>
424    /// </ul>
425    pub fn set_readme_uri(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
426        self.inner = self.inner.set_readme_uri(input);
427        self
428    }
429    /// <p>The S3 URI of the README file for the workflow. This file provides documentation and usage information for the workflow. Requirements include:</p>
430    /// <ul>
431    /// <li>
432    /// <p>The S3 URI must begin with <code>s3://USER-OWNED-BUCKET/</code></p></li>
433    /// <li>
434    /// <p>The requester must have access to the S3 bucket and object.</p></li>
435    /// <li>
436    /// <p>The max README content length is 500 KiB.</p></li>
437    /// </ul>
438    pub fn get_readme_uri(&self) -> &::std::option::Option<::std::string::String> {
439        self.inner.get_readme_uri()
440    }
441}