1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
    /// Constructs a fluent builder for the [`CreateLaunchProfile`](crate::operation::create_launch_profile::builders::CreateLaunchProfileFluentBuilder) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`client_token(impl Into<String>)`](crate::operation::create_launch_profile::builders::CreateLaunchProfileFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::create_launch_profile::builders::CreateLaunchProfileFluentBuilder::set_client_token):<br>required: **false**<br><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><br>
    ///   - [`description(impl Into<String>)`](crate::operation::create_launch_profile::builders::CreateLaunchProfileFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::create_launch_profile::builders::CreateLaunchProfileFluentBuilder::set_description):<br>required: **false**<br><p>The description.</p><br>
    ///   - [`ec2_subnet_ids(impl Into<String>)`](crate::operation::create_launch_profile::builders::CreateLaunchProfileFluentBuilder::ec2_subnet_ids) / [`set_ec2_subnet_ids(Option<Vec::<String>>)`](crate::operation::create_launch_profile::builders::CreateLaunchProfileFluentBuilder::set_ec2_subnet_ids):<br>required: **true**<br><p>Specifies the IDs of the EC2 subnets where streaming sessions will be accessible from. These subnets must support the specified instance types. </p><br>
    ///   - [`launch_profile_protocol_versions(impl Into<String>)`](crate::operation::create_launch_profile::builders::CreateLaunchProfileFluentBuilder::launch_profile_protocol_versions) / [`set_launch_profile_protocol_versions(Option<Vec::<String>>)`](crate::operation::create_launch_profile::builders::CreateLaunchProfileFluentBuilder::set_launch_profile_protocol_versions):<br>required: **true**<br><p>The version number of the protocol that is used by the launch profile. The only valid version is "2021-03-31".</p><br>
    ///   - [`name(impl Into<String>)`](crate::operation::create_launch_profile::builders::CreateLaunchProfileFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::create_launch_profile::builders::CreateLaunchProfileFluentBuilder::set_name):<br>required: **true**<br><p>The name for the launch profile.</p><br>
    ///   - [`stream_configuration(StreamConfigurationCreate)`](crate::operation::create_launch_profile::builders::CreateLaunchProfileFluentBuilder::stream_configuration) / [`set_stream_configuration(Option<StreamConfigurationCreate>)`](crate::operation::create_launch_profile::builders::CreateLaunchProfileFluentBuilder::set_stream_configuration):<br>required: **true**<br><p>A configuration for a streaming session.</p><br>
    ///   - [`studio_component_ids(impl Into<String>)`](crate::operation::create_launch_profile::builders::CreateLaunchProfileFluentBuilder::studio_component_ids) / [`set_studio_component_ids(Option<Vec::<String>>)`](crate::operation::create_launch_profile::builders::CreateLaunchProfileFluentBuilder::set_studio_component_ids):<br>required: **true**<br><p>Unique identifiers for a collection of studio components that can be used with this launch profile.</p><br>
    ///   - [`studio_id(impl Into<String>)`](crate::operation::create_launch_profile::builders::CreateLaunchProfileFluentBuilder::studio_id) / [`set_studio_id(Option<String>)`](crate::operation::create_launch_profile::builders::CreateLaunchProfileFluentBuilder::set_studio_id):<br>required: **true**<br><p>The studio ID. </p><br>
    ///   - [`tags(impl Into<String>, impl Into<String>)`](crate::operation::create_launch_profile::builders::CreateLaunchProfileFluentBuilder::tags) / [`set_tags(Option<HashMap::<String, String>>)`](crate::operation::create_launch_profile::builders::CreateLaunchProfileFluentBuilder::set_tags):<br>required: **false**<br><p>A collection of labels, in the form of key-value pairs, that apply to this resource.</p><br>
    /// - On success, responds with [`CreateLaunchProfileOutput`](crate::operation::create_launch_profile::CreateLaunchProfileOutput) with field(s):
    ///   - [`launch_profile(Option<LaunchProfile>)`](crate::operation::create_launch_profile::CreateLaunchProfileOutput::launch_profile): <p>The launch profile.</p>
    /// - On failure, responds with [`SdkError<CreateLaunchProfileError>`](crate::operation::create_launch_profile::CreateLaunchProfileError)
    pub fn create_launch_profile(&self) -> crate::operation::create_launch_profile::builders::CreateLaunchProfileFluentBuilder {
        crate::operation::create_launch_profile::builders::CreateLaunchProfileFluentBuilder::new(self.handle.clone())
    }
}