1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
    /// Constructs a fluent builder for the [`CreateStudioComponent`](crate::operation::create_studio_component::builders::CreateStudioComponentFluentBuilder) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`client_token(impl ::std::convert::Into<String>)`](crate::operation::create_studio_component::builders::CreateStudioComponentFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::create_studio_component::builders::CreateStudioComponentFluentBuilder::set_client_token): <p>Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don’t specify a client token, the Amazon Web Services SDK automatically generates a client token and uses it for the request to ensure idempotency.</p>
    ///   - [`configuration(StudioComponentConfiguration)`](crate::operation::create_studio_component::builders::CreateStudioComponentFluentBuilder::configuration) / [`set_configuration(Option<StudioComponentConfiguration>)`](crate::operation::create_studio_component::builders::CreateStudioComponentFluentBuilder::set_configuration): <p>The configuration of the studio component, based on component type.</p>
    ///   - [`description(impl ::std::convert::Into<String>)`](crate::operation::create_studio_component::builders::CreateStudioComponentFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::create_studio_component::builders::CreateStudioComponentFluentBuilder::set_description): <p>The description.</p>
    ///   - [`ec2_security_group_ids(Vec<String>)`](crate::operation::create_studio_component::builders::CreateStudioComponentFluentBuilder::ec2_security_group_ids) / [`set_ec2_security_group_ids(Option<Vec<String>>)`](crate::operation::create_studio_component::builders::CreateStudioComponentFluentBuilder::set_ec2_security_group_ids): <p>The EC2 security groups that control access to the studio component.</p>
    ///   - [`initialization_scripts(Vec<StudioComponentInitializationScript>)`](crate::operation::create_studio_component::builders::CreateStudioComponentFluentBuilder::initialization_scripts) / [`set_initialization_scripts(Option<Vec<StudioComponentInitializationScript>>)`](crate::operation::create_studio_component::builders::CreateStudioComponentFluentBuilder::set_initialization_scripts): <p>Initialization scripts for studio components.</p>
    ///   - [`name(impl ::std::convert::Into<String>)`](crate::operation::create_studio_component::builders::CreateStudioComponentFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::create_studio_component::builders::CreateStudioComponentFluentBuilder::set_name): <p>The name for the studio component.</p>
    ///   - [`script_parameters(Vec<ScriptParameterKeyValue>)`](crate::operation::create_studio_component::builders::CreateStudioComponentFluentBuilder::script_parameters) / [`set_script_parameters(Option<Vec<ScriptParameterKeyValue>>)`](crate::operation::create_studio_component::builders::CreateStudioComponentFluentBuilder::set_script_parameters): <p>Parameters for the studio component scripts.</p>
    ///   - [`studio_id(impl ::std::convert::Into<String>)`](crate::operation::create_studio_component::builders::CreateStudioComponentFluentBuilder::studio_id) / [`set_studio_id(Option<String>)`](crate::operation::create_studio_component::builders::CreateStudioComponentFluentBuilder::set_studio_id): <p>The studio ID. </p>
    ///   - [`subtype(StudioComponentSubtype)`](crate::operation::create_studio_component::builders::CreateStudioComponentFluentBuilder::subtype) / [`set_subtype(Option<StudioComponentSubtype>)`](crate::operation::create_studio_component::builders::CreateStudioComponentFluentBuilder::set_subtype): <p>The specific subtype of a studio component.</p>
    ///   - [`tags(HashMap<String, String>)`](crate::operation::create_studio_component::builders::CreateStudioComponentFluentBuilder::tags) / [`set_tags(Option<HashMap<String, String>>)`](crate::operation::create_studio_component::builders::CreateStudioComponentFluentBuilder::set_tags): <p>A collection of labels, in the form of key-value pairs, that apply to this resource.</p>
    ///   - [`r#type(StudioComponentType)`](crate::operation::create_studio_component::builders::CreateStudioComponentFluentBuilder::type) / [`set_type(Option<StudioComponentType>)`](crate::operation::create_studio_component::builders::CreateStudioComponentFluentBuilder::set_type): <p>The type of the studio component.</p>
    ///   - [`secure_initialization_role_arn(impl ::std::convert::Into<String>)`](crate::operation::create_studio_component::builders::CreateStudioComponentFluentBuilder::secure_initialization_role_arn) / [`set_secure_initialization_role_arn(Option<String>)`](crate::operation::create_studio_component::builders::CreateStudioComponentFluentBuilder::set_secure_initialization_role_arn): <p>An IAM role attached to Studio Component when the system initialization script runs which give the studio component access to Amazon Web Services resources when the system initialization script runs.</p>
    ///   - [`runtime_role_arn(impl ::std::convert::Into<String>)`](crate::operation::create_studio_component::builders::CreateStudioComponentFluentBuilder::runtime_role_arn) / [`set_runtime_role_arn(Option<String>)`](crate::operation::create_studio_component::builders::CreateStudioComponentFluentBuilder::set_runtime_role_arn): <p>An IAM role attached to a Studio Component that gives the studio component access to Amazon Web Services resources at anytime while the instance is running. </p>
    /// - On success, responds with [`CreateStudioComponentOutput`](crate::operation::create_studio_component::CreateStudioComponentOutput) with field(s):
    ///   - [`studio_component(Option<StudioComponent>)`](crate::operation::create_studio_component::CreateStudioComponentOutput::studio_component): <p>Information about the studio component.</p>
    /// - On failure, responds with [`SdkError<CreateStudioComponentError>`](crate::operation::create_studio_component::CreateStudioComponentError)
    pub fn create_studio_component(&self) -> crate::operation::create_studio_component::builders::CreateStudioComponentFluentBuilder {
        crate::operation::create_studio_component::builders::CreateStudioComponentFluentBuilder::new(self.handle.clone())
    }
}