/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Initialization scripts for studio components.See Also:
AWS
* API Reference
The version number of the protocol that is used by the launch profile. The * only valid version is "2021-03-31".
*/ inline const Aws::String& GetLaunchProfileProtocolVersion() const{ return m_launchProfileProtocolVersion; } /** *The version number of the protocol that is used by the launch profile. The * only valid version is "2021-03-31".
*/ inline bool LaunchProfileProtocolVersionHasBeenSet() const { return m_launchProfileProtocolVersionHasBeenSet; } /** *The version number of the protocol that is used by the launch profile. The * only valid version is "2021-03-31".
*/ inline void SetLaunchProfileProtocolVersion(const Aws::String& value) { m_launchProfileProtocolVersionHasBeenSet = true; m_launchProfileProtocolVersion = value; } /** *The version number of the protocol that is used by the launch profile. The * only valid version is "2021-03-31".
*/ inline void SetLaunchProfileProtocolVersion(Aws::String&& value) { m_launchProfileProtocolVersionHasBeenSet = true; m_launchProfileProtocolVersion = std::move(value); } /** *The version number of the protocol that is used by the launch profile. The * only valid version is "2021-03-31".
*/ inline void SetLaunchProfileProtocolVersion(const char* value) { m_launchProfileProtocolVersionHasBeenSet = true; m_launchProfileProtocolVersion.assign(value); } /** *The version number of the protocol that is used by the launch profile. The * only valid version is "2021-03-31".
*/ inline StudioComponentInitializationScript& WithLaunchProfileProtocolVersion(const Aws::String& value) { SetLaunchProfileProtocolVersion(value); return *this;} /** *The version number of the protocol that is used by the launch profile. The * only valid version is "2021-03-31".
*/ inline StudioComponentInitializationScript& WithLaunchProfileProtocolVersion(Aws::String&& value) { SetLaunchProfileProtocolVersion(std::move(value)); return *this;} /** *The version number of the protocol that is used by the launch profile. The * only valid version is "2021-03-31".
*/ inline StudioComponentInitializationScript& WithLaunchProfileProtocolVersion(const char* value) { SetLaunchProfileProtocolVersion(value); return *this;} /** *The platform of the initialization script, either Windows or Linux.
*/ inline const LaunchProfilePlatform& GetPlatform() const{ return m_platform; } /** *The platform of the initialization script, either Windows or Linux.
*/ inline bool PlatformHasBeenSet() const { return m_platformHasBeenSet; } /** *The platform of the initialization script, either Windows or Linux.
*/ inline void SetPlatform(const LaunchProfilePlatform& value) { m_platformHasBeenSet = true; m_platform = value; } /** *The platform of the initialization script, either Windows or Linux.
*/ inline void SetPlatform(LaunchProfilePlatform&& value) { m_platformHasBeenSet = true; m_platform = std::move(value); } /** *The platform of the initialization script, either Windows or Linux.
*/ inline StudioComponentInitializationScript& WithPlatform(const LaunchProfilePlatform& value) { SetPlatform(value); return *this;} /** *The platform of the initialization script, either Windows or Linux.
*/ inline StudioComponentInitializationScript& WithPlatform(LaunchProfilePlatform&& value) { SetPlatform(std::move(value)); return *this;} /** *The method to use when running the initialization script.
*/ inline const StudioComponentInitializationScriptRunContext& GetRunContext() const{ return m_runContext; } /** *The method to use when running the initialization script.
*/ inline bool RunContextHasBeenSet() const { return m_runContextHasBeenSet; } /** *The method to use when running the initialization script.
*/ inline void SetRunContext(const StudioComponentInitializationScriptRunContext& value) { m_runContextHasBeenSet = true; m_runContext = value; } /** *The method to use when running the initialization script.
*/ inline void SetRunContext(StudioComponentInitializationScriptRunContext&& value) { m_runContextHasBeenSet = true; m_runContext = std::move(value); } /** *The method to use when running the initialization script.
*/ inline StudioComponentInitializationScript& WithRunContext(const StudioComponentInitializationScriptRunContext& value) { SetRunContext(value); return *this;} /** *The method to use when running the initialization script.
*/ inline StudioComponentInitializationScript& WithRunContext(StudioComponentInitializationScriptRunContext&& value) { SetRunContext(std::move(value)); return *this;} /** *The initialization script.
*/ inline const Aws::String& GetScript() const{ return m_script; } /** *The initialization script.
*/ inline bool ScriptHasBeenSet() const { return m_scriptHasBeenSet; } /** *The initialization script.
*/ inline void SetScript(const Aws::String& value) { m_scriptHasBeenSet = true; m_script = value; } /** *The initialization script.
*/ inline void SetScript(Aws::String&& value) { m_scriptHasBeenSet = true; m_script = std::move(value); } /** *The initialization script.
*/ inline void SetScript(const char* value) { m_scriptHasBeenSet = true; m_script.assign(value); } /** *The initialization script.
*/ inline StudioComponentInitializationScript& WithScript(const Aws::String& value) { SetScript(value); return *this;} /** *The initialization script.
*/ inline StudioComponentInitializationScript& WithScript(Aws::String&& value) { SetScript(std::move(value)); return *this;} /** *The initialization script.
*/ inline StudioComponentInitializationScript& WithScript(const char* value) { SetScript(value); return *this;} private: Aws::String m_launchProfileProtocolVersion; bool m_launchProfileProtocolVersionHasBeenSet = false; LaunchProfilePlatform m_platform; bool m_platformHasBeenSet = false; StudioComponentInitializationScriptRunContext m_runContext; bool m_runContextHasBeenSet = false; Aws::String m_script; bool m_scriptHasBeenSet = false; }; } // namespace Model } // namespace NimbleStudio } // namespace Aws