com.amazonaws.services.devicefarm.model.ScheduleRunTest Maven / Gradle / Ivy
Show all versions of aws-java-sdk-osgi Show documentation
/*
 * Copyright 2010-2016 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.devicefarm.model;
import java.io.Serializable;
/**
 * 
 * Represents additional test settings.
 * 
 */
public class ScheduleRunTest implements Serializable, Cloneable {
    /**
     * 
     * The test's type.
     * 
     * 
     * Must be one of the following values:
     * 
     * 
     * - 
     * 
     * BUILTIN_FUZZ: The built-in fuzz type.
     * 
     *  
     * - 
     * 
     * BUILTIN_EXPLORER: For Android, an app explorer that will traverse an
     * Android app, interacting with it and capturing screenshots at the same
     * time.
     * 
     *  
     * - 
     * 
     * APPIUM_JAVA_JUNIT: The Appium Java JUnit type.
     * 
     *  
     * - 
     * 
     * APPIUM_JAVA_TESTNG: The Appium Java TestNG type.
     * 
     *  
     * - 
     * 
     * APPIUM_PYTHON: The Appium Python type.
     * 
     *  
     * - 
     * 
     * APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps.
     * 
     *  
     * - 
     * 
     * APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps.
     * 
     *  
     * - 
     * 
     * APPIUM_WEB_PYTHON: The Appium Python type for Web apps.
     * 
     *  
     * - 
     * 
     * CALABASH: The Calabash type.
     * 
     *  
     * - 
     * 
     * INSTRUMENTATION: The Instrumentation type.
     * 
     *  
     * - 
     * 
     * UIAUTOMATION: The uiautomation type.
     * 
     *  
     * - 
     * 
     * UIAUTOMATOR: The uiautomator type.
     * 
     *  
     * - 
     * 
     * XCTEST: The XCode test type.
     * 
     *  
     * - 
     * 
     * XCTEST_UI: The XCode UI test type.
     * 
     *  
     * 
     */
    private String type;
    /**
     * 
     * The ARN of the uploaded test that will be run.
     * 
     */
    private String testPackageArn;
    /**
     * 
     * The test's filter.
     * 
     */
    private String filter;
    /**
     * 
     * The test's parameters, such as test framework parameters and fixture
     * settings.
     * 
     */
    private java.util.Map parameters;
    /**
     * 
     * The test's type.
     * 
     * 
     * Must be one of the following values:
     * 
     * 
     * - 
     * 
     * BUILTIN_FUZZ: The built-in fuzz type.
     * 
     *  
     * - 
     * 
     * BUILTIN_EXPLORER: For Android, an app explorer that will traverse an
     * Android app, interacting with it and capturing screenshots at the same
     * time.
     * 
     *  
     * - 
     * 
     * APPIUM_JAVA_JUNIT: The Appium Java JUnit type.
     * 
     *  
     * - 
     * 
     * APPIUM_JAVA_TESTNG: The Appium Java TestNG type.
     * 
     *  
     * - 
     * 
     * APPIUM_PYTHON: The Appium Python type.
     * 
     *  
     * - 
     * 
     * APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps.
     * 
     *  
     * - 
     * 
     * APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps.
     * 
     *  
     * - 
     * 
     * APPIUM_WEB_PYTHON: The Appium Python type for Web apps.
     * 
     *  
     * - 
     * 
     * CALABASH: The Calabash type.
     * 
     *  
     * - 
     * 
     * INSTRUMENTATION: The Instrumentation type.
     * 
     *  
     * - 
     * 
     * UIAUTOMATION: The uiautomation type.
     * 
     *  
     * - 
     * 
     * UIAUTOMATOR: The uiautomator type.
     * 
     *  
     * - 
     * 
     * XCTEST: The XCode test type.
     * 
     *  
     * - 
     * 
     * XCTEST_UI: The XCode UI test type.
     * 
     *  
     * 
     * 
     * @param type
     *        The test's type.
     *        
     *        Must be one of the following values:
     *        
     *        
     *        - 
     *        
     *        BUILTIN_FUZZ: The built-in fuzz type.
     *        
     *         
     *        - 
     *        
     *        BUILTIN_EXPLORER: For Android, an app explorer that will traverse
     *        an Android app, interacting with it and capturing screenshots at
     *        the same time.
     *        
     *         
     *        - 
     *        
     *        APPIUM_JAVA_JUNIT: The Appium Java JUnit type.
     *        
     *         
     *        - 
     *        
     *        APPIUM_JAVA_TESTNG: The Appium Java TestNG type.
     *        
     *         
     *        - 
     *        
     *        APPIUM_PYTHON: The Appium Python type.
     *        
     *         
     *        - 
     *        
     *        APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps.
     *        
     *         
     *        - 
     *        
     *        APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps.
     *        
     *         
     *        - 
     *        
     *        APPIUM_WEB_PYTHON: The Appium Python type for Web apps.
     *        
     *         
     *        - 
     *        
     *        CALABASH: The Calabash type.
     *        
     *         
     *        - 
     *        
     *        INSTRUMENTATION: The Instrumentation type.
     *        
     *         
     *        - 
     *        
     *        UIAUTOMATION: The uiautomation type.
     *        
     *         
     *        - 
     *        
     *        UIAUTOMATOR: The uiautomator type.
     *        
     *         
     *        - 
     *        
     *        XCTEST: The XCode test type.
     *        
     *         
     *        - 
     *        
     *        XCTEST_UI: The XCode UI test type.
     *        
     *         
     * @see TestType
     */
    public void setType(String type) {
        this.type = type;
    }
    /**
     * 
     * The test's type.
     * 
     * 
     * Must be one of the following values:
     * 
     * 
     * - 
     * 
     * BUILTIN_FUZZ: The built-in fuzz type.
     * 
     *  
     * - 
     * 
     * BUILTIN_EXPLORER: For Android, an app explorer that will traverse an
     * Android app, interacting with it and capturing screenshots at the same
     * time.
     * 
     *  
     * - 
     * 
     * APPIUM_JAVA_JUNIT: The Appium Java JUnit type.
     * 
     *  
     * - 
     * 
     * APPIUM_JAVA_TESTNG: The Appium Java TestNG type.
     * 
     *  
     * - 
     * 
     * APPIUM_PYTHON: The Appium Python type.
     * 
     *  
     * - 
     * 
     * APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps.
     * 
     *  
     * - 
     * 
     * APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps.
     * 
     *  
     * - 
     * 
     * APPIUM_WEB_PYTHON: The Appium Python type for Web apps.
     * 
     *  
     * - 
     * 
     * CALABASH: The Calabash type.
     * 
     *  
     * - 
     * 
     * INSTRUMENTATION: The Instrumentation type.
     * 
     *  
     * - 
     * 
     * UIAUTOMATION: The uiautomation type.
     * 
     *  
     * - 
     * 
     * UIAUTOMATOR: The uiautomator type.
     * 
     *  
     * - 
     * 
     * XCTEST: The XCode test type.
     * 
     *  
     * - 
     * 
     * XCTEST_UI: The XCode UI test type.
     * 
     *  
     * 
     * 
     * @return The test's type.
     *         
     *         Must be one of the following values:
     *         
     *         
     *         - 
     *         
     *         BUILTIN_FUZZ: The built-in fuzz type.
     *         
     *          
     *         - 
     *         
     *         BUILTIN_EXPLORER: For Android, an app explorer that will traverse
     *         an Android app, interacting with it and capturing screenshots at
     *         the same time.
     *         
     *          
     *         - 
     *         
     *         APPIUM_JAVA_JUNIT: The Appium Java JUnit type.
     *         
     *          
     *         - 
     *         
     *         APPIUM_JAVA_TESTNG: The Appium Java TestNG type.
     *         
     *          
     *         - 
     *         
     *         APPIUM_PYTHON: The Appium Python type.
     *         
     *          
     *         - 
     *         
     *         APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps.
     *         
     *          
     *         - 
     *         
     *         APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps.
     *         
     *          
     *         - 
     *         
     *         APPIUM_WEB_PYTHON: The Appium Python type for Web apps.
     *         
     *          
     *         - 
     *         
     *         CALABASH: The Calabash type.
     *         
     *          
     *         - 
     *         
     *         INSTRUMENTATION: The Instrumentation type.
     *         
     *          
     *         - 
     *         
     *         UIAUTOMATION: The uiautomation type.
     *         
     *          
     *         - 
     *         
     *         UIAUTOMATOR: The uiautomator type.
     *         
     *          
     *         - 
     *         
     *         XCTEST: The XCode test type.
     *         
     *          
     *         - 
     *         
     *         XCTEST_UI: The XCode UI test type.
     *         
     *          
     * @see TestType
     */
    public String getType() {
        return this.type;
    }
    /**
     * 
     * The test's type.
     * 
     * 
     * Must be one of the following values:
     * 
     * 
     * - 
     * 
     * BUILTIN_FUZZ: The built-in fuzz type.
     * 
     *  
     * - 
     * 
     * BUILTIN_EXPLORER: For Android, an app explorer that will traverse an
     * Android app, interacting with it and capturing screenshots at the same
     * time.
     * 
     *  
     * - 
     * 
     * APPIUM_JAVA_JUNIT: The Appium Java JUnit type.
     * 
     *  
     * - 
     * 
     * APPIUM_JAVA_TESTNG: The Appium Java TestNG type.
     * 
     *  
     * - 
     * 
     * APPIUM_PYTHON: The Appium Python type.
     * 
     *  
     * - 
     * 
     * APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps.
     * 
     *  
     * - 
     * 
     * APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps.
     * 
     *  
     * - 
     * 
     * APPIUM_WEB_PYTHON: The Appium Python type for Web apps.
     * 
     *  
     * - 
     * 
     * CALABASH: The Calabash type.
     * 
     *  
     * - 
     * 
     * INSTRUMENTATION: The Instrumentation type.
     * 
     *  
     * - 
     * 
     * UIAUTOMATION: The uiautomation type.
     * 
     *  
     * - 
     * 
     * UIAUTOMATOR: The uiautomator type.
     * 
     *  
     * - 
     * 
     * XCTEST: The XCode test type.
     * 
     *  
     * - 
     * 
     * XCTEST_UI: The XCode UI test type.
     * 
     *  
     * 
     * 
     * @param type
     *        The test's type.
     *        
     *        Must be one of the following values:
     *        
     *        
     *        - 
     *        
     *        BUILTIN_FUZZ: The built-in fuzz type.
     *        
     *         
     *        - 
     *        
     *        BUILTIN_EXPLORER: For Android, an app explorer that will traverse
     *        an Android app, interacting with it and capturing screenshots at
     *        the same time.
     *        
     *         
     *        - 
     *        
     *        APPIUM_JAVA_JUNIT: The Appium Java JUnit type.
     *        
     *         
     *        - 
     *        
     *        APPIUM_JAVA_TESTNG: The Appium Java TestNG type.
     *        
     *         
     *        - 
     *        
     *        APPIUM_PYTHON: The Appium Python type.
     *        
     *         
     *        - 
     *        
     *        APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps.
     *        
     *         
     *        - 
     *        
     *        APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps.
     *        
     *         
     *        - 
     *        
     *        APPIUM_WEB_PYTHON: The Appium Python type for Web apps.
     *        
     *         
     *        - 
     *        
     *        CALABASH: The Calabash type.
     *        
     *         
     *        - 
     *        
     *        INSTRUMENTATION: The Instrumentation type.
     *        
     *         
     *        - 
     *        
     *        UIAUTOMATION: The uiautomation type.
     *        
     *         
     *        - 
     *        
     *        UIAUTOMATOR: The uiautomator type.
     *        
     *         
     *        - 
     *        
     *        XCTEST: The XCode test type.
     *        
     *         
     *        - 
     *        
     *        XCTEST_UI: The XCode UI test type.
     *        
     *         
     * @return Returns a reference to this object so that method calls can be
     *         chained together.
     * @see TestType
     */
    public ScheduleRunTest withType(String type) {
        setType(type);
        return this;
    }
    /**
     * 
     * The test's type.
     * 
     * 
     * Must be one of the following values:
     * 
     * 
     * - 
     * 
     * BUILTIN_FUZZ: The built-in fuzz type.
     * 
     *  
     * - 
     * 
     * BUILTIN_EXPLORER: For Android, an app explorer that will traverse an
     * Android app, interacting with it and capturing screenshots at the same
     * time.
     * 
     *  
     * - 
     * 
     * APPIUM_JAVA_JUNIT: The Appium Java JUnit type.
     * 
     *  
     * - 
     * 
     * APPIUM_JAVA_TESTNG: The Appium Java TestNG type.
     * 
     *  
     * - 
     * 
     * APPIUM_PYTHON: The Appium Python type.
     * 
     *  
     * - 
     * 
     * APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps.
     * 
     *  
     * - 
     * 
     * APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps.
     * 
     *  
     * - 
     * 
     * APPIUM_WEB_PYTHON: The Appium Python type for Web apps.
     * 
     *  
     * - 
     * 
     * CALABASH: The Calabash type.
     * 
     *  
     * - 
     * 
     * INSTRUMENTATION: The Instrumentation type.
     * 
     *  
     * - 
     * 
     * UIAUTOMATION: The uiautomation type.
     * 
     *  
     * - 
     * 
     * UIAUTOMATOR: The uiautomator type.
     * 
     *  
     * - 
     * 
     * XCTEST: The XCode test type.
     * 
     *  
     * - 
     * 
     * XCTEST_UI: The XCode UI test type.
     * 
     *  
     * 
     * 
     * @param type
     *        The test's type.
     *        
     *        Must be one of the following values:
     *        
     *        
     *        - 
     *        
     *        BUILTIN_FUZZ: The built-in fuzz type.
     *        
     *         
     *        - 
     *        
     *        BUILTIN_EXPLORER: For Android, an app explorer that will traverse
     *        an Android app, interacting with it and capturing screenshots at
     *        the same time.
     *        
     *         
     *        - 
     *        
     *        APPIUM_JAVA_JUNIT: The Appium Java JUnit type.
     *        
     *         
     *        - 
     *        
     *        APPIUM_JAVA_TESTNG: The Appium Java TestNG type.
     *        
     *         
     *        - 
     *        
     *        APPIUM_PYTHON: The Appium Python type.
     *        
     *         
     *        - 
     *        
     *        APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps.
     *        
     *         
     *        - 
     *        
     *        APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps.
     *        
     *         
     *        - 
     *        
     *        APPIUM_WEB_PYTHON: The Appium Python type for Web apps.
     *        
     *         
     *        - 
     *        
     *        CALABASH: The Calabash type.
     *        
     *         
     *        - 
     *        
     *        INSTRUMENTATION: The Instrumentation type.
     *        
     *         
     *        - 
     *        
     *        UIAUTOMATION: The uiautomation type.
     *        
     *         
     *        - 
     *        
     *        UIAUTOMATOR: The uiautomator type.
     *        
     *         
     *        - 
     *        
     *        XCTEST: The XCode test type.
     *        
     *         
     *        - 
     *        
     *        XCTEST_UI: The XCode UI test type.
     *        
     *         
     * @see TestType
     */
    public void setType(TestType type) {
        this.type = type.toString();
    }
    /**
     * 
     * The test's type.
     * 
     * 
     * Must be one of the following values:
     * 
     * 
     * - 
     * 
     * BUILTIN_FUZZ: The built-in fuzz type.
     * 
     *  
     * - 
     * 
     * BUILTIN_EXPLORER: For Android, an app explorer that will traverse an
     * Android app, interacting with it and capturing screenshots at the same
     * time.
     * 
     *  
     * - 
     * 
     * APPIUM_JAVA_JUNIT: The Appium Java JUnit type.
     * 
     *  
     * - 
     * 
     * APPIUM_JAVA_TESTNG: The Appium Java TestNG type.
     * 
     *  
     * - 
     * 
     * APPIUM_PYTHON: The Appium Python type.
     * 
     *  
     * - 
     * 
     * APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps.
     * 
     *  
     * - 
     * 
     * APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps.
     * 
     *  
     * - 
     * 
     * APPIUM_WEB_PYTHON: The Appium Python type for Web apps.
     * 
     *  
     * - 
     * 
     * CALABASH: The Calabash type.
     * 
     *  
     * - 
     * 
     * INSTRUMENTATION: The Instrumentation type.
     * 
     *  
     * - 
     * 
     * UIAUTOMATION: The uiautomation type.
     * 
     *  
     * - 
     * 
     * UIAUTOMATOR: The uiautomator type.
     * 
     *  
     * - 
     * 
     * XCTEST: The XCode test type.
     * 
     *  
     * - 
     * 
     * XCTEST_UI: The XCode UI test type.
     * 
     *  
     * 
     * 
     * @param type
     *        The test's type.
     *        
     *        Must be one of the following values:
     *        
     *        
     *        - 
     *        
     *        BUILTIN_FUZZ: The built-in fuzz type.
     *        
     *         
     *        - 
     *        
     *        BUILTIN_EXPLORER: For Android, an app explorer that will traverse
     *        an Android app, interacting with it and capturing screenshots at
     *        the same time.
     *        
     *         
     *        - 
     *        
     *        APPIUM_JAVA_JUNIT: The Appium Java JUnit type.
     *        
     *         
     *        - 
     *        
     *        APPIUM_JAVA_TESTNG: The Appium Java TestNG type.
     *        
     *         
     *        - 
     *        
     *        APPIUM_PYTHON: The Appium Python type.
     *        
     *         
     *        - 
     *        
     *        APPIUM_WEB_JAVA_JUNIT: The Appium Java JUnit type for Web apps.
     *        
     *         
     *        - 
     *        
     *        APPIUM_WEB_JAVA_TESTNG: The Appium Java TestNG type for Web apps.
     *        
     *         
     *        - 
     *        
     *        APPIUM_WEB_PYTHON: The Appium Python type for Web apps.
     *        
     *         
     *        - 
     *        
     *        CALABASH: The Calabash type.
     *        
     *         
     *        - 
     *        
     *        INSTRUMENTATION: The Instrumentation type.
     *        
     *         
     *        - 
     *        
     *        UIAUTOMATION: The uiautomation type.
     *        
     *         
     *        - 
     *        
     *        UIAUTOMATOR: The uiautomator type.
     *        
     *         
     *        - 
     *        
     *        XCTEST: The XCode test type.
     *        
     *         
     *        - 
     *        
     *        XCTEST_UI: The XCode UI test type.
     *        
     *         
     * @return Returns a reference to this object so that method calls can be
     *         chained together.
     * @see TestType
     */
    public ScheduleRunTest withType(TestType type) {
        setType(type);
        return this;
    }
    /**
     * 
     * The ARN of the uploaded test that will be run.
     * 
     * 
     * @param testPackageArn
     *        The ARN of the uploaded test that will be run.
     */
    public void setTestPackageArn(String testPackageArn) {
        this.testPackageArn = testPackageArn;
    }
    /**
     * 
     * The ARN of the uploaded test that will be run.
     * 
     * 
     * @return The ARN of the uploaded test that will be run.
     */
    public String getTestPackageArn() {
        return this.testPackageArn;
    }
    /**
     * 
     * The ARN of the uploaded test that will be run.
     * 
     * 
     * @param testPackageArn
     *        The ARN of the uploaded test that will be run.
     * @return Returns a reference to this object so that method calls can be
     *         chained together.
     */
    public ScheduleRunTest withTestPackageArn(String testPackageArn) {
        setTestPackageArn(testPackageArn);
        return this;
    }
    /**
     * 
     * The test's filter.
     * 
     * 
     * @param filter
     *        The test's filter.
     */
    public void setFilter(String filter) {
        this.filter = filter;
    }
    /**
     * 
     * The test's filter.
     * 
     * 
     * @return The test's filter.
     */
    public String getFilter() {
        return this.filter;
    }
    /**
     * 
     * The test's filter.
     * 
     * 
     * @param filter
     *        The test's filter.
     * @return Returns a reference to this object so that method calls can be
     *         chained together.
     */
    public ScheduleRunTest withFilter(String filter) {
        setFilter(filter);
        return this;
    }
    /**
     * 
     * The test's parameters, such as test framework parameters and fixture
     * settings.
     * 
     * 
     * @return The test's parameters, such as test framework parameters and
     *         fixture settings.
     */
    public java.util.Map getParameters() {
        return parameters;
    }
    /**
     * 
     * The test's parameters, such as test framework parameters and fixture
     * settings.
     * 
     * 
     * @param parameters
     *        The test's parameters, such as test framework parameters and
     *        fixture settings.
     */
    public void setParameters(java.util.Map parameters) {
        this.parameters = parameters;
    }
    /**
     * 
     * The test's parameters, such as test framework parameters and fixture
     * settings.
     * 
     * 
     * @param parameters
     *        The test's parameters, such as test framework parameters and
     *        fixture settings.
     * @return Returns a reference to this object so that method calls can be
     *         chained together.
     */
    public ScheduleRunTest withParameters(
            java.util.Map parameters) {
        setParameters(parameters);
        return this;
    }
    public ScheduleRunTest addParametersEntry(String key, String value) {
        if (null == this.parameters) {
            this.parameters = new java.util.HashMap();
        }
        if (this.parameters.containsKey(key))
            throw new IllegalArgumentException("Duplicated keys ("
                    + key.toString() + ") are provided.");
        this.parameters.put(key, value);
        return this;
    }
    /**
     * Removes all the entries added into Parameters. <p> Returns a reference
     * to this object so that method calls can be chained together.
     */
    public ScheduleRunTest clearParametersEntries() {
        this.parameters = null;
        return this;
    }
    /**
     * Returns a string representation of this object; useful for testing and
     * debugging.
     *
     * @return A string representation of this object.
     *
     * @see java.lang.Object#toString()
     */
    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append("{");
        if (getType() != null)
            sb.append("Type: " + getType() + ",");
        if (getTestPackageArn() != null)
            sb.append("TestPackageArn: " + getTestPackageArn() + ",");
        if (getFilter() != null)
            sb.append("Filter: " + getFilter() + ",");
        if (getParameters() != null)
            sb.append("Parameters: " + getParameters());
        sb.append("}");
        return sb.toString();
    }
    @Override
    public boolean equals(Object obj) {
        if (this == obj)
            return true;
        if (obj == null)
            return false;
        if (obj instanceof ScheduleRunTest == false)
            return false;
        ScheduleRunTest other = (ScheduleRunTest) obj;
        if (other.getType() == null ^ this.getType() == null)
            return false;
        if (other.getType() != null
                && other.getType().equals(this.getType()) == false)
            return false;
        if (other.getTestPackageArn() == null
                ^ this.getTestPackageArn() == null)
            return false;
        if (other.getTestPackageArn() != null
                && other.getTestPackageArn().equals(this.getTestPackageArn()) == false)
            return false;
        if (other.getFilter() == null ^ this.getFilter() == null)
            return false;
        if (other.getFilter() != null
                && other.getFilter().equals(this.getFilter()) == false)
            return false;
        if (other.getParameters() == null ^ this.getParameters() == null)
            return false;
        if (other.getParameters() != null
                && other.getParameters().equals(this.getParameters()) == false)
            return false;
        return true;
    }
    @Override
    public int hashCode() {
        final int prime = 31;
        int hashCode = 1;
        hashCode = prime * hashCode
                + ((getType() == null) ? 0 : getType().hashCode());
        hashCode = prime
                * hashCode
                + ((getTestPackageArn() == null) ? 0 : getTestPackageArn()
                        .hashCode());
        hashCode = prime * hashCode
                + ((getFilter() == null) ? 0 : getFilter().hashCode());
        hashCode = prime * hashCode
                + ((getParameters() == null) ? 0 : getParameters().hashCode());
        return hashCode;
    }
    @Override
    public ScheduleRunTest clone() {
        try {
            return (ScheduleRunTest) super.clone();
        } catch (CloneNotSupportedException e) {
            throw new IllegalStateException(
                    "Got a CloneNotSupportedException from Object.clone() "
                            + "even though we're Cloneable!", e);
        }
    }
}