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

Application configuration information for a robot.

See Also:

* AWS * API Reference

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

The application information for the robot application.

*/ inline const Aws::String& GetApplication() const{ return m_application; } /** *

The application information for the robot application.

*/ inline bool ApplicationHasBeenSet() const { return m_applicationHasBeenSet; } /** *

The application information for the robot application.

*/ inline void SetApplication(const Aws::String& value) { m_applicationHasBeenSet = true; m_application = value; } /** *

The application information for the robot application.

*/ inline void SetApplication(Aws::String&& value) { m_applicationHasBeenSet = true; m_application = std::move(value); } /** *

The application information for the robot application.

*/ inline void SetApplication(const char* value) { m_applicationHasBeenSet = true; m_application.assign(value); } /** *

The application information for the robot application.

*/ inline RobotApplicationConfig& WithApplication(const Aws::String& value) { SetApplication(value); return *this;} /** *

The application information for the robot application.

*/ inline RobotApplicationConfig& WithApplication(Aws::String&& value) { SetApplication(std::move(value)); return *this;} /** *

The application information for the robot application.

*/ inline RobotApplicationConfig& WithApplication(const char* value) { SetApplication(value); return *this;} /** *

The version of the robot application.

*/ inline const Aws::String& GetApplicationVersion() const{ return m_applicationVersion; } /** *

The version of the robot application.

*/ inline bool ApplicationVersionHasBeenSet() const { return m_applicationVersionHasBeenSet; } /** *

The version of the robot application.

*/ inline void SetApplicationVersion(const Aws::String& value) { m_applicationVersionHasBeenSet = true; m_applicationVersion = value; } /** *

The version of the robot application.

*/ inline void SetApplicationVersion(Aws::String&& value) { m_applicationVersionHasBeenSet = true; m_applicationVersion = std::move(value); } /** *

The version of the robot application.

*/ inline void SetApplicationVersion(const char* value) { m_applicationVersionHasBeenSet = true; m_applicationVersion.assign(value); } /** *

The version of the robot application.

*/ inline RobotApplicationConfig& WithApplicationVersion(const Aws::String& value) { SetApplicationVersion(value); return *this;} /** *

The version of the robot application.

*/ inline RobotApplicationConfig& WithApplicationVersion(Aws::String&& value) { SetApplicationVersion(std::move(value)); return *this;} /** *

The version of the robot application.

*/ inline RobotApplicationConfig& WithApplicationVersion(const char* value) { SetApplicationVersion(value); return *this;} /** *

The launch configuration for the robot application.

*/ inline const LaunchConfig& GetLaunchConfig() const{ return m_launchConfig; } /** *

The launch configuration for the robot application.

*/ inline bool LaunchConfigHasBeenSet() const { return m_launchConfigHasBeenSet; } /** *

The launch configuration for the robot application.

*/ inline void SetLaunchConfig(const LaunchConfig& value) { m_launchConfigHasBeenSet = true; m_launchConfig = value; } /** *

The launch configuration for the robot application.

*/ inline void SetLaunchConfig(LaunchConfig&& value) { m_launchConfigHasBeenSet = true; m_launchConfig = std::move(value); } /** *

The launch configuration for the robot application.

*/ inline RobotApplicationConfig& WithLaunchConfig(const LaunchConfig& value) { SetLaunchConfig(value); return *this;} /** *

The launch configuration for the robot application.

*/ inline RobotApplicationConfig& WithLaunchConfig(LaunchConfig&& value) { SetLaunchConfig(std::move(value)); return *this;} private: Aws::String m_application; bool m_applicationHasBeenSet; Aws::String m_applicationVersion; bool m_applicationVersionHasBeenSet; LaunchConfig m_launchConfig; bool m_launchConfigHasBeenSet; }; } // namespace Model } // namespace RoboMaker } // namespace Aws