1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// 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:
    ///   - [`description(impl Into<String>)`](crate::operation::start_session::builders::StartSessionFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::start_session::builders::StartSessionFluentBuilder::set_description):<br>required: **false**<br><p>The session description.</p><br>
    ///   - [`work_group(impl Into<String>)`](crate::operation::start_session::builders::StartSessionFluentBuilder::work_group) / [`set_work_group(Option<String>)`](crate::operation::start_session::builders::StartSessionFluentBuilder::set_work_group):<br>required: **true**<br><p>The workgroup to which the session belongs.</p><br>
    ///   - [`engine_configuration(EngineConfiguration)`](crate::operation::start_session::builders::StartSessionFluentBuilder::engine_configuration) / [`set_engine_configuration(Option<EngineConfiguration>)`](crate::operation::start_session::builders::StartSessionFluentBuilder::set_engine_configuration):<br>required: **true**<br><p>Contains engine data processing unit (DPU) configuration settings and parameter mappings.</p><br>
    ///   - [`notebook_version(impl Into<String>)`](crate::operation::start_session::builders::StartSessionFluentBuilder::notebook_version) / [`set_notebook_version(Option<String>)`](crate::operation::start_session::builders::StartSessionFluentBuilder::set_notebook_version):<br>required: **false**<br><p>The notebook version. This value is supplied automatically for notebook sessions in the Athena console and is not required for programmatic session access. The only valid notebook version is <code>Athena notebook version 1</code>. If you specify a value for <code>NotebookVersion</code>, you must also specify a value for <code>NotebookId</code>. See <code>EngineConfiguration$AdditionalConfigs</code>.</p><br>
    ///   - [`session_idle_timeout_in_minutes(i32)`](crate::operation::start_session::builders::StartSessionFluentBuilder::session_idle_timeout_in_minutes) / [`set_session_idle_timeout_in_minutes(Option<i32>)`](crate::operation::start_session::builders::StartSessionFluentBuilder::set_session_idle_timeout_in_minutes):<br>required: **false**<br><p>The idle timeout in minutes for the session.</p><br>
    ///   - [`client_request_token(impl Into<String>)`](crate::operation::start_session::builders::StartSessionFluentBuilder::client_request_token) / [`set_client_request_token(Option<String>)`](crate::operation::start_session::builders::StartSessionFluentBuilder::set_client_request_token):<br>required: **false**<br><p>A unique case-sensitive string used to ensure the request to create the session is idempotent (executes only once). If another <code>StartSessionRequest</code> is received, the same response is returned and another session is not created. If a parameter has changed, an error is returned.</p><important>  <p>This token is listed as not required because Amazon Web Services SDKs (for example the Amazon Web Services SDK for Java) auto-generate the token for users. If you are not using the Amazon Web Services SDK or the Amazon Web Services CLI, you must provide this token or the action will fail.</p> </important><br>
    /// - On success, responds with [`StartSessionOutput`](crate::operation::start_session::StartSessionOutput) with field(s):
    ///   - [`session_id(Option<String>)`](crate::operation::start_session::StartSessionOutput::session_id): <p>The session ID.</p>
    ///   - [`state(Option<SessionState>)`](crate::operation::start_session::StartSessionOutput::state): <p>The state of the session. A description of each state follows.</p> <p><code>CREATING</code> - The session is being started, including acquiring resources.</p> <p><code>CREATED</code> - The session has been started.</p> <p><code>IDLE</code> - The session is able to accept a calculation.</p> <p><code>BUSY</code> - The session is processing another task and is unable to accept a calculation.</p> <p><code>TERMINATING</code> - The session is in the process of shutting down.</p> <p><code>TERMINATED</code> - The session and its resources are no longer running.</p> <p><code>DEGRADED</code> - The session has no healthy coordinators.</p> <p><code>FAILED</code> - Due to a failure, the session and its resources are no longer running.</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())
    }
}