/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Represents a device type that an app is tested against.See
* Also:
AWS
* API Reference
The device's ARN.
*/ inline const Aws::String& GetArn() const{ return m_arn; } /** *The device's ARN.
*/ inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; } /** *The device's ARN.
*/ inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; } /** *The device's ARN.
*/ inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = std::move(value); } /** *The device's ARN.
*/ inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); } /** *The device's ARN.
*/ inline Device& WithArn(const Aws::String& value) { SetArn(value); return *this;} /** *The device's ARN.
*/ inline Device& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;} /** *The device's ARN.
*/ inline Device& WithArn(const char* value) { SetArn(value); return *this;} /** *The device's display name.
*/ inline const Aws::String& GetName() const{ return m_name; } /** *The device's display name.
*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *The device's display name.
*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *The device's display name.
*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *The device's display name.
*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *The device's display name.
*/ inline Device& WithName(const Aws::String& value) { SetName(value); return *this;} /** *The device's display name.
*/ inline Device& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *The device's display name.
*/ inline Device& WithName(const char* value) { SetName(value); return *this;} /** *The device's manufacturer name.
*/ inline const Aws::String& GetManufacturer() const{ return m_manufacturer; } /** *The device's manufacturer name.
*/ inline bool ManufacturerHasBeenSet() const { return m_manufacturerHasBeenSet; } /** *The device's manufacturer name.
*/ inline void SetManufacturer(const Aws::String& value) { m_manufacturerHasBeenSet = true; m_manufacturer = value; } /** *The device's manufacturer name.
*/ inline void SetManufacturer(Aws::String&& value) { m_manufacturerHasBeenSet = true; m_manufacturer = std::move(value); } /** *The device's manufacturer name.
*/ inline void SetManufacturer(const char* value) { m_manufacturerHasBeenSet = true; m_manufacturer.assign(value); } /** *The device's manufacturer name.
*/ inline Device& WithManufacturer(const Aws::String& value) { SetManufacturer(value); return *this;} /** *The device's manufacturer name.
*/ inline Device& WithManufacturer(Aws::String&& value) { SetManufacturer(std::move(value)); return *this;} /** *The device's manufacturer name.
*/ inline Device& WithManufacturer(const char* value) { SetManufacturer(value); return *this;} /** *The device's model name.
*/ inline const Aws::String& GetModel() const{ return m_model; } /** *The device's model name.
*/ inline bool ModelHasBeenSet() const { return m_modelHasBeenSet; } /** *The device's model name.
*/ inline void SetModel(const Aws::String& value) { m_modelHasBeenSet = true; m_model = value; } /** *The device's model name.
*/ inline void SetModel(Aws::String&& value) { m_modelHasBeenSet = true; m_model = std::move(value); } /** *The device's model name.
*/ inline void SetModel(const char* value) { m_modelHasBeenSet = true; m_model.assign(value); } /** *The device's model name.
*/ inline Device& WithModel(const Aws::String& value) { SetModel(value); return *this;} /** *The device's model name.
*/ inline Device& WithModel(Aws::String&& value) { SetModel(std::move(value)); return *this;} /** *The device's model name.
*/ inline Device& WithModel(const char* value) { SetModel(value); return *this;} /** *The device's model ID.
*/ inline const Aws::String& GetModelId() const{ return m_modelId; } /** *The device's model ID.
*/ inline bool ModelIdHasBeenSet() const { return m_modelIdHasBeenSet; } /** *The device's model ID.
*/ inline void SetModelId(const Aws::String& value) { m_modelIdHasBeenSet = true; m_modelId = value; } /** *The device's model ID.
*/ inline void SetModelId(Aws::String&& value) { m_modelIdHasBeenSet = true; m_modelId = std::move(value); } /** *The device's model ID.
*/ inline void SetModelId(const char* value) { m_modelIdHasBeenSet = true; m_modelId.assign(value); } /** *The device's model ID.
*/ inline Device& WithModelId(const Aws::String& value) { SetModelId(value); return *this;} /** *The device's model ID.
*/ inline Device& WithModelId(Aws::String&& value) { SetModelId(std::move(value)); return *this;} /** *The device's model ID.
*/ inline Device& WithModelId(const char* value) { SetModelId(value); return *this;} /** *The device's form factor.
Allowed values include:
PHONE
TABLET
The device's form factor.
Allowed values include:
PHONE
TABLET
The device's form factor.
Allowed values include:
PHONE
TABLET
The device's form factor.
Allowed values include:
PHONE
TABLET
The device's form factor.
Allowed values include:
PHONE
TABLET
The device's form factor.
Allowed values include:
PHONE
TABLET
The device's platform.
Allowed values include:
ANDROID
IOS
The device's platform.
Allowed values include:
ANDROID
IOS
The device's platform.
Allowed values include:
ANDROID
IOS
The device's platform.
Allowed values include:
ANDROID
IOS
The device's platform.
Allowed values include:
ANDROID
IOS
The device's platform.
Allowed values include:
ANDROID
IOS
The device's operating system type.
*/ inline const Aws::String& GetOs() const{ return m_os; } /** *The device's operating system type.
*/ inline bool OsHasBeenSet() const { return m_osHasBeenSet; } /** *The device's operating system type.
*/ inline void SetOs(const Aws::String& value) { m_osHasBeenSet = true; m_os = value; } /** *The device's operating system type.
*/ inline void SetOs(Aws::String&& value) { m_osHasBeenSet = true; m_os = std::move(value); } /** *The device's operating system type.
*/ inline void SetOs(const char* value) { m_osHasBeenSet = true; m_os.assign(value); } /** *The device's operating system type.
*/ inline Device& WithOs(const Aws::String& value) { SetOs(value); return *this;} /** *The device's operating system type.
*/ inline Device& WithOs(Aws::String&& value) { SetOs(std::move(value)); return *this;} /** *The device's operating system type.
*/ inline Device& WithOs(const char* value) { SetOs(value); return *this;} /** *Information about the device's CPU.
*/ inline const CPU& GetCpu() const{ return m_cpu; } /** *Information about the device's CPU.
*/ inline bool CpuHasBeenSet() const { return m_cpuHasBeenSet; } /** *Information about the device's CPU.
*/ inline void SetCpu(const CPU& value) { m_cpuHasBeenSet = true; m_cpu = value; } /** *Information about the device's CPU.
*/ inline void SetCpu(CPU&& value) { m_cpuHasBeenSet = true; m_cpu = std::move(value); } /** *Information about the device's CPU.
*/ inline Device& WithCpu(const CPU& value) { SetCpu(value); return *this;} /** *Information about the device's CPU.
*/ inline Device& WithCpu(CPU&& value) { SetCpu(std::move(value)); return *this;} /** *The resolution of the device.
*/ inline const Resolution& GetResolution() const{ return m_resolution; } /** *The resolution of the device.
*/ inline bool ResolutionHasBeenSet() const { return m_resolutionHasBeenSet; } /** *The resolution of the device.
*/ inline void SetResolution(const Resolution& value) { m_resolutionHasBeenSet = true; m_resolution = value; } /** *The resolution of the device.
*/ inline void SetResolution(Resolution&& value) { m_resolutionHasBeenSet = true; m_resolution = std::move(value); } /** *The resolution of the device.
*/ inline Device& WithResolution(const Resolution& value) { SetResolution(value); return *this;} /** *The resolution of the device.
*/ inline Device& WithResolution(Resolution&& value) { SetResolution(std::move(value)); return *this;} /** *The device's heap size, expressed in bytes.
*/ inline long long GetHeapSize() const{ return m_heapSize; } /** *The device's heap size, expressed in bytes.
*/ inline bool HeapSizeHasBeenSet() const { return m_heapSizeHasBeenSet; } /** *The device's heap size, expressed in bytes.
*/ inline void SetHeapSize(long long value) { m_heapSizeHasBeenSet = true; m_heapSize = value; } /** *The device's heap size, expressed in bytes.
*/ inline Device& WithHeapSize(long long value) { SetHeapSize(value); return *this;} /** *The device's total memory size, expressed in bytes.
*/ inline long long GetMemory() const{ return m_memory; } /** *The device's total memory size, expressed in bytes.
*/ inline bool MemoryHasBeenSet() const { return m_memoryHasBeenSet; } /** *The device's total memory size, expressed in bytes.
*/ inline void SetMemory(long long value) { m_memoryHasBeenSet = true; m_memory = value; } /** *The device's total memory size, expressed in bytes.
*/ inline Device& WithMemory(long long value) { SetMemory(value); return *this;} /** *The device's image name.
*/ inline const Aws::String& GetImage() const{ return m_image; } /** *The device's image name.
*/ inline bool ImageHasBeenSet() const { return m_imageHasBeenSet; } /** *The device's image name.
*/ inline void SetImage(const Aws::String& value) { m_imageHasBeenSet = true; m_image = value; } /** *The device's image name.
*/ inline void SetImage(Aws::String&& value) { m_imageHasBeenSet = true; m_image = std::move(value); } /** *The device's image name.
*/ inline void SetImage(const char* value) { m_imageHasBeenSet = true; m_image.assign(value); } /** *The device's image name.
*/ inline Device& WithImage(const Aws::String& value) { SetImage(value); return *this;} /** *The device's image name.
*/ inline Device& WithImage(Aws::String&& value) { SetImage(std::move(value)); return *this;} /** *The device's image name.
*/ inline Device& WithImage(const char* value) { SetImage(value); return *this;} /** *The device's carrier.
*/ inline const Aws::String& GetCarrier() const{ return m_carrier; } /** *The device's carrier.
*/ inline bool CarrierHasBeenSet() const { return m_carrierHasBeenSet; } /** *The device's carrier.
*/ inline void SetCarrier(const Aws::String& value) { m_carrierHasBeenSet = true; m_carrier = value; } /** *The device's carrier.
*/ inline void SetCarrier(Aws::String&& value) { m_carrierHasBeenSet = true; m_carrier = std::move(value); } /** *The device's carrier.
*/ inline void SetCarrier(const char* value) { m_carrierHasBeenSet = true; m_carrier.assign(value); } /** *The device's carrier.
*/ inline Device& WithCarrier(const Aws::String& value) { SetCarrier(value); return *this;} /** *The device's carrier.
*/ inline Device& WithCarrier(Aws::String&& value) { SetCarrier(std::move(value)); return *this;} /** *The device's carrier.
*/ inline Device& WithCarrier(const char* value) { SetCarrier(value); return *this;} /** *The device's radio.
*/ inline const Aws::String& GetRadio() const{ return m_radio; } /** *The device's radio.
*/ inline bool RadioHasBeenSet() const { return m_radioHasBeenSet; } /** *The device's radio.
*/ inline void SetRadio(const Aws::String& value) { m_radioHasBeenSet = true; m_radio = value; } /** *The device's radio.
*/ inline void SetRadio(Aws::String&& value) { m_radioHasBeenSet = true; m_radio = std::move(value); } /** *The device's radio.
*/ inline void SetRadio(const char* value) { m_radioHasBeenSet = true; m_radio.assign(value); } /** *The device's radio.
*/ inline Device& WithRadio(const Aws::String& value) { SetRadio(value); return *this;} /** *The device's radio.
*/ inline Device& WithRadio(Aws::String&& value) { SetRadio(std::move(value)); return *this;} /** *The device's radio.
*/ inline Device& WithRadio(const char* value) { SetRadio(value); return *this;} /** *Specifies whether remote access has been enabled for the specified * device.
*/ inline bool GetRemoteAccessEnabled() const{ return m_remoteAccessEnabled; } /** *Specifies whether remote access has been enabled for the specified * device.
*/ inline bool RemoteAccessEnabledHasBeenSet() const { return m_remoteAccessEnabledHasBeenSet; } /** *Specifies whether remote access has been enabled for the specified * device.
*/ inline void SetRemoteAccessEnabled(bool value) { m_remoteAccessEnabledHasBeenSet = true; m_remoteAccessEnabled = value; } /** *Specifies whether remote access has been enabled for the specified * device.
*/ inline Device& WithRemoteAccessEnabled(bool value) { SetRemoteAccessEnabled(value); return *this;} /** *This flag is set to true
if remote debugging is enabled for the
* device.
Remote debugging is no * longer supported.
*/ inline bool GetRemoteDebugEnabled() const{ return m_remoteDebugEnabled; } /** *This flag is set to true
if remote debugging is enabled for the
* device.
Remote debugging is no * longer supported.
*/ inline bool RemoteDebugEnabledHasBeenSet() const { return m_remoteDebugEnabledHasBeenSet; } /** *This flag is set to true
if remote debugging is enabled for the
* device.
Remote debugging is no * longer supported.
*/ inline void SetRemoteDebugEnabled(bool value) { m_remoteDebugEnabledHasBeenSet = true; m_remoteDebugEnabled = value; } /** *This flag is set to true
if remote debugging is enabled for the
* device.
Remote debugging is no * longer supported.
*/ inline Device& WithRemoteDebugEnabled(bool value) { SetRemoteDebugEnabled(value); return *this;} /** *The type of fleet to which this device belongs. Possible values are PRIVATE * and PUBLIC.
*/ inline const Aws::String& GetFleetType() const{ return m_fleetType; } /** *The type of fleet to which this device belongs. Possible values are PRIVATE * and PUBLIC.
*/ inline bool FleetTypeHasBeenSet() const { return m_fleetTypeHasBeenSet; } /** *The type of fleet to which this device belongs. Possible values are PRIVATE * and PUBLIC.
*/ inline void SetFleetType(const Aws::String& value) { m_fleetTypeHasBeenSet = true; m_fleetType = value; } /** *The type of fleet to which this device belongs. Possible values are PRIVATE * and PUBLIC.
*/ inline void SetFleetType(Aws::String&& value) { m_fleetTypeHasBeenSet = true; m_fleetType = std::move(value); } /** *The type of fleet to which this device belongs. Possible values are PRIVATE * and PUBLIC.
*/ inline void SetFleetType(const char* value) { m_fleetTypeHasBeenSet = true; m_fleetType.assign(value); } /** *The type of fleet to which this device belongs. Possible values are PRIVATE * and PUBLIC.
*/ inline Device& WithFleetType(const Aws::String& value) { SetFleetType(value); return *this;} /** *The type of fleet to which this device belongs. Possible values are PRIVATE * and PUBLIC.
*/ inline Device& WithFleetType(Aws::String&& value) { SetFleetType(std::move(value)); return *this;} /** *The type of fleet to which this device belongs. Possible values are PRIVATE * and PUBLIC.
*/ inline Device& WithFleetType(const char* value) { SetFleetType(value); return *this;} /** *The name of the fleet to which this device belongs.
*/ inline const Aws::String& GetFleetName() const{ return m_fleetName; } /** *The name of the fleet to which this device belongs.
*/ inline bool FleetNameHasBeenSet() const { return m_fleetNameHasBeenSet; } /** *The name of the fleet to which this device belongs.
*/ inline void SetFleetName(const Aws::String& value) { m_fleetNameHasBeenSet = true; m_fleetName = value; } /** *The name of the fleet to which this device belongs.
*/ inline void SetFleetName(Aws::String&& value) { m_fleetNameHasBeenSet = true; m_fleetName = std::move(value); } /** *The name of the fleet to which this device belongs.
*/ inline void SetFleetName(const char* value) { m_fleetNameHasBeenSet = true; m_fleetName.assign(value); } /** *The name of the fleet to which this device belongs.
*/ inline Device& WithFleetName(const Aws::String& value) { SetFleetName(value); return *this;} /** *The name of the fleet to which this device belongs.
*/ inline Device& WithFleetName(Aws::String&& value) { SetFleetName(std::move(value)); return *this;} /** *The name of the fleet to which this device belongs.
*/ inline Device& WithFleetName(const char* value) { SetFleetName(value); return *this;} /** *The instances that belong to this device.
*/ inline const Aws::VectorThe instances that belong to this device.
*/ inline bool InstancesHasBeenSet() const { return m_instancesHasBeenSet; } /** *The instances that belong to this device.
*/ inline void SetInstances(const Aws::VectorThe instances that belong to this device.
*/ inline void SetInstances(Aws::VectorThe instances that belong to this device.
*/ inline Device& WithInstances(const Aws::VectorThe instances that belong to this device.
*/ inline Device& WithInstances(Aws::VectorThe instances that belong to this device.
*/ inline Device& AddInstances(const DeviceInstance& value) { m_instancesHasBeenSet = true; m_instances.push_back(value); return *this; } /** *The instances that belong to this device.
*/ inline Device& AddInstances(DeviceInstance&& value) { m_instancesHasBeenSet = true; m_instances.push_back(std::move(value)); return *this; } /** *Indicates how likely a device is available for a test run. Currently * available in the ListDevices and GetDevice API methods.
*/ inline const DeviceAvailability& GetAvailability() const{ return m_availability; } /** *Indicates how likely a device is available for a test run. Currently * available in the ListDevices and GetDevice API methods.
*/ inline bool AvailabilityHasBeenSet() const { return m_availabilityHasBeenSet; } /** *Indicates how likely a device is available for a test run. Currently * available in the ListDevices and GetDevice API methods.
*/ inline void SetAvailability(const DeviceAvailability& value) { m_availabilityHasBeenSet = true; m_availability = value; } /** *Indicates how likely a device is available for a test run. Currently * available in the ListDevices and GetDevice API methods.
*/ inline void SetAvailability(DeviceAvailability&& value) { m_availabilityHasBeenSet = true; m_availability = std::move(value); } /** *Indicates how likely a device is available for a test run. Currently * available in the ListDevices and GetDevice API methods.
*/ inline Device& WithAvailability(const DeviceAvailability& value) { SetAvailability(value); return *this;} /** *Indicates how likely a device is available for a test run. Currently * available in the ListDevices and GetDevice API methods.
*/ inline Device& WithAvailability(DeviceAvailability&& value) { SetAvailability(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_manufacturer; bool m_manufacturerHasBeenSet = false; Aws::String m_model; bool m_modelHasBeenSet = false; Aws::String m_modelId; bool m_modelIdHasBeenSet = false; DeviceFormFactor m_formFactor; bool m_formFactorHasBeenSet = false; DevicePlatform m_platform; bool m_platformHasBeenSet = false; Aws::String m_os; bool m_osHasBeenSet = false; CPU m_cpu; bool m_cpuHasBeenSet = false; Resolution m_resolution; bool m_resolutionHasBeenSet = false; long long m_heapSize; bool m_heapSizeHasBeenSet = false; long long m_memory; bool m_memoryHasBeenSet = false; Aws::String m_image; bool m_imageHasBeenSet = false; Aws::String m_carrier; bool m_carrierHasBeenSet = false; Aws::String m_radio; bool m_radioHasBeenSet = false; bool m_remoteAccessEnabled; bool m_remoteAccessEnabledHasBeenSet = false; bool m_remoteDebugEnabled; bool m_remoteDebugEnabledHasBeenSet = false; Aws::String m_fleetType; bool m_fleetTypeHasBeenSet = false; Aws::String m_fleetName; bool m_fleetNameHasBeenSet = false; Aws::Vector