All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.iotdeviceadvisor.model.SuiteDefinitionConfiguration Maven / Gradle / Ivy

/*
 * Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
 * the License. A copy of the License is located at
 * 
 * http://aws.amazon.com/apache2.0
 * 
 * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
 * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
 * and limitations under the License.
 */
package com.amazonaws.services.iotdeviceadvisor.model;

import java.io.Serializable;
import javax.annotation.Generated;
import com.amazonaws.protocol.StructuredPojo;
import com.amazonaws.protocol.ProtocolMarshaller;

/**
 * 

* Gets the suite definition configuration. *

* * @see AWS API Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class SuiteDefinitionConfiguration implements Serializable, Cloneable, StructuredPojo { /** *

* Gets the suite definition name. This is a required parameter. *

*/ private String suiteDefinitionName; /** *

* Gets the devices configured. *

*/ private java.util.List devices; /** *

* Gets the tests intended for qualification in a suite. *

*/ private Boolean intendedForQualification; /** *

* Verifies if the test suite is a long duration test. *

*/ private Boolean isLongDurationTest; /** *

* 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. *

*/ private String rootGroup; /** *

* Gets the device permission ARN. This is a required parameter. *

*/ private String devicePermissionRoleArn; /** *

* Sets the MQTT protocol that is configured in the suite definition. *

*/ private String protocol; /** *

* Gets the suite definition name. This is a required parameter. *

* * @param suiteDefinitionName * Gets the suite definition name. This is a required parameter. */ public void setSuiteDefinitionName(String suiteDefinitionName) { this.suiteDefinitionName = suiteDefinitionName; } /** *

* Gets the suite definition name. This is a required parameter. *

* * @return Gets the suite definition name. This is a required parameter. */ public String getSuiteDefinitionName() { return this.suiteDefinitionName; } /** *

* Gets the suite definition name. This is a required parameter. *

* * @param suiteDefinitionName * Gets the suite definition name. This is a required parameter. * @return Returns a reference to this object so that method calls can be chained together. */ public SuiteDefinitionConfiguration withSuiteDefinitionName(String suiteDefinitionName) { setSuiteDefinitionName(suiteDefinitionName); return this; } /** *

* Gets the devices configured. *

* * @return Gets the devices configured. */ public java.util.List getDevices() { return devices; } /** *

* Gets the devices configured. *

* * @param devices * Gets the devices configured. */ public void setDevices(java.util.Collection devices) { if (devices == null) { this.devices = null; return; } this.devices = new java.util.ArrayList(devices); } /** *

* Gets the devices configured. *

*

* NOTE: This method appends the values to the existing list (if any). Use * {@link #setDevices(java.util.Collection)} or {@link #withDevices(java.util.Collection)} if you want to override * the existing values. *

* * @param devices * Gets the devices configured. * @return Returns a reference to this object so that method calls can be chained together. */ public SuiteDefinitionConfiguration withDevices(DeviceUnderTest... devices) { if (this.devices == null) { setDevices(new java.util.ArrayList(devices.length)); } for (DeviceUnderTest ele : devices) { this.devices.add(ele); } return this; } /** *

* Gets the devices configured. *

* * @param devices * Gets the devices configured. * @return Returns a reference to this object so that method calls can be chained together. */ public SuiteDefinitionConfiguration withDevices(java.util.Collection devices) { setDevices(devices); return this; } /** *

* Gets the tests intended for qualification in a suite. *

* * @param intendedForQualification * Gets the tests intended for qualification in a suite. */ public void setIntendedForQualification(Boolean intendedForQualification) { this.intendedForQualification = intendedForQualification; } /** *

* Gets the tests intended for qualification in a suite. *

* * @return Gets the tests intended for qualification in a suite. */ public Boolean getIntendedForQualification() { return this.intendedForQualification; } /** *

* Gets the tests intended for qualification in a suite. *

* * @param intendedForQualification * Gets the tests intended for qualification in a suite. * @return Returns a reference to this object so that method calls can be chained together. */ public SuiteDefinitionConfiguration withIntendedForQualification(Boolean intendedForQualification) { setIntendedForQualification(intendedForQualification); return this; } /** *

* Gets the tests intended for qualification in a suite. *

* * @return Gets the tests intended for qualification in a suite. */ public Boolean isIntendedForQualification() { return this.intendedForQualification; } /** *

* Verifies if the test suite is a long duration test. *

* * @param isLongDurationTest * Verifies if the test suite is a long duration test. */ public void setIsLongDurationTest(Boolean isLongDurationTest) { this.isLongDurationTest = isLongDurationTest; } /** *

* Verifies if the test suite is a long duration test. *

* * @return Verifies if the test suite is a long duration test. */ public Boolean getIsLongDurationTest() { return this.isLongDurationTest; } /** *

* Verifies if the test suite is a long duration test. *

* * @param isLongDurationTest * Verifies if the test suite is a long duration test. * @return Returns a reference to this object so that method calls can be chained together. */ public SuiteDefinitionConfiguration withIsLongDurationTest(Boolean isLongDurationTest) { setIsLongDurationTest(isLongDurationTest); return this; } /** *

* Verifies if the test suite is a long duration test. *

* * @return Verifies if the test suite is a long duration test. */ public Boolean isLongDurationTest() { return this.isLongDurationTest; } /** *

* 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. *

* * @param 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. */ public void setRootGroup(String rootGroup) { this.rootGroup = 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. *

* * @return 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. */ public String getRootGroup() { return this.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. *

* * @param 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. * @return Returns a reference to this object so that method calls can be chained together. */ public SuiteDefinitionConfiguration withRootGroup(String rootGroup) { setRootGroup(rootGroup); return this; } /** *

* Gets the device permission ARN. This is a required parameter. *

* * @param devicePermissionRoleArn * Gets the device permission ARN. This is a required parameter. */ public void setDevicePermissionRoleArn(String devicePermissionRoleArn) { this.devicePermissionRoleArn = devicePermissionRoleArn; } /** *

* Gets the device permission ARN. This is a required parameter. *

* * @return Gets the device permission ARN. This is a required parameter. */ public String getDevicePermissionRoleArn() { return this.devicePermissionRoleArn; } /** *

* Gets the device permission ARN. This is a required parameter. *

* * @param devicePermissionRoleArn * Gets the device permission ARN. This is a required parameter. * @return Returns a reference to this object so that method calls can be chained together. */ public SuiteDefinitionConfiguration withDevicePermissionRoleArn(String devicePermissionRoleArn) { setDevicePermissionRoleArn(devicePermissionRoleArn); return this; } /** *

* Sets the MQTT protocol that is configured in the suite definition. *

* * @param protocol * Sets the MQTT protocol that is configured in the suite definition. * @see Protocol */ public void setProtocol(String protocol) { this.protocol = protocol; } /** *

* Sets the MQTT protocol that is configured in the suite definition. *

* * @return Sets the MQTT protocol that is configured in the suite definition. * @see Protocol */ public String getProtocol() { return this.protocol; } /** *

* Sets the MQTT protocol that is configured in the suite definition. *

* * @param protocol * Sets the MQTT protocol that is configured in the suite definition. * @return Returns a reference to this object so that method calls can be chained together. * @see Protocol */ public SuiteDefinitionConfiguration withProtocol(String protocol) { setProtocol(protocol); return this; } /** *

* Sets the MQTT protocol that is configured in the suite definition. *

* * @param protocol * Sets the MQTT protocol that is configured in the suite definition. * @return Returns a reference to this object so that method calls can be chained together. * @see Protocol */ public SuiteDefinitionConfiguration withProtocol(Protocol protocol) { this.protocol = protocol.toString(); return this; } /** * Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be * redacted from this string using a placeholder value. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getSuiteDefinitionName() != null) sb.append("SuiteDefinitionName: ").append(getSuiteDefinitionName()).append(","); if (getDevices() != null) sb.append("Devices: ").append(getDevices()).append(","); if (getIntendedForQualification() != null) sb.append("IntendedForQualification: ").append(getIntendedForQualification()).append(","); if (getIsLongDurationTest() != null) sb.append("IsLongDurationTest: ").append(getIsLongDurationTest()).append(","); if (getRootGroup() != null) sb.append("RootGroup: ").append(getRootGroup()).append(","); if (getDevicePermissionRoleArn() != null) sb.append("DevicePermissionRoleArn: ").append(getDevicePermissionRoleArn()).append(","); if (getProtocol() != null) sb.append("Protocol: ").append(getProtocol()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof SuiteDefinitionConfiguration == false) return false; SuiteDefinitionConfiguration other = (SuiteDefinitionConfiguration) obj; if (other.getSuiteDefinitionName() == null ^ this.getSuiteDefinitionName() == null) return false; if (other.getSuiteDefinitionName() != null && other.getSuiteDefinitionName().equals(this.getSuiteDefinitionName()) == false) return false; if (other.getDevices() == null ^ this.getDevices() == null) return false; if (other.getDevices() != null && other.getDevices().equals(this.getDevices()) == false) return false; if (other.getIntendedForQualification() == null ^ this.getIntendedForQualification() == null) return false; if (other.getIntendedForQualification() != null && other.getIntendedForQualification().equals(this.getIntendedForQualification()) == false) return false; if (other.getIsLongDurationTest() == null ^ this.getIsLongDurationTest() == null) return false; if (other.getIsLongDurationTest() != null && other.getIsLongDurationTest().equals(this.getIsLongDurationTest()) == false) return false; if (other.getRootGroup() == null ^ this.getRootGroup() == null) return false; if (other.getRootGroup() != null && other.getRootGroup().equals(this.getRootGroup()) == false) return false; if (other.getDevicePermissionRoleArn() == null ^ this.getDevicePermissionRoleArn() == null) return false; if (other.getDevicePermissionRoleArn() != null && other.getDevicePermissionRoleArn().equals(this.getDevicePermissionRoleArn()) == false) return false; if (other.getProtocol() == null ^ this.getProtocol() == null) return false; if (other.getProtocol() != null && other.getProtocol().equals(this.getProtocol()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getSuiteDefinitionName() == null) ? 0 : getSuiteDefinitionName().hashCode()); hashCode = prime * hashCode + ((getDevices() == null) ? 0 : getDevices().hashCode()); hashCode = prime * hashCode + ((getIntendedForQualification() == null) ? 0 : getIntendedForQualification().hashCode()); hashCode = prime * hashCode + ((getIsLongDurationTest() == null) ? 0 : getIsLongDurationTest().hashCode()); hashCode = prime * hashCode + ((getRootGroup() == null) ? 0 : getRootGroup().hashCode()); hashCode = prime * hashCode + ((getDevicePermissionRoleArn() == null) ? 0 : getDevicePermissionRoleArn().hashCode()); hashCode = prime * hashCode + ((getProtocol() == null) ? 0 : getProtocol().hashCode()); return hashCode; } @Override public SuiteDefinitionConfiguration clone() { try { return (SuiteDefinitionConfiguration) super.clone(); } catch (CloneNotSupportedException e) { throw new IllegalStateException("Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e); } } @com.amazonaws.annotation.SdkInternalApi @Override public void marshall(ProtocolMarshaller protocolMarshaller) { com.amazonaws.services.iotdeviceadvisor.model.transform.SuiteDefinitionConfigurationMarshaller.getInstance().marshall(this, protocolMarshaller); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy