/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Gets the suite definition configuration.See Also:
AWS
* API Reference
Gets the suite definition name. This is a required parameter.
*/ inline const Aws::String& GetSuiteDefinitionName() const{ return m_suiteDefinitionName; } /** *Gets the suite definition name. This is a required parameter.
*/ inline bool SuiteDefinitionNameHasBeenSet() const { return m_suiteDefinitionNameHasBeenSet; } /** *Gets the suite definition name. This is a required parameter.
*/ inline void SetSuiteDefinitionName(const Aws::String& value) { m_suiteDefinitionNameHasBeenSet = true; m_suiteDefinitionName = value; } /** *Gets the suite definition name. This is a required parameter.
*/ inline void SetSuiteDefinitionName(Aws::String&& value) { m_suiteDefinitionNameHasBeenSet = true; m_suiteDefinitionName = std::move(value); } /** *Gets the suite definition name. This is a required parameter.
*/ inline void SetSuiteDefinitionName(const char* value) { m_suiteDefinitionNameHasBeenSet = true; m_suiteDefinitionName.assign(value); } /** *Gets the suite definition name. This is a required parameter.
*/ inline SuiteDefinitionConfiguration& WithSuiteDefinitionName(const Aws::String& value) { SetSuiteDefinitionName(value); return *this;} /** *Gets the suite definition name. This is a required parameter.
*/ inline SuiteDefinitionConfiguration& WithSuiteDefinitionName(Aws::String&& value) { SetSuiteDefinitionName(std::move(value)); return *this;} /** *Gets the suite definition name. This is a required parameter.
*/ inline SuiteDefinitionConfiguration& WithSuiteDefinitionName(const char* value) { SetSuiteDefinitionName(value); return *this;} /** *Gets the devices configured.
*/ inline const Aws::VectorGets the devices configured.
*/ inline bool DevicesHasBeenSet() const { return m_devicesHasBeenSet; } /** *Gets the devices configured.
*/ inline void SetDevices(const Aws::VectorGets the devices configured.
*/ inline void SetDevices(Aws::VectorGets the devices configured.
*/ inline SuiteDefinitionConfiguration& WithDevices(const Aws::VectorGets the devices configured.
*/ inline SuiteDefinitionConfiguration& WithDevices(Aws::VectorGets the devices configured.
*/ inline SuiteDefinitionConfiguration& AddDevices(const DeviceUnderTest& value) { m_devicesHasBeenSet = true; m_devices.push_back(value); return *this; } /** *Gets the devices configured.
*/ inline SuiteDefinitionConfiguration& AddDevices(DeviceUnderTest&& value) { m_devicesHasBeenSet = true; m_devices.push_back(std::move(value)); return *this; } /** *Gets the tests intended for qualification in a suite.
*/ inline bool GetIntendedForQualification() const{ return m_intendedForQualification; } /** *Gets the tests intended for qualification in a suite.
*/ inline bool IntendedForQualificationHasBeenSet() const { return m_intendedForQualificationHasBeenSet; } /** *Gets the tests intended for qualification in a suite.
*/ inline void SetIntendedForQualification(bool value) { m_intendedForQualificationHasBeenSet = true; m_intendedForQualification = value; } /** *Gets the tests intended for qualification in a suite.
*/ inline SuiteDefinitionConfiguration& WithIntendedForQualification(bool value) { SetIntendedForQualification(value); return *this;} /** *Verifies if the test suite is a long duration test.
*/ inline bool GetIsLongDurationTest() const{ return m_isLongDurationTest; } /** *Verifies if the test suite is a long duration test.
*/ inline bool IsLongDurationTestHasBeenSet() const { return m_isLongDurationTestHasBeenSet; } /** *Verifies if the test suite is a long duration test.
*/ inline void SetIsLongDurationTest(bool value) { m_isLongDurationTestHasBeenSet = true; m_isLongDurationTest = value; } /** *Verifies if the test suite is a long duration test.
*/ inline SuiteDefinitionConfiguration& WithIsLongDurationTest(bool value) { SetIsLongDurationTest(value); return *this;} /** *Gets the test suite root group. This is a required parameter. For updating or
* creating the latest qualification suite, if
* intendedForQualification
is set to true, rootGroup
can
* be an empty string. If intendedForQualification
is false,
* rootGroup
cannot be an empty string. If rootGroup
is
* empty, and intendedForQualification
is set to true, all the
* qualification tests are included, and the configuration is default.
For * a qualification suite, the minimum length is 0, and the maximum is 2048. For a * non-qualification suite, the minimum length is 1, and the maximum is 2048.
*/ inline const Aws::String& GetRootGroup() const{ return m_rootGroup; } /** *Gets the test suite root group. This is a required parameter. For updating or
* creating the latest qualification suite, if
* intendedForQualification
is set to true, rootGroup
can
* be an empty string. If intendedForQualification
is false,
* rootGroup
cannot be an empty string. If rootGroup
is
* empty, and intendedForQualification
is set to true, all the
* qualification tests are included, and the configuration is default.
For * a qualification suite, the minimum length is 0, and the maximum is 2048. For a * non-qualification suite, the minimum length is 1, and the maximum is 2048.
*/ inline bool RootGroupHasBeenSet() const { return m_rootGroupHasBeenSet; } /** *Gets the test suite root group. This is a required parameter. For updating or
* creating the latest qualification suite, if
* intendedForQualification
is set to true, rootGroup
can
* be an empty string. If intendedForQualification
is false,
* rootGroup
cannot be an empty string. If rootGroup
is
* empty, and intendedForQualification
is set to true, all the
* qualification tests are included, and the configuration is default.
For * a qualification suite, the minimum length is 0, and the maximum is 2048. For a * non-qualification suite, the minimum length is 1, and the maximum is 2048.
*/ inline void SetRootGroup(const Aws::String& value) { m_rootGroupHasBeenSet = true; m_rootGroup = value; } /** *Gets the test suite root group. This is a required parameter. For updating or
* creating the latest qualification suite, if
* intendedForQualification
is set to true, rootGroup
can
* be an empty string. If intendedForQualification
is false,
* rootGroup
cannot be an empty string. If rootGroup
is
* empty, and intendedForQualification
is set to true, all the
* qualification tests are included, and the configuration is default.
For * a qualification suite, the minimum length is 0, and the maximum is 2048. For a * non-qualification suite, the minimum length is 1, and the maximum is 2048.
*/ inline void SetRootGroup(Aws::String&& value) { m_rootGroupHasBeenSet = true; m_rootGroup = std::move(value); } /** *Gets the test suite root group. This is a required parameter. For updating or
* creating the latest qualification suite, if
* intendedForQualification
is set to true, rootGroup
can
* be an empty string. If intendedForQualification
is false,
* rootGroup
cannot be an empty string. If rootGroup
is
* empty, and intendedForQualification
is set to true, all the
* qualification tests are included, and the configuration is default.
For * a qualification suite, the minimum length is 0, and the maximum is 2048. For a * non-qualification suite, the minimum length is 1, and the maximum is 2048.
*/ inline void SetRootGroup(const char* value) { m_rootGroupHasBeenSet = true; m_rootGroup.assign(value); } /** *Gets the test suite root group. This is a required parameter. For updating or
* creating the latest qualification suite, if
* intendedForQualification
is set to true, rootGroup
can
* be an empty string. If intendedForQualification
is false,
* rootGroup
cannot be an empty string. If rootGroup
is
* empty, and intendedForQualification
is set to true, all the
* qualification tests are included, and the configuration is default.
For * a qualification suite, the minimum length is 0, and the maximum is 2048. For a * non-qualification suite, the minimum length is 1, and the maximum is 2048.
*/ inline SuiteDefinitionConfiguration& WithRootGroup(const Aws::String& value) { SetRootGroup(value); return *this;} /** *Gets the test suite root group. This is a required parameter. For updating or
* creating the latest qualification suite, if
* intendedForQualification
is set to true, rootGroup
can
* be an empty string. If intendedForQualification
is false,
* rootGroup
cannot be an empty string. If rootGroup
is
* empty, and intendedForQualification
is set to true, all the
* qualification tests are included, and the configuration is default.
For * a qualification suite, the minimum length is 0, and the maximum is 2048. For a * non-qualification suite, the minimum length is 1, and the maximum is 2048.
*/ inline SuiteDefinitionConfiguration& WithRootGroup(Aws::String&& value) { SetRootGroup(std::move(value)); return *this;} /** *Gets the test suite root group. This is a required parameter. For updating or
* creating the latest qualification suite, if
* intendedForQualification
is set to true, rootGroup
can
* be an empty string. If intendedForQualification
is false,
* rootGroup
cannot be an empty string. If rootGroup
is
* empty, and intendedForQualification
is set to true, all the
* qualification tests are included, and the configuration is default.
For * a qualification suite, the minimum length is 0, and the maximum is 2048. For a * non-qualification suite, the minimum length is 1, and the maximum is 2048.
*/ inline SuiteDefinitionConfiguration& WithRootGroup(const char* value) { SetRootGroup(value); return *this;} /** *Gets the device permission ARN. This is a required parameter.
*/ inline const Aws::String& GetDevicePermissionRoleArn() const{ return m_devicePermissionRoleArn; } /** *Gets the device permission ARN. This is a required parameter.
*/ inline bool DevicePermissionRoleArnHasBeenSet() const { return m_devicePermissionRoleArnHasBeenSet; } /** *Gets the device permission ARN. This is a required parameter.
*/ inline void SetDevicePermissionRoleArn(const Aws::String& value) { m_devicePermissionRoleArnHasBeenSet = true; m_devicePermissionRoleArn = value; } /** *Gets the device permission ARN. This is a required parameter.
*/ inline void SetDevicePermissionRoleArn(Aws::String&& value) { m_devicePermissionRoleArnHasBeenSet = true; m_devicePermissionRoleArn = std::move(value); } /** *Gets the device permission ARN. This is a required parameter.
*/ inline void SetDevicePermissionRoleArn(const char* value) { m_devicePermissionRoleArnHasBeenSet = true; m_devicePermissionRoleArn.assign(value); } /** *Gets the device permission ARN. This is a required parameter.
*/ inline SuiteDefinitionConfiguration& WithDevicePermissionRoleArn(const Aws::String& value) { SetDevicePermissionRoleArn(value); return *this;} /** *Gets the device permission ARN. This is a required parameter.
*/ inline SuiteDefinitionConfiguration& WithDevicePermissionRoleArn(Aws::String&& value) { SetDevicePermissionRoleArn(std::move(value)); return *this;} /** *Gets the device permission ARN. This is a required parameter.
*/ inline SuiteDefinitionConfiguration& WithDevicePermissionRoleArn(const char* value) { SetDevicePermissionRoleArn(value); return *this;} /** *Sets the MQTT protocol that is configured in the suite definition.
*/ inline const Protocol& GetProtocol() const{ return m_protocol; } /** *Sets the MQTT protocol that is configured in the suite definition.
*/ inline bool ProtocolHasBeenSet() const { return m_protocolHasBeenSet; } /** *Sets the MQTT protocol that is configured in the suite definition.
*/ inline void SetProtocol(const Protocol& value) { m_protocolHasBeenSet = true; m_protocol = value; } /** *Sets the MQTT protocol that is configured in the suite definition.
*/ inline void SetProtocol(Protocol&& value) { m_protocolHasBeenSet = true; m_protocol = std::move(value); } /** *Sets the MQTT protocol that is configured in the suite definition.
*/ inline SuiteDefinitionConfiguration& WithProtocol(const Protocol& value) { SetProtocol(value); return *this;} /** *Sets the MQTT protocol that is configured in the suite definition.
*/ inline SuiteDefinitionConfiguration& WithProtocol(Protocol&& value) { SetProtocol(std::move(value)); return *this;} private: Aws::String m_suiteDefinitionName; bool m_suiteDefinitionNameHasBeenSet = false; Aws::Vector