/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Information about a Session Manager connection to an instance.See
* Also:
AWS API
* Reference
The ID of the session.
*/ inline const Aws::String& GetSessionId() const{ return m_sessionId; } /** *The ID of the session.
*/ inline bool SessionIdHasBeenSet() const { return m_sessionIdHasBeenSet; } /** *The ID of the session.
*/ inline void SetSessionId(const Aws::String& value) { m_sessionIdHasBeenSet = true; m_sessionId = value; } /** *The ID of the session.
*/ inline void SetSessionId(Aws::String&& value) { m_sessionIdHasBeenSet = true; m_sessionId = std::move(value); } /** *The ID of the session.
*/ inline void SetSessionId(const char* value) { m_sessionIdHasBeenSet = true; m_sessionId.assign(value); } /** *The ID of the session.
*/ inline Session& WithSessionId(const Aws::String& value) { SetSessionId(value); return *this;} /** *The ID of the session.
*/ inline Session& WithSessionId(Aws::String&& value) { SetSessionId(std::move(value)); return *this;} /** *The ID of the session.
*/ inline Session& WithSessionId(const char* value) { SetSessionId(value); return *this;} /** *The instance that the Session Manager session connected to.
*/ inline const Aws::String& GetTarget() const{ return m_target; } /** *The instance that the Session Manager session connected to.
*/ inline bool TargetHasBeenSet() const { return m_targetHasBeenSet; } /** *The instance that the Session Manager session connected to.
*/ inline void SetTarget(const Aws::String& value) { m_targetHasBeenSet = true; m_target = value; } /** *The instance that the Session Manager session connected to.
*/ inline void SetTarget(Aws::String&& value) { m_targetHasBeenSet = true; m_target = std::move(value); } /** *The instance that the Session Manager session connected to.
*/ inline void SetTarget(const char* value) { m_targetHasBeenSet = true; m_target.assign(value); } /** *The instance that the Session Manager session connected to.
*/ inline Session& WithTarget(const Aws::String& value) { SetTarget(value); return *this;} /** *The instance that the Session Manager session connected to.
*/ inline Session& WithTarget(Aws::String&& value) { SetTarget(std::move(value)); return *this;} /** *The instance that the Session Manager session connected to.
*/ inline Session& WithTarget(const char* value) { SetTarget(value); return *this;} /** *The status of the session. For example, "Connected" or "Terminated".
*/ inline const SessionStatus& GetStatus() const{ return m_status; } /** *The status of the session. For example, "Connected" or "Terminated".
*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *The status of the session. For example, "Connected" or "Terminated".
*/ inline void SetStatus(const SessionStatus& value) { m_statusHasBeenSet = true; m_status = value; } /** *The status of the session. For example, "Connected" or "Terminated".
*/ inline void SetStatus(SessionStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } /** *The status of the session. For example, "Connected" or "Terminated".
*/ inline Session& WithStatus(const SessionStatus& value) { SetStatus(value); return *this;} /** *The status of the session. For example, "Connected" or "Terminated".
*/ inline Session& WithStatus(SessionStatus&& value) { SetStatus(std::move(value)); return *this;} /** *The date and time, in ISO-8601 Extended format, when the session began.
*/ inline const Aws::Utils::DateTime& GetStartDate() const{ return m_startDate; } /** *The date and time, in ISO-8601 Extended format, when the session began.
*/ inline bool StartDateHasBeenSet() const { return m_startDateHasBeenSet; } /** *The date and time, in ISO-8601 Extended format, when the session began.
*/ inline void SetStartDate(const Aws::Utils::DateTime& value) { m_startDateHasBeenSet = true; m_startDate = value; } /** *The date and time, in ISO-8601 Extended format, when the session began.
*/ inline void SetStartDate(Aws::Utils::DateTime&& value) { m_startDateHasBeenSet = true; m_startDate = std::move(value); } /** *The date and time, in ISO-8601 Extended format, when the session began.
*/ inline Session& WithStartDate(const Aws::Utils::DateTime& value) { SetStartDate(value); return *this;} /** *The date and time, in ISO-8601 Extended format, when the session began.
*/ inline Session& WithStartDate(Aws::Utils::DateTime&& value) { SetStartDate(std::move(value)); return *this;} /** *The date and time, in ISO-8601 Extended format, when the session was * terminated.
*/ inline const Aws::Utils::DateTime& GetEndDate() const{ return m_endDate; } /** *The date and time, in ISO-8601 Extended format, when the session was * terminated.
*/ inline bool EndDateHasBeenSet() const { return m_endDateHasBeenSet; } /** *The date and time, in ISO-8601 Extended format, when the session was * terminated.
*/ inline void SetEndDate(const Aws::Utils::DateTime& value) { m_endDateHasBeenSet = true; m_endDate = value; } /** *The date and time, in ISO-8601 Extended format, when the session was * terminated.
*/ inline void SetEndDate(Aws::Utils::DateTime&& value) { m_endDateHasBeenSet = true; m_endDate = std::move(value); } /** *The date and time, in ISO-8601 Extended format, when the session was * terminated.
*/ inline Session& WithEndDate(const Aws::Utils::DateTime& value) { SetEndDate(value); return *this;} /** *The date and time, in ISO-8601 Extended format, when the session was * terminated.
*/ inline Session& WithEndDate(Aws::Utils::DateTime&& value) { SetEndDate(std::move(value)); return *this;} /** *The name of the Session Manager SSM document used to define the parameters
* and plugin settings for the session. For example,
* SSM-SessionManagerRunShell.
The name of the Session Manager SSM document used to define the parameters
* and plugin settings for the session. For example,
* SSM-SessionManagerRunShell.
The name of the Session Manager SSM document used to define the parameters
* and plugin settings for the session. For example,
* SSM-SessionManagerRunShell.
The name of the Session Manager SSM document used to define the parameters
* and plugin settings for the session. For example,
* SSM-SessionManagerRunShell.
The name of the Session Manager SSM document used to define the parameters
* and plugin settings for the session. For example,
* SSM-SessionManagerRunShell.
The name of the Session Manager SSM document used to define the parameters
* and plugin settings for the session. For example,
* SSM-SessionManagerRunShell.
The name of the Session Manager SSM document used to define the parameters
* and plugin settings for the session. For example,
* SSM-SessionManagerRunShell.
The name of the Session Manager SSM document used to define the parameters
* and plugin settings for the session. For example,
* SSM-SessionManagerRunShell.
The ID of the AWS user account that started the session.
*/ inline const Aws::String& GetOwner() const{ return m_owner; } /** *The ID of the AWS user account that started the session.
*/ inline bool OwnerHasBeenSet() const { return m_ownerHasBeenSet; } /** *The ID of the AWS user account that started the session.
*/ inline void SetOwner(const Aws::String& value) { m_ownerHasBeenSet = true; m_owner = value; } /** *The ID of the AWS user account that started the session.
*/ inline void SetOwner(Aws::String&& value) { m_ownerHasBeenSet = true; m_owner = std::move(value); } /** *The ID of the AWS user account that started the session.
*/ inline void SetOwner(const char* value) { m_ownerHasBeenSet = true; m_owner.assign(value); } /** *The ID of the AWS user account that started the session.
*/ inline Session& WithOwner(const Aws::String& value) { SetOwner(value); return *this;} /** *The ID of the AWS user account that started the session.
*/ inline Session& WithOwner(Aws::String&& value) { SetOwner(std::move(value)); return *this;} /** *The ID of the AWS user account that started the session.
*/ inline Session& WithOwner(const char* value) { SetOwner(value); return *this;} /** *Reserved for future use.
*/ inline const Aws::String& GetDetails() const{ return m_details; } /** *Reserved for future use.
*/ inline bool DetailsHasBeenSet() const { return m_detailsHasBeenSet; } /** *Reserved for future use.
*/ inline void SetDetails(const Aws::String& value) { m_detailsHasBeenSet = true; m_details = value; } /** *Reserved for future use.
*/ inline void SetDetails(Aws::String&& value) { m_detailsHasBeenSet = true; m_details = std::move(value); } /** *Reserved for future use.
*/ inline void SetDetails(const char* value) { m_detailsHasBeenSet = true; m_details.assign(value); } /** *Reserved for future use.
*/ inline Session& WithDetails(const Aws::String& value) { SetDetails(value); return *this;} /** *Reserved for future use.
*/ inline Session& WithDetails(Aws::String&& value) { SetDetails(std::move(value)); return *this;} /** *Reserved for future use.
*/ inline Session& WithDetails(const char* value) { SetDetails(value); return *this;} /** *Reserved for future use.
*/ inline const SessionManagerOutputUrl& GetOutputUrl() const{ return m_outputUrl; } /** *Reserved for future use.
*/ inline bool OutputUrlHasBeenSet() const { return m_outputUrlHasBeenSet; } /** *Reserved for future use.
*/ inline void SetOutputUrl(const SessionManagerOutputUrl& value) { m_outputUrlHasBeenSet = true; m_outputUrl = value; } /** *Reserved for future use.
*/ inline void SetOutputUrl(SessionManagerOutputUrl&& value) { m_outputUrlHasBeenSet = true; m_outputUrl = std::move(value); } /** *Reserved for future use.
*/ inline Session& WithOutputUrl(const SessionManagerOutputUrl& value) { SetOutputUrl(value); return *this;} /** *Reserved for future use.
*/ inline Session& WithOutputUrl(SessionManagerOutputUrl&& value) { SetOutputUrl(std::move(value)); return *this;} private: Aws::String m_sessionId; bool m_sessionIdHasBeenSet; Aws::String m_target; bool m_targetHasBeenSet; SessionStatus m_status; bool m_statusHasBeenSet; Aws::Utils::DateTime m_startDate; bool m_startDateHasBeenSet; Aws::Utils::DateTime m_endDate; bool m_endDateHasBeenSet; Aws::String m_documentName; bool m_documentNameHasBeenSet; Aws::String m_owner; bool m_ownerHasBeenSet; Aws::String m_details; bool m_detailsHasBeenSet; SessionManagerOutputUrl m_outputUrl; bool m_outputUrlHasBeenSet; }; } // namespace Model } // namespace SSM } // namespace Aws