/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include namespace Aws { namespace Http { class URI; } //namespace Http namespace NimbleStudio { namespace Model { /** */ class GetLaunchProfileInitializationRequest : public NimbleStudioRequest { public: AWS_NIMBLESTUDIO_API GetLaunchProfileInitializationRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "GetLaunchProfileInitialization"; } AWS_NIMBLESTUDIO_API Aws::String SerializePayload() const override; AWS_NIMBLESTUDIO_API void AddQueryStringParameters(Aws::Http::URI& uri) const override; /** *

The ID of the launch profile used to control access from the streaming * session.

*/ inline const Aws::String& GetLaunchProfileId() const{ return m_launchProfileId; } /** *

The ID of the launch profile used to control access from the streaming * session.

*/ inline bool LaunchProfileIdHasBeenSet() const { return m_launchProfileIdHasBeenSet; } /** *

The ID of the launch profile used to control access from the streaming * session.

*/ inline void SetLaunchProfileId(const Aws::String& value) { m_launchProfileIdHasBeenSet = true; m_launchProfileId = value; } /** *

The ID of the launch profile used to control access from the streaming * session.

*/ inline void SetLaunchProfileId(Aws::String&& value) { m_launchProfileIdHasBeenSet = true; m_launchProfileId = std::move(value); } /** *

The ID of the launch profile used to control access from the streaming * session.

*/ inline void SetLaunchProfileId(const char* value) { m_launchProfileIdHasBeenSet = true; m_launchProfileId.assign(value); } /** *

The ID of the launch profile used to control access from the streaming * session.

*/ inline GetLaunchProfileInitializationRequest& WithLaunchProfileId(const Aws::String& value) { SetLaunchProfileId(value); return *this;} /** *

The ID of the launch profile used to control access from the streaming * session.

*/ inline GetLaunchProfileInitializationRequest& WithLaunchProfileId(Aws::String&& value) { SetLaunchProfileId(std::move(value)); return *this;} /** *

The ID of the launch profile used to control access from the streaming * session.

*/ inline GetLaunchProfileInitializationRequest& WithLaunchProfileId(const char* value) { SetLaunchProfileId(value); return *this;} /** *

The launch profile protocol versions supported by the client.

*/ inline const Aws::Vector& GetLaunchProfileProtocolVersions() const{ return m_launchProfileProtocolVersions; } /** *

The launch profile protocol versions supported by the client.

*/ inline bool LaunchProfileProtocolVersionsHasBeenSet() const { return m_launchProfileProtocolVersionsHasBeenSet; } /** *

The launch profile protocol versions supported by the client.

*/ inline void SetLaunchProfileProtocolVersions(const Aws::Vector& value) { m_launchProfileProtocolVersionsHasBeenSet = true; m_launchProfileProtocolVersions = value; } /** *

The launch profile protocol versions supported by the client.

*/ inline void SetLaunchProfileProtocolVersions(Aws::Vector&& value) { m_launchProfileProtocolVersionsHasBeenSet = true; m_launchProfileProtocolVersions = std::move(value); } /** *

The launch profile protocol versions supported by the client.

*/ inline GetLaunchProfileInitializationRequest& WithLaunchProfileProtocolVersions(const Aws::Vector& value) { SetLaunchProfileProtocolVersions(value); return *this;} /** *

The launch profile protocol versions supported by the client.

*/ inline GetLaunchProfileInitializationRequest& WithLaunchProfileProtocolVersions(Aws::Vector&& value) { SetLaunchProfileProtocolVersions(std::move(value)); return *this;} /** *

The launch profile protocol versions supported by the client.

*/ inline GetLaunchProfileInitializationRequest& AddLaunchProfileProtocolVersions(const Aws::String& value) { m_launchProfileProtocolVersionsHasBeenSet = true; m_launchProfileProtocolVersions.push_back(value); return *this; } /** *

The launch profile protocol versions supported by the client.

*/ inline GetLaunchProfileInitializationRequest& AddLaunchProfileProtocolVersions(Aws::String&& value) { m_launchProfileProtocolVersionsHasBeenSet = true; m_launchProfileProtocolVersions.push_back(std::move(value)); return *this; } /** *

The launch profile protocol versions supported by the client.

*/ inline GetLaunchProfileInitializationRequest& AddLaunchProfileProtocolVersions(const char* value) { m_launchProfileProtocolVersionsHasBeenSet = true; m_launchProfileProtocolVersions.push_back(value); return *this; } /** *

The launch purpose.

*/ inline const Aws::String& GetLaunchPurpose() const{ return m_launchPurpose; } /** *

The launch purpose.

*/ inline bool LaunchPurposeHasBeenSet() const { return m_launchPurposeHasBeenSet; } /** *

The launch purpose.

*/ inline void SetLaunchPurpose(const Aws::String& value) { m_launchPurposeHasBeenSet = true; m_launchPurpose = value; } /** *

The launch purpose.

*/ inline void SetLaunchPurpose(Aws::String&& value) { m_launchPurposeHasBeenSet = true; m_launchPurpose = std::move(value); } /** *

The launch purpose.

*/ inline void SetLaunchPurpose(const char* value) { m_launchPurposeHasBeenSet = true; m_launchPurpose.assign(value); } /** *

The launch purpose.

*/ inline GetLaunchProfileInitializationRequest& WithLaunchPurpose(const Aws::String& value) { SetLaunchPurpose(value); return *this;} /** *

The launch purpose.

*/ inline GetLaunchProfileInitializationRequest& WithLaunchPurpose(Aws::String&& value) { SetLaunchPurpose(std::move(value)); return *this;} /** *

The launch purpose.

*/ inline GetLaunchProfileInitializationRequest& WithLaunchPurpose(const char* value) { SetLaunchPurpose(value); return *this;} /** *

The platform where this Launch Profile will be used, either Windows or * Linux.

*/ inline const Aws::String& GetPlatform() const{ return m_platform; } /** *

The platform where this Launch Profile will be used, either Windows or * Linux.

*/ inline bool PlatformHasBeenSet() const { return m_platformHasBeenSet; } /** *

The platform where this Launch Profile will be used, either Windows or * Linux.

*/ inline void SetPlatform(const Aws::String& value) { m_platformHasBeenSet = true; m_platform = value; } /** *

The platform where this Launch Profile will be used, either Windows or * Linux.

*/ inline void SetPlatform(Aws::String&& value) { m_platformHasBeenSet = true; m_platform = std::move(value); } /** *

The platform where this Launch Profile will be used, either Windows or * Linux.

*/ inline void SetPlatform(const char* value) { m_platformHasBeenSet = true; m_platform.assign(value); } /** *

The platform where this Launch Profile will be used, either Windows or * Linux.

*/ inline GetLaunchProfileInitializationRequest& WithPlatform(const Aws::String& value) { SetPlatform(value); return *this;} /** *

The platform where this Launch Profile will be used, either Windows or * Linux.

*/ inline GetLaunchProfileInitializationRequest& WithPlatform(Aws::String&& value) { SetPlatform(std::move(value)); return *this;} /** *

The platform where this Launch Profile will be used, either Windows or * Linux.

*/ inline GetLaunchProfileInitializationRequest& WithPlatform(const char* value) { SetPlatform(value); return *this;} /** *

The studio ID.

*/ inline const Aws::String& GetStudioId() const{ return m_studioId; } /** *

The studio ID.

*/ inline bool StudioIdHasBeenSet() const { return m_studioIdHasBeenSet; } /** *

The studio ID.

*/ inline void SetStudioId(const Aws::String& value) { m_studioIdHasBeenSet = true; m_studioId = value; } /** *

The studio ID.

*/ inline void SetStudioId(Aws::String&& value) { m_studioIdHasBeenSet = true; m_studioId = std::move(value); } /** *

The studio ID.

*/ inline void SetStudioId(const char* value) { m_studioIdHasBeenSet = true; m_studioId.assign(value); } /** *

The studio ID.

*/ inline GetLaunchProfileInitializationRequest& WithStudioId(const Aws::String& value) { SetStudioId(value); return *this;} /** *

The studio ID.

*/ inline GetLaunchProfileInitializationRequest& WithStudioId(Aws::String&& value) { SetStudioId(std::move(value)); return *this;} /** *

The studio ID.

*/ inline GetLaunchProfileInitializationRequest& WithStudioId(const char* value) { SetStudioId(value); return *this;} private: Aws::String m_launchProfileId; bool m_launchProfileIdHasBeenSet = false; Aws::Vector m_launchProfileProtocolVersions; bool m_launchProfileProtocolVersionsHasBeenSet = false; Aws::String m_launchPurpose; bool m_launchPurposeHasBeenSet = false; Aws::String m_platform; bool m_platformHasBeenSet = false; Aws::String m_studioId; bool m_studioIdHasBeenSet = false; }; } // namespace Model } // namespace NimbleStudio } // namespace Aws