aws-sdk-emrserverless 1.109.0

AWS SDK for EMR Serverless
Documentation
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
    /// Constructs a fluent builder for the [`StartSession`](crate::operation::start_session::builders::StartSessionFluentBuilder) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`application_id(impl Into<String>)`](crate::operation::start_session::builders::StartSessionFluentBuilder::application_id) / [`set_application_id(Option<String>)`](crate::operation::start_session::builders::StartSessionFluentBuilder::set_application_id):<br>required: **true**<br><p>The ID of the application on which to start the session.</p><br>
    ///   - [`client_token(impl Into<String>)`](crate::operation::start_session::builders::StartSessionFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::start_session::builders::StartSessionFluentBuilder::set_client_token):<br>required: **true**<br><p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you retry a request that completed successfully using the same client token, the server returns the successful response without performing the operation again.</p><br>
    ///   - [`execution_role_arn(impl Into<String>)`](crate::operation::start_session::builders::StartSessionFluentBuilder::execution_role_arn) / [`set_execution_role_arn(Option<String>)`](crate::operation::start_session::builders::StartSessionFluentBuilder::set_execution_role_arn):<br>required: **true**<br><p>The execution role ARN for the session. Amazon EMR Serverless uses this role to access Amazon Web Services resources on your behalf during session execution.</p><br>
    ///   - [`configuration_overrides(SessionConfigurationOverrides)`](crate::operation::start_session::builders::StartSessionFluentBuilder::configuration_overrides) / [`set_configuration_overrides(Option<SessionConfigurationOverrides>)`](crate::operation::start_session::builders::StartSessionFluentBuilder::set_configuration_overrides):<br>required: **false**<br><p>The configuration overrides for the session. Only runtime configuration overrides are supported.</p><br>
    ///   - [`tags(impl Into<String>, impl Into<String>)`](crate::operation::start_session::builders::StartSessionFluentBuilder::tags) / [`set_tags(Option<HashMap::<String, String>>)`](crate::operation::start_session::builders::StartSessionFluentBuilder::set_tags):<br>required: **false**<br><p>The tags to assign to the session.</p><br>
    ///   - [`idle_timeout_minutes(i64)`](crate::operation::start_session::builders::StartSessionFluentBuilder::idle_timeout_minutes) / [`set_idle_timeout_minutes(Option<i64>)`](crate::operation::start_session::builders::StartSessionFluentBuilder::set_idle_timeout_minutes):<br>required: **false**<br><p>The idle timeout in minutes for the session. After the session remains idle for this duration, Amazon EMR Serverless automatically terminates it.</p><br>
    ///   - [`name(impl Into<String>)`](crate::operation::start_session::builders::StartSessionFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::start_session::builders::StartSessionFluentBuilder::set_name):<br>required: **false**<br><p>The optional name for the session.</p><br>
    /// - On success, responds with [`StartSessionOutput`](crate::operation::start_session::StartSessionOutput) with field(s):
    ///   - [`application_id(String)`](crate::operation::start_session::StartSessionOutput::application_id): <p>The output contains the application ID on which the session was started.</p>
    ///   - [`session_id(String)`](crate::operation::start_session::StartSessionOutput::session_id): <p>The output contains the ID of the session.</p>
    ///   - [`arn(String)`](crate::operation::start_session::StartSessionOutput::arn): <p>The output contains the ARN of the session.</p>
    /// - On failure, responds with [`SdkError<StartSessionError>`](crate::operation::start_session::StartSessionError)
    pub fn start_session(&self) -> crate::operation::start_session::builders::StartSessionFluentBuilder {
        crate::operation::start_session::builders::StartSessionFluentBuilder::new(self.handle.clone())
    }
}