/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace CodeBuild { namespace Model { /** *

Contains information about the debug session for a build. For more * information, see Viewing * a running build in Session Manager.

See Also:

AWS * API Reference

*/ class DebugSession { public: AWS_CODEBUILD_API DebugSession(); AWS_CODEBUILD_API DebugSession(Aws::Utils::Json::JsonView jsonValue); AWS_CODEBUILD_API DebugSession& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_CODEBUILD_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

Specifies if session debugging is enabled for this build.

*/ inline bool GetSessionEnabled() const{ return m_sessionEnabled; } /** *

Specifies if session debugging is enabled for this build.

*/ inline bool SessionEnabledHasBeenSet() const { return m_sessionEnabledHasBeenSet; } /** *

Specifies if session debugging is enabled for this build.

*/ inline void SetSessionEnabled(bool value) { m_sessionEnabledHasBeenSet = true; m_sessionEnabled = value; } /** *

Specifies if session debugging is enabled for this build.

*/ inline DebugSession& WithSessionEnabled(bool value) { SetSessionEnabled(value); return *this;} /** *

Contains the identifier of the Session Manager session used for the build. To * work with the paused build, you open this session to examine, control, and * resume the build.

*/ inline const Aws::String& GetSessionTarget() const{ return m_sessionTarget; } /** *

Contains the identifier of the Session Manager session used for the build. To * work with the paused build, you open this session to examine, control, and * resume the build.

*/ inline bool SessionTargetHasBeenSet() const { return m_sessionTargetHasBeenSet; } /** *

Contains the identifier of the Session Manager session used for the build. To * work with the paused build, you open this session to examine, control, and * resume the build.

*/ inline void SetSessionTarget(const Aws::String& value) { m_sessionTargetHasBeenSet = true; m_sessionTarget = value; } /** *

Contains the identifier of the Session Manager session used for the build. To * work with the paused build, you open this session to examine, control, and * resume the build.

*/ inline void SetSessionTarget(Aws::String&& value) { m_sessionTargetHasBeenSet = true; m_sessionTarget = std::move(value); } /** *

Contains the identifier of the Session Manager session used for the build. To * work with the paused build, you open this session to examine, control, and * resume the build.

*/ inline void SetSessionTarget(const char* value) { m_sessionTargetHasBeenSet = true; m_sessionTarget.assign(value); } /** *

Contains the identifier of the Session Manager session used for the build. To * work with the paused build, you open this session to examine, control, and * resume the build.

*/ inline DebugSession& WithSessionTarget(const Aws::String& value) { SetSessionTarget(value); return *this;} /** *

Contains the identifier of the Session Manager session used for the build. To * work with the paused build, you open this session to examine, control, and * resume the build.

*/ inline DebugSession& WithSessionTarget(Aws::String&& value) { SetSessionTarget(std::move(value)); return *this;} /** *

Contains the identifier of the Session Manager session used for the build. To * work with the paused build, you open this session to examine, control, and * resume the build.

*/ inline DebugSession& WithSessionTarget(const char* value) { SetSessionTarget(value); return *this;} private: bool m_sessionEnabled; bool m_sessionEnabledHasBeenSet = false; Aws::String m_sessionTarget; bool m_sessionTargetHasBeenSet = false; }; } // namespace Model } // namespace CodeBuild } // namespace Aws