/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include namespace Aws { namespace Panorama { namespace Model { /** */ class CreateJobForDevicesRequest : public PanoramaRequest { public: AWS_PANORAMA_API CreateJobForDevicesRequest(); // 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 "CreateJobForDevices"; } AWS_PANORAMA_API Aws::String SerializePayload() const override; /** *

ID of target device.

*/ inline const Aws::Vector& GetDeviceIds() const{ return m_deviceIds; } /** *

ID of target device.

*/ inline bool DeviceIdsHasBeenSet() const { return m_deviceIdsHasBeenSet; } /** *

ID of target device.

*/ inline void SetDeviceIds(const Aws::Vector& value) { m_deviceIdsHasBeenSet = true; m_deviceIds = value; } /** *

ID of target device.

*/ inline void SetDeviceIds(Aws::Vector&& value) { m_deviceIdsHasBeenSet = true; m_deviceIds = std::move(value); } /** *

ID of target device.

*/ inline CreateJobForDevicesRequest& WithDeviceIds(const Aws::Vector& value) { SetDeviceIds(value); return *this;} /** *

ID of target device.

*/ inline CreateJobForDevicesRequest& WithDeviceIds(Aws::Vector&& value) { SetDeviceIds(std::move(value)); return *this;} /** *

ID of target device.

*/ inline CreateJobForDevicesRequest& AddDeviceIds(const Aws::String& value) { m_deviceIdsHasBeenSet = true; m_deviceIds.push_back(value); return *this; } /** *

ID of target device.

*/ inline CreateJobForDevicesRequest& AddDeviceIds(Aws::String&& value) { m_deviceIdsHasBeenSet = true; m_deviceIds.push_back(std::move(value)); return *this; } /** *

ID of target device.

*/ inline CreateJobForDevicesRequest& AddDeviceIds(const char* value) { m_deviceIdsHasBeenSet = true; m_deviceIds.push_back(value); return *this; } /** *

Configuration settings for a software update job.

*/ inline const DeviceJobConfig& GetDeviceJobConfig() const{ return m_deviceJobConfig; } /** *

Configuration settings for a software update job.

*/ inline bool DeviceJobConfigHasBeenSet() const { return m_deviceJobConfigHasBeenSet; } /** *

Configuration settings for a software update job.

*/ inline void SetDeviceJobConfig(const DeviceJobConfig& value) { m_deviceJobConfigHasBeenSet = true; m_deviceJobConfig = value; } /** *

Configuration settings for a software update job.

*/ inline void SetDeviceJobConfig(DeviceJobConfig&& value) { m_deviceJobConfigHasBeenSet = true; m_deviceJobConfig = std::move(value); } /** *

Configuration settings for a software update job.

*/ inline CreateJobForDevicesRequest& WithDeviceJobConfig(const DeviceJobConfig& value) { SetDeviceJobConfig(value); return *this;} /** *

Configuration settings for a software update job.

*/ inline CreateJobForDevicesRequest& WithDeviceJobConfig(DeviceJobConfig&& value) { SetDeviceJobConfig(std::move(value)); return *this;} /** *

The type of job to run.

*/ inline const JobType& GetJobType() const{ return m_jobType; } /** *

The type of job to run.

*/ inline bool JobTypeHasBeenSet() const { return m_jobTypeHasBeenSet; } /** *

The type of job to run.

*/ inline void SetJobType(const JobType& value) { m_jobTypeHasBeenSet = true; m_jobType = value; } /** *

The type of job to run.

*/ inline void SetJobType(JobType&& value) { m_jobTypeHasBeenSet = true; m_jobType = std::move(value); } /** *

The type of job to run.

*/ inline CreateJobForDevicesRequest& WithJobType(const JobType& value) { SetJobType(value); return *this;} /** *

The type of job to run.

*/ inline CreateJobForDevicesRequest& WithJobType(JobType&& value) { SetJobType(std::move(value)); return *this;} private: Aws::Vector m_deviceIds; bool m_deviceIdsHasBeenSet = false; DeviceJobConfig m_deviceJobConfig; bool m_deviceJobConfigHasBeenSet = false; JobType m_jobType; bool m_jobTypeHasBeenSet = false; }; } // namespace Model } // namespace Panorama } // namespace Aws