/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include namespace Aws { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace Athena { namespace Model { class StartSessionResult { public: AWS_ATHENA_API StartSessionResult(); AWS_ATHENA_API StartSessionResult(const Aws::AmazonWebServiceResult& result); AWS_ATHENA_API StartSessionResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

The session ID.

*/ inline const Aws::String& GetSessionId() const{ return m_sessionId; } /** *

The session ID.

*/ inline void SetSessionId(const Aws::String& value) { m_sessionId = value; } /** *

The session ID.

*/ inline void SetSessionId(Aws::String&& value) { m_sessionId = std::move(value); } /** *

The session ID.

*/ inline void SetSessionId(const char* value) { m_sessionId.assign(value); } /** *

The session ID.

*/ inline StartSessionResult& WithSessionId(const Aws::String& value) { SetSessionId(value); return *this;} /** *

The session ID.

*/ inline StartSessionResult& WithSessionId(Aws::String&& value) { SetSessionId(std::move(value)); return *this;} /** *

The session ID.

*/ inline StartSessionResult& WithSessionId(const char* value) { SetSessionId(value); return *this;} /** *

The state of the session. A description of each state follows.

* CREATING - The session is being started, including acquiring * resources.

CREATED - The session has been started.

* IDLE - The session is able to accept a calculation.

* BUSY - The session is processing another task and is unable to * accept a calculation.

TERMINATING - The session is in the * process of shutting down.

TERMINATED - The session and its * resources are no longer running.

DEGRADED - The session has * no healthy coordinators.

FAILED - Due to a failure, the * session and its resources are no longer running.

*/ inline const SessionState& GetState() const{ return m_state; } /** *

The state of the session. A description of each state follows.

* CREATING - The session is being started, including acquiring * resources.

CREATED - The session has been started.

* IDLE - The session is able to accept a calculation.

* BUSY - The session is processing another task and is unable to * accept a calculation.

TERMINATING - The session is in the * process of shutting down.

TERMINATED - The session and its * resources are no longer running.

DEGRADED - The session has * no healthy coordinators.

FAILED - Due to a failure, the * session and its resources are no longer running.

*/ inline void SetState(const SessionState& value) { m_state = value; } /** *

The state of the session. A description of each state follows.

* CREATING - The session is being started, including acquiring * resources.

CREATED - The session has been started.

* IDLE - The session is able to accept a calculation.

* BUSY - The session is processing another task and is unable to * accept a calculation.

TERMINATING - The session is in the * process of shutting down.

TERMINATED - The session and its * resources are no longer running.

DEGRADED - The session has * no healthy coordinators.

FAILED - Due to a failure, the * session and its resources are no longer running.

*/ inline void SetState(SessionState&& value) { m_state = std::move(value); } /** *

The state of the session. A description of each state follows.

* CREATING - The session is being started, including acquiring * resources.

CREATED - The session has been started.

* IDLE - The session is able to accept a calculation.

* BUSY - The session is processing another task and is unable to * accept a calculation.

TERMINATING - The session is in the * process of shutting down.

TERMINATED - The session and its * resources are no longer running.

DEGRADED - The session has * no healthy coordinators.

FAILED - Due to a failure, the * session and its resources are no longer running.

*/ inline StartSessionResult& WithState(const SessionState& value) { SetState(value); return *this;} /** *

The state of the session. A description of each state follows.

* CREATING - The session is being started, including acquiring * resources.

CREATED - The session has been started.

* IDLE - The session is able to accept a calculation.

* BUSY - The session is processing another task and is unable to * accept a calculation.

TERMINATING - The session is in the * process of shutting down.

TERMINATED - The session and its * resources are no longer running.

DEGRADED - The session has * no healthy coordinators.

FAILED - Due to a failure, the * session and its resources are no longer running.

*/ inline StartSessionResult& WithState(SessionState&& value) { SetState(std::move(value)); return *this;} inline const Aws::String& GetRequestId() const{ return m_requestId; } inline void SetRequestId(const Aws::String& value) { m_requestId = value; } inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } inline void SetRequestId(const char* value) { m_requestId.assign(value); } inline StartSessionResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline StartSessionResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline StartSessionResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: Aws::String m_sessionId; SessionState m_state; Aws::String m_requestId; }; } // namespace Model } // namespace Athena } // namespace Aws