/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Information about a robot.See Also:
AWS API
* Reference
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