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

Information about a robot.

See Also:

AWS API * Reference

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

The Amazon Resource Name (ARN) of the robot.

*/ inline const Aws::String& GetArn() const{ return m_arn; } /** *

The Amazon Resource Name (ARN) of the robot.

*/ inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the robot.

*/ inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; } /** *

The Amazon Resource Name (ARN) of the robot.

*/ inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the robot.

*/ inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); } /** *

The Amazon Resource Name (ARN) of the robot.

*/ inline Robot& WithArn(const Aws::String& value) { SetArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the robot.

*/ inline Robot& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the robot.

*/ inline Robot& WithArn(const char* value) { SetArn(value); return *this;} /** *

The name of the robot.

*/ inline const Aws::String& GetName() const{ return m_name; } /** *

The name of the robot.

*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *

The name of the robot.

*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *

The name of the robot.

*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *

The name of the robot.

*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *

The name of the robot.

*/ inline Robot& WithName(const Aws::String& value) { SetName(value); return *this;} /** *

The name of the robot.

*/ inline Robot& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *

The name of the robot.

*/ inline Robot& WithName(const char* value) { SetName(value); return *this;} /** *

The Amazon Resource Name (ARN) of the fleet.

*/ inline const Aws::String& GetFleetArn() const{ return m_fleetArn; } /** *

The Amazon Resource Name (ARN) of the fleet.

*/ inline bool FleetArnHasBeenSet() const { return m_fleetArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the fleet.

*/ inline void SetFleetArn(const Aws::String& value) { m_fleetArnHasBeenSet = true; m_fleetArn = value; } /** *

The Amazon Resource Name (ARN) of the fleet.

*/ inline void SetFleetArn(Aws::String&& value) { m_fleetArnHasBeenSet = true; m_fleetArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the fleet.

*/ inline void SetFleetArn(const char* value) { m_fleetArnHasBeenSet = true; m_fleetArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the fleet.

*/ inline Robot& WithFleetArn(const Aws::String& value) { SetFleetArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the fleet.

*/ inline Robot& WithFleetArn(Aws::String&& value) { SetFleetArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the fleet.

*/ inline Robot& WithFleetArn(const char* value) { SetFleetArn(value); return *this;} /** *

The status of the robot.

*/ inline const RobotStatus& GetStatus() const{ return m_status; } /** *

The status of the robot.

*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *

The status of the robot.

*/ inline void SetStatus(const RobotStatus& value) { m_statusHasBeenSet = true; m_status = value; } /** *

The status of the robot.

*/ inline void SetStatus(RobotStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } /** *

The status of the robot.

*/ inline Robot& WithStatus(const RobotStatus& value) { SetStatus(value); return *this;} /** *

The status of the robot.

*/ inline Robot& WithStatus(RobotStatus&& value) { SetStatus(std::move(value)); return *this;} /** *

The Greengrass group associated with the robot.

*/ inline const Aws::String& GetGreenGrassGroupId() const{ return m_greenGrassGroupId; } /** *

The Greengrass group associated with the robot.

*/ inline bool GreenGrassGroupIdHasBeenSet() const { return m_greenGrassGroupIdHasBeenSet; } /** *

The Greengrass group associated with the robot.

*/ inline void SetGreenGrassGroupId(const Aws::String& value) { m_greenGrassGroupIdHasBeenSet = true; m_greenGrassGroupId = value; } /** *

The Greengrass group associated with the robot.

*/ inline void SetGreenGrassGroupId(Aws::String&& value) { m_greenGrassGroupIdHasBeenSet = true; m_greenGrassGroupId = std::move(value); } /** *

The Greengrass group associated with the robot.

*/ inline void SetGreenGrassGroupId(const char* value) { m_greenGrassGroupIdHasBeenSet = true; m_greenGrassGroupId.assign(value); } /** *

The Greengrass group associated with the robot.

*/ inline Robot& WithGreenGrassGroupId(const Aws::String& value) { SetGreenGrassGroupId(value); return *this;} /** *

The Greengrass group associated with the robot.

*/ inline Robot& WithGreenGrassGroupId(Aws::String&& value) { SetGreenGrassGroupId(std::move(value)); return *this;} /** *

The Greengrass group associated with the robot.

*/ inline Robot& WithGreenGrassGroupId(const char* value) { SetGreenGrassGroupId(value); return *this;} /** *

The time, in milliseconds since the epoch, when the robot was created.

*/ inline const Aws::Utils::DateTime& GetCreatedAt() const{ return m_createdAt; } /** *

The time, in milliseconds since the epoch, when the robot was created.

*/ inline bool CreatedAtHasBeenSet() const { return m_createdAtHasBeenSet; } /** *

The time, in milliseconds since the epoch, when the robot was created.

*/ inline void SetCreatedAt(const Aws::Utils::DateTime& value) { m_createdAtHasBeenSet = true; m_createdAt = value; } /** *

The time, in milliseconds since the epoch, when the robot was created.

*/ inline void SetCreatedAt(Aws::Utils::DateTime&& value) { m_createdAtHasBeenSet = true; m_createdAt = std::move(value); } /** *

The time, in milliseconds since the epoch, when the robot was created.

*/ inline Robot& WithCreatedAt(const Aws::Utils::DateTime& value) { SetCreatedAt(value); return *this;} /** *

The time, in milliseconds since the epoch, when the robot was created.

*/ inline Robot& WithCreatedAt(Aws::Utils::DateTime&& value) { SetCreatedAt(std::move(value)); return *this;} /** *

The architecture of the robot.

*/ inline const Architecture& GetArchitecture() const{ return m_architecture; } /** *

The architecture of the robot.

*/ inline bool ArchitectureHasBeenSet() const { return m_architectureHasBeenSet; } /** *

The architecture of the robot.

*/ inline void SetArchitecture(const Architecture& value) { m_architectureHasBeenSet = true; m_architecture = value; } /** *

The architecture of the robot.

*/ inline void SetArchitecture(Architecture&& value) { m_architectureHasBeenSet = true; m_architecture = std::move(value); } /** *

The architecture of the robot.

*/ inline Robot& WithArchitecture(const Architecture& value) { SetArchitecture(value); return *this;} /** *

The architecture of the robot.

*/ inline Robot& WithArchitecture(Architecture&& value) { SetArchitecture(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the last deployment job.

*/ inline const Aws::String& GetLastDeploymentJob() const{ return m_lastDeploymentJob; } /** *

The Amazon Resource Name (ARN) of the last deployment job.

*/ inline bool LastDeploymentJobHasBeenSet() const { return m_lastDeploymentJobHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the last deployment job.

*/ inline void SetLastDeploymentJob(const Aws::String& value) { m_lastDeploymentJobHasBeenSet = true; m_lastDeploymentJob = value; } /** *

The Amazon Resource Name (ARN) of the last deployment job.

*/ inline void SetLastDeploymentJob(Aws::String&& value) { m_lastDeploymentJobHasBeenSet = true; m_lastDeploymentJob = std::move(value); } /** *

The Amazon Resource Name (ARN) of the last deployment job.

*/ inline void SetLastDeploymentJob(const char* value) { m_lastDeploymentJobHasBeenSet = true; m_lastDeploymentJob.assign(value); } /** *

The Amazon Resource Name (ARN) of the last deployment job.

*/ inline Robot& WithLastDeploymentJob(const Aws::String& value) { SetLastDeploymentJob(value); return *this;} /** *

The Amazon Resource Name (ARN) of the last deployment job.

*/ inline Robot& WithLastDeploymentJob(Aws::String&& value) { SetLastDeploymentJob(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the last deployment job.

*/ inline Robot& WithLastDeploymentJob(const char* value) { SetLastDeploymentJob(value); return *this;} /** *

The time of the last deployment.

*/ inline const Aws::Utils::DateTime& GetLastDeploymentTime() const{ return m_lastDeploymentTime; } /** *

The time of the last deployment.

*/ inline bool LastDeploymentTimeHasBeenSet() const { return m_lastDeploymentTimeHasBeenSet; } /** *

The time of the last deployment.

*/ inline void SetLastDeploymentTime(const Aws::Utils::DateTime& value) { m_lastDeploymentTimeHasBeenSet = true; m_lastDeploymentTime = value; } /** *

The time of the last deployment.

*/ inline void SetLastDeploymentTime(Aws::Utils::DateTime&& value) { m_lastDeploymentTimeHasBeenSet = true; m_lastDeploymentTime = std::move(value); } /** *

The time of the last deployment.

*/ inline Robot& WithLastDeploymentTime(const Aws::Utils::DateTime& value) { SetLastDeploymentTime(value); return *this;} /** *

The time of the last deployment.

*/ inline Robot& WithLastDeploymentTime(Aws::Utils::DateTime&& value) { SetLastDeploymentTime(std::move(value)); return *this;} private: Aws::String m_arn; bool m_arnHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; Aws::String m_fleetArn; bool m_fleetArnHasBeenSet = false; RobotStatus m_status; bool m_statusHasBeenSet = false; Aws::String m_greenGrassGroupId; bool m_greenGrassGroupIdHasBeenSet = false; Aws::Utils::DateTime m_createdAt; bool m_createdAtHasBeenSet = false; Architecture m_architecture; bool m_architectureHasBeenSet = false; Aws::String m_lastDeploymentJob; bool m_lastDeploymentJobHasBeenSet = false; Aws::Utils::DateTime m_lastDeploymentTime; bool m_lastDeploymentTimeHasBeenSet = false; }; } // namespace Model } // namespace RoboMaker } // namespace Aws