/* * 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.glue.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.AmazonWebServiceRequest; /** * * @see AWS API * Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class CreateMLTransformRequest extends com.amazonaws.AmazonWebServiceRequest implements Serializable, Cloneable { /** *

* The unique name that you give the transform when you create it. *

*/ private String name; /** *

* A description of the machine learning transform that is being defined. The default is an empty string. *

*/ private String description; /** *

* A list of Glue table definitions used by the transform. *

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

* The algorithmic parameters that are specific to the transform type used. Conditionally dependent on the transform * type. *

*/ private TransformParameters parameters; /** *

* The name or Amazon Resource Name (ARN) of the IAM role with the required permissions. The required permissions * include both Glue service role permissions to Glue resources, and Amazon S3 permissions required by the * transform. *

* */ private String role; /** *

* This value determines which version of Glue this machine learning transform is compatible with. Glue 1.0 is * recommended for most customers. If the value is not set, the Glue compatibility defaults to Glue 0.9. For more * information, see Glue Versions in * the developer guide. *

*/ private String glueVersion; /** *

* The number of Glue data processing units (DPUs) that are allocated to task runs for this transform. You can * allocate from 2 to 100 DPUs; the default is 10. A DPU is a relative measure of processing power that consists of * 4 vCPUs of compute capacity and 16 GB of memory. For more information, see the Glue pricing page. *

*

* MaxCapacity is a mutually exclusive option with NumberOfWorkers and * WorkerType. *

* *

* When the WorkerType field is set to a value other than Standard, the * MaxCapacity field is set automatically and becomes read-only. *

*

* When the WorkerType field is set to a value other than Standard, the * MaxCapacity field is set automatically and becomes read-only. *

*/ private Double maxCapacity; /** *

* The type of predefined worker that is allocated when this task runs. Accepts a value of Standard, G.1X, or G.2X. *

* *

* MaxCapacity is a mutually exclusive option with NumberOfWorkers and * WorkerType. *

* */ private String workerType; /** *

* The number of workers of a defined workerType that are allocated when this task runs. *

*

* If WorkerType is set, then NumberOfWorkers is required (and vice versa). *

*/ private Integer numberOfWorkers; /** *

* The timeout of the task run for this transform in minutes. This is the maximum time that a task run for this * transform can consume resources before it is terminated and enters TIMEOUT status. The default is * 2,880 minutes (48 hours). *

*/ private Integer timeout; /** *

* The maximum number of times to retry a task for this transform after a task run fails. *

*/ private Integer maxRetries; /** *

* The tags to use with this machine learning transform. You may use tags to limit access to the machine learning * transform. For more information about tags in Glue, see Amazon Web Services Tags in Glue in the * developer guide. *

*/ private java.util.Map tags; /** *

* The encryption-at-rest settings of the transform that apply to accessing user data. Machine learning transforms * can access user data encrypted in Amazon S3 using KMS. *

*/ private TransformEncryption transformEncryption; /** *

* The unique name that you give the transform when you create it. *

* * @param name * The unique name that you give the transform when you create it. */ public void setName(String name) { this.name = name; } /** *

* The unique name that you give the transform when you create it. *

* * @return The unique name that you give the transform when you create it. */ public String getName() { return this.name; } /** *

* The unique name that you give the transform when you create it. *

* * @param name * The unique name that you give the transform when you create it. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateMLTransformRequest withName(String name) { setName(name); return this; } /** *

* A description of the machine learning transform that is being defined. The default is an empty string. *

* * @param description * A description of the machine learning transform that is being defined. The default is an empty string. */ public void setDescription(String description) { this.description = description; } /** *

* A description of the machine learning transform that is being defined. The default is an empty string. *

* * @return A description of the machine learning transform that is being defined. The default is an empty string. */ public String getDescription() { return this.description; } /** *

* A description of the machine learning transform that is being defined. The default is an empty string. *

* * @param description * A description of the machine learning transform that is being defined. The default is an empty string. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateMLTransformRequest withDescription(String description) { setDescription(description); return this; } /** *

* A list of Glue table definitions used by the transform. *

* * @return A list of Glue table definitions used by the transform. */ public java.util.List getInputRecordTables() { return inputRecordTables; } /** *

* A list of Glue table definitions used by the transform. *

* * @param inputRecordTables * A list of Glue table definitions used by the transform. */ public void setInputRecordTables(java.util.Collection inputRecordTables) { if (inputRecordTables == null) { this.inputRecordTables = null; return; } this.inputRecordTables = new java.util.ArrayList(inputRecordTables); } /** *

* A list of Glue table definitions used by the transform. *

*

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

* * @param inputRecordTables * A list of Glue table definitions used by the transform. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateMLTransformRequest withInputRecordTables(GlueTable... inputRecordTables) { if (this.inputRecordTables == null) { setInputRecordTables(new java.util.ArrayList(inputRecordTables.length)); } for (GlueTable ele : inputRecordTables) { this.inputRecordTables.add(ele); } return this; } /** *

* A list of Glue table definitions used by the transform. *

* * @param inputRecordTables * A list of Glue table definitions used by the transform. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateMLTransformRequest withInputRecordTables(java.util.Collection inputRecordTables) { setInputRecordTables(inputRecordTables); return this; } /** *

* The algorithmic parameters that are specific to the transform type used. Conditionally dependent on the transform * type. *

* * @param parameters * The algorithmic parameters that are specific to the transform type used. Conditionally dependent on the * transform type. */ public void setParameters(TransformParameters parameters) { this.parameters = parameters; } /** *

* The algorithmic parameters that are specific to the transform type used. Conditionally dependent on the transform * type. *

* * @return The algorithmic parameters that are specific to the transform type used. Conditionally dependent on the * transform type. */ public TransformParameters getParameters() { return this.parameters; } /** *

* The algorithmic parameters that are specific to the transform type used. Conditionally dependent on the transform * type. *

* * @param parameters * The algorithmic parameters that are specific to the transform type used. Conditionally dependent on the * transform type. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateMLTransformRequest withParameters(TransformParameters parameters) { setParameters(parameters); return this; } /** *

* The name or Amazon Resource Name (ARN) of the IAM role with the required permissions. The required permissions * include both Glue service role permissions to Glue resources, and Amazon S3 permissions required by the * transform. *

*
    *
  • *

    * This role needs Glue service role permissions to allow access to resources in Glue. See Attach a Policy to IAM Users That * Access Glue. *

    *
  • *
  • *

    * This role needs permission to your Amazon Simple Storage Service (Amazon S3) sources, targets, temporary * directory, scripts, and any libraries used by the task run for this transform. *

    *
  • *
* * @param role * The name or Amazon Resource Name (ARN) of the IAM role with the required permissions. The required * permissions include both Glue service role permissions to Glue resources, and Amazon S3 permissions * required by the transform.

*
    *
  • *

    * This role needs Glue service role permissions to allow access to resources in Glue. See Attach a Policy to IAM Users * That Access Glue. *

    *
  • *
  • *

    * This role needs permission to your Amazon Simple Storage Service (Amazon S3) sources, targets, temporary * directory, scripts, and any libraries used by the task run for this transform. *

    *
  • */ public void setRole(String role) { this.role = role; } /** *

    * The name or Amazon Resource Name (ARN) of the IAM role with the required permissions. The required permissions * include both Glue service role permissions to Glue resources, and Amazon S3 permissions required by the * transform. *

    *
      *
    • *

      * This role needs Glue service role permissions to allow access to resources in Glue. See Attach a Policy to IAM Users That * Access Glue. *

      *
    • *
    • *

      * This role needs permission to your Amazon Simple Storage Service (Amazon S3) sources, targets, temporary * directory, scripts, and any libraries used by the task run for this transform. *

      *
    • *
    * * @return The name or Amazon Resource Name (ARN) of the IAM role with the required permissions. The required * permissions include both Glue service role permissions to Glue resources, and Amazon S3 permissions * required by the transform.

    *
      *
    • *

      * This role needs Glue service role permissions to allow access to resources in Glue. See Attach a Policy to IAM * Users That Access Glue. *

      *
    • *
    • *

      * This role needs permission to your Amazon Simple Storage Service (Amazon S3) sources, targets, temporary * directory, scripts, and any libraries used by the task run for this transform. *

      *
    • */ public String getRole() { return this.role; } /** *

      * The name or Amazon Resource Name (ARN) of the IAM role with the required permissions. The required permissions * include both Glue service role permissions to Glue resources, and Amazon S3 permissions required by the * transform. *

      *
        *
      • *

        * This role needs Glue service role permissions to allow access to resources in Glue. See Attach a Policy to IAM Users That * Access Glue. *

        *
      • *
      • *

        * This role needs permission to your Amazon Simple Storage Service (Amazon S3) sources, targets, temporary * directory, scripts, and any libraries used by the task run for this transform. *

        *
      • *
      * * @param role * The name or Amazon Resource Name (ARN) of the IAM role with the required permissions. The required * permissions include both Glue service role permissions to Glue resources, and Amazon S3 permissions * required by the transform.

      *
        *
      • *

        * This role needs Glue service role permissions to allow access to resources in Glue. See Attach a Policy to IAM Users * That Access Glue. *

        *
      • *
      • *

        * This role needs permission to your Amazon Simple Storage Service (Amazon S3) sources, targets, temporary * directory, scripts, and any libraries used by the task run for this transform. *

        *
      • * @return Returns a reference to this object so that method calls can be chained together. */ public CreateMLTransformRequest withRole(String role) { setRole(role); return this; } /** *

        * This value determines which version of Glue this machine learning transform is compatible with. Glue 1.0 is * recommended for most customers. If the value is not set, the Glue compatibility defaults to Glue 0.9. For more * information, see Glue Versions in * the developer guide. *

        * * @param glueVersion * This value determines which version of Glue this machine learning transform is compatible with. Glue 1.0 * is recommended for most customers. If the value is not set, the Glue compatibility defaults to Glue 0.9. * For more information, see Glue * Versions in the developer guide. */ public void setGlueVersion(String glueVersion) { this.glueVersion = glueVersion; } /** *

        * This value determines which version of Glue this machine learning transform is compatible with. Glue 1.0 is * recommended for most customers. If the value is not set, the Glue compatibility defaults to Glue 0.9. For more * information, see Glue Versions in * the developer guide. *

        * * @return This value determines which version of Glue this machine learning transform is compatible with. Glue 1.0 * is recommended for most customers. If the value is not set, the Glue compatibility defaults to Glue 0.9. * For more information, see Glue * Versions in the developer guide. */ public String getGlueVersion() { return this.glueVersion; } /** *

        * This value determines which version of Glue this machine learning transform is compatible with. Glue 1.0 is * recommended for most customers. If the value is not set, the Glue compatibility defaults to Glue 0.9. For more * information, see Glue Versions in * the developer guide. *

        * * @param glueVersion * This value determines which version of Glue this machine learning transform is compatible with. Glue 1.0 * is recommended for most customers. If the value is not set, the Glue compatibility defaults to Glue 0.9. * For more information, see Glue * Versions in the developer guide. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateMLTransformRequest withGlueVersion(String glueVersion) { setGlueVersion(glueVersion); return this; } /** *

        * The number of Glue data processing units (DPUs) that are allocated to task runs for this transform. You can * allocate from 2 to 100 DPUs; the default is 10. A DPU is a relative measure of processing power that consists of * 4 vCPUs of compute capacity and 16 GB of memory. For more information, see the Glue pricing page. *

        *

        * MaxCapacity is a mutually exclusive option with NumberOfWorkers and * WorkerType. *

        *
          *
        • *

          * If either NumberOfWorkers or WorkerType is set, then MaxCapacity cannot be * set. *

          *
        • *
        • *

          * If MaxCapacity is set then neither NumberOfWorkers or WorkerType can be * set. *

          *
        • *
        • *

          * If WorkerType is set, then NumberOfWorkers is required (and vice versa). *

          *
        • *
        • *

          * MaxCapacity and NumberOfWorkers must both be at least 1. *

          *
        • *
        *

        * When the WorkerType field is set to a value other than Standard, the * MaxCapacity field is set automatically and becomes read-only. *

        *

        * When the WorkerType field is set to a value other than Standard, the * MaxCapacity field is set automatically and becomes read-only. *

        * * @param maxCapacity * The number of Glue data processing units (DPUs) that are allocated to task runs for this transform. You * can allocate from 2 to 100 DPUs; the default is 10. A DPU is a relative measure of processing power that * consists of 4 vCPUs of compute capacity and 16 GB of memory. For more information, see the Glue pricing page.

        *

        * MaxCapacity is a mutually exclusive option with NumberOfWorkers and * WorkerType. *

        *
          *
        • *

          * If either NumberOfWorkers or WorkerType is set, then MaxCapacity * cannot be set. *

          *
        • *
        • *

          * If MaxCapacity is set then neither NumberOfWorkers or WorkerType * can be set. *

          *
        • *
        • *

          * If WorkerType is set, then NumberOfWorkers is required (and vice versa). *

          *
        • *
        • *

          * MaxCapacity and NumberOfWorkers must both be at least 1. *

          *
        • *
        *

        * When the WorkerType field is set to a value other than Standard, the * MaxCapacity field is set automatically and becomes read-only. *

        *

        * When the WorkerType field is set to a value other than Standard, the * MaxCapacity field is set automatically and becomes read-only. */ public void setMaxCapacity(Double maxCapacity) { this.maxCapacity = maxCapacity; } /** *

        * The number of Glue data processing units (DPUs) that are allocated to task runs for this transform. You can * allocate from 2 to 100 DPUs; the default is 10. A DPU is a relative measure of processing power that consists of * 4 vCPUs of compute capacity and 16 GB of memory. For more information, see the Glue pricing page. *

        *

        * MaxCapacity is a mutually exclusive option with NumberOfWorkers and * WorkerType. *

        *
          *
        • *

          * If either NumberOfWorkers or WorkerType is set, then MaxCapacity cannot be * set. *

          *
        • *
        • *

          * If MaxCapacity is set then neither NumberOfWorkers or WorkerType can be * set. *

          *
        • *
        • *

          * If WorkerType is set, then NumberOfWorkers is required (and vice versa). *

          *
        • *
        • *

          * MaxCapacity and NumberOfWorkers must both be at least 1. *

          *
        • *
        *

        * When the WorkerType field is set to a value other than Standard, the * MaxCapacity field is set automatically and becomes read-only. *

        *

        * When the WorkerType field is set to a value other than Standard, the * MaxCapacity field is set automatically and becomes read-only. *

        * * @return The number of Glue data processing units (DPUs) that are allocated to task runs for this transform. You * can allocate from 2 to 100 DPUs; the default is 10. A DPU is a relative measure of processing power that * consists of 4 vCPUs of compute capacity and 16 GB of memory. For more information, see the Glue pricing page.

        *

        * MaxCapacity is a mutually exclusive option with NumberOfWorkers and * WorkerType. *

        *
          *
        • *

          * If either NumberOfWorkers or WorkerType is set, then MaxCapacity * cannot be set. *

          *
        • *
        • *

          * If MaxCapacity is set then neither NumberOfWorkers or WorkerType * can be set. *

          *
        • *
        • *

          * If WorkerType is set, then NumberOfWorkers is required (and vice versa). *

          *
        • *
        • *

          * MaxCapacity and NumberOfWorkers must both be at least 1. *

          *
        • *
        *

        * When the WorkerType field is set to a value other than Standard, the * MaxCapacity field is set automatically and becomes read-only. *

        *

        * When the WorkerType field is set to a value other than Standard, the * MaxCapacity field is set automatically and becomes read-only. */ public Double getMaxCapacity() { return this.maxCapacity; } /** *

        * The number of Glue data processing units (DPUs) that are allocated to task runs for this transform. You can * allocate from 2 to 100 DPUs; the default is 10. A DPU is a relative measure of processing power that consists of * 4 vCPUs of compute capacity and 16 GB of memory. For more information, see the Glue pricing page. *

        *

        * MaxCapacity is a mutually exclusive option with NumberOfWorkers and * WorkerType. *

        *
          *
        • *

          * If either NumberOfWorkers or WorkerType is set, then MaxCapacity cannot be * set. *

          *
        • *
        • *

          * If MaxCapacity is set then neither NumberOfWorkers or WorkerType can be * set. *

          *
        • *
        • *

          * If WorkerType is set, then NumberOfWorkers is required (and vice versa). *

          *
        • *
        • *

          * MaxCapacity and NumberOfWorkers must both be at least 1. *

          *
        • *
        *

        * When the WorkerType field is set to a value other than Standard, the * MaxCapacity field is set automatically and becomes read-only. *

        *

        * When the WorkerType field is set to a value other than Standard, the * MaxCapacity field is set automatically and becomes read-only. *

        * * @param maxCapacity * The number of Glue data processing units (DPUs) that are allocated to task runs for this transform. You * can allocate from 2 to 100 DPUs; the default is 10. A DPU is a relative measure of processing power that * consists of 4 vCPUs of compute capacity and 16 GB of memory. For more information, see the Glue pricing page.

        *

        * MaxCapacity is a mutually exclusive option with NumberOfWorkers and * WorkerType. *

        *
          *
        • *

          * If either NumberOfWorkers or WorkerType is set, then MaxCapacity * cannot be set. *

          *
        • *
        • *

          * If MaxCapacity is set then neither NumberOfWorkers or WorkerType * can be set. *

          *
        • *
        • *

          * If WorkerType is set, then NumberOfWorkers is required (and vice versa). *

          *
        • *
        • *

          * MaxCapacity and NumberOfWorkers must both be at least 1. *

          *
        • *
        *

        * When the WorkerType field is set to a value other than Standard, the * MaxCapacity field is set automatically and becomes read-only. *

        *

        * When the WorkerType field is set to a value other than Standard, the * MaxCapacity field is set automatically and becomes read-only. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateMLTransformRequest withMaxCapacity(Double maxCapacity) { setMaxCapacity(maxCapacity); return this; } /** *

        * The type of predefined worker that is allocated when this task runs. Accepts a value of Standard, G.1X, or G.2X. *

        *
          *
        • *

          * For the Standard worker type, each worker provides 4 vCPU, 16 GB of memory and a 50GB disk, and 2 * executors per worker. *

          *
        • *
        • *

          * For the G.1X worker type, each worker provides 4 vCPU, 16 GB of memory and a 64GB disk, and 1 * executor per worker. *

          *
        • *
        • *

          * For the G.2X worker type, each worker provides 8 vCPU, 32 GB of memory and a 128GB disk, and 1 * executor per worker. *

          *
        • *
        *

        * MaxCapacity is a mutually exclusive option with NumberOfWorkers and * WorkerType. *

        *
          *
        • *

          * If either NumberOfWorkers or WorkerType is set, then MaxCapacity cannot be * set. *

          *
        • *
        • *

          * If MaxCapacity is set then neither NumberOfWorkers or WorkerType can be * set. *

          *
        • *
        • *

          * If WorkerType is set, then NumberOfWorkers is required (and vice versa). *

          *
        • *
        • *

          * MaxCapacity and NumberOfWorkers must both be at least 1. *

          *
        • *
        * * @param workerType * The type of predefined worker that is allocated when this task runs. Accepts a value of Standard, G.1X, or * G.2X.

        *
          *
        • *

          * For the Standard worker type, each worker provides 4 vCPU, 16 GB of memory and a 50GB disk, * and 2 executors per worker. *

          *
        • *
        • *

          * For the G.1X worker type, each worker provides 4 vCPU, 16 GB of memory and a 64GB disk, and 1 * executor per worker. *

          *
        • *
        • *

          * For the G.2X worker type, each worker provides 8 vCPU, 32 GB of memory and a 128GB disk, and * 1 executor per worker. *

          *
        • *
        *

        * MaxCapacity is a mutually exclusive option with NumberOfWorkers and * WorkerType. *

        *
          *
        • *

          * If either NumberOfWorkers or WorkerType is set, then MaxCapacity * cannot be set. *

          *
        • *
        • *

          * If MaxCapacity is set then neither NumberOfWorkers or WorkerType * can be set. *

          *
        • *
        • *

          * If WorkerType is set, then NumberOfWorkers is required (and vice versa). *

          *
        • *
        • *

          * MaxCapacity and NumberOfWorkers must both be at least 1. *

          *
        • * @see WorkerType */ public void setWorkerType(String workerType) { this.workerType = workerType; } /** *

          * The type of predefined worker that is allocated when this task runs. Accepts a value of Standard, G.1X, or G.2X. *

          *
            *
          • *

            * For the Standard worker type, each worker provides 4 vCPU, 16 GB of memory and a 50GB disk, and 2 * executors per worker. *

            *
          • *
          • *

            * For the G.1X worker type, each worker provides 4 vCPU, 16 GB of memory and a 64GB disk, and 1 * executor per worker. *

            *
          • *
          • *

            * For the G.2X worker type, each worker provides 8 vCPU, 32 GB of memory and a 128GB disk, and 1 * executor per worker. *

            *
          • *
          *

          * MaxCapacity is a mutually exclusive option with NumberOfWorkers and * WorkerType. *

          *
            *
          • *

            * If either NumberOfWorkers or WorkerType is set, then MaxCapacity cannot be * set. *

            *
          • *
          • *

            * If MaxCapacity is set then neither NumberOfWorkers or WorkerType can be * set. *

            *
          • *
          • *

            * If WorkerType is set, then NumberOfWorkers is required (and vice versa). *

            *
          • *
          • *

            * MaxCapacity and NumberOfWorkers must both be at least 1. *

            *
          • *
          * * @return The type of predefined worker that is allocated when this task runs. Accepts a value of Standard, G.1X, * or G.2X.

          *
            *
          • *

            * For the Standard worker type, each worker provides 4 vCPU, 16 GB of memory and a 50GB disk, * and 2 executors per worker. *

            *
          • *
          • *

            * For the G.1X worker type, each worker provides 4 vCPU, 16 GB of memory and a 64GB disk, and * 1 executor per worker. *

            *
          • *
          • *

            * For the G.2X worker type, each worker provides 8 vCPU, 32 GB of memory and a 128GB disk, and * 1 executor per worker. *

            *
          • *
          *

          * MaxCapacity is a mutually exclusive option with NumberOfWorkers and * WorkerType. *

          *
            *
          • *

            * If either NumberOfWorkers or WorkerType is set, then MaxCapacity * cannot be set. *

            *
          • *
          • *

            * If MaxCapacity is set then neither NumberOfWorkers or WorkerType * can be set. *

            *
          • *
          • *

            * If WorkerType is set, then NumberOfWorkers is required (and vice versa). *

            *
          • *
          • *

            * MaxCapacity and NumberOfWorkers must both be at least 1. *

            *
          • * @see WorkerType */ public String getWorkerType() { return this.workerType; } /** *

            * The type of predefined worker that is allocated when this task runs. Accepts a value of Standard, G.1X, or G.2X. *

            *
              *
            • *

              * For the Standard worker type, each worker provides 4 vCPU, 16 GB of memory and a 50GB disk, and 2 * executors per worker. *

              *
            • *
            • *

              * For the G.1X worker type, each worker provides 4 vCPU, 16 GB of memory and a 64GB disk, and 1 * executor per worker. *

              *
            • *
            • *

              * For the G.2X worker type, each worker provides 8 vCPU, 32 GB of memory and a 128GB disk, and 1 * executor per worker. *

              *
            • *
            *

            * MaxCapacity is a mutually exclusive option with NumberOfWorkers and * WorkerType. *

            *
              *
            • *

              * If either NumberOfWorkers or WorkerType is set, then MaxCapacity cannot be * set. *

              *
            • *
            • *

              * If MaxCapacity is set then neither NumberOfWorkers or WorkerType can be * set. *

              *
            • *
            • *

              * If WorkerType is set, then NumberOfWorkers is required (and vice versa). *

              *
            • *
            • *

              * MaxCapacity and NumberOfWorkers must both be at least 1. *

              *
            • *
            * * @param workerType * The type of predefined worker that is allocated when this task runs. Accepts a value of Standard, G.1X, or * G.2X.

            *
              *
            • *

              * For the Standard worker type, each worker provides 4 vCPU, 16 GB of memory and a 50GB disk, * and 2 executors per worker. *

              *
            • *
            • *

              * For the G.1X worker type, each worker provides 4 vCPU, 16 GB of memory and a 64GB disk, and 1 * executor per worker. *

              *
            • *
            • *

              * For the G.2X worker type, each worker provides 8 vCPU, 32 GB of memory and a 128GB disk, and * 1 executor per worker. *

              *
            • *
            *

            * MaxCapacity is a mutually exclusive option with NumberOfWorkers and * WorkerType. *

            *
              *
            • *

              * If either NumberOfWorkers or WorkerType is set, then MaxCapacity * cannot be set. *

              *
            • *
            • *

              * If MaxCapacity is set then neither NumberOfWorkers or WorkerType * can be set. *

              *
            • *
            • *

              * If WorkerType is set, then NumberOfWorkers is required (and vice versa). *

              *
            • *
            • *

              * MaxCapacity and NumberOfWorkers must both be at least 1. *

              *
            • * @return Returns a reference to this object so that method calls can be chained together. * @see WorkerType */ public CreateMLTransformRequest withWorkerType(String workerType) { setWorkerType(workerType); return this; } /** *

              * The type of predefined worker that is allocated when this task runs. Accepts a value of Standard, G.1X, or G.2X. *

              *
                *
              • *

                * For the Standard worker type, each worker provides 4 vCPU, 16 GB of memory and a 50GB disk, and 2 * executors per worker. *

                *
              • *
              • *

                * For the G.1X worker type, each worker provides 4 vCPU, 16 GB of memory and a 64GB disk, and 1 * executor per worker. *

                *
              • *
              • *

                * For the G.2X worker type, each worker provides 8 vCPU, 32 GB of memory and a 128GB disk, and 1 * executor per worker. *

                *
              • *
              *

              * MaxCapacity is a mutually exclusive option with NumberOfWorkers and * WorkerType. *

              *
                *
              • *

                * If either NumberOfWorkers or WorkerType is set, then MaxCapacity cannot be * set. *

                *
              • *
              • *

                * If MaxCapacity is set then neither NumberOfWorkers or WorkerType can be * set. *

                *
              • *
              • *

                * If WorkerType is set, then NumberOfWorkers is required (and vice versa). *

                *
              • *
              • *

                * MaxCapacity and NumberOfWorkers must both be at least 1. *

                *
              • *
              * * @param workerType * The type of predefined worker that is allocated when this task runs. Accepts a value of Standard, G.1X, or * G.2X.

              *
                *
              • *

                * For the Standard worker type, each worker provides 4 vCPU, 16 GB of memory and a 50GB disk, * and 2 executors per worker. *

                *
              • *
              • *

                * For the G.1X worker type, each worker provides 4 vCPU, 16 GB of memory and a 64GB disk, and 1 * executor per worker. *

                *
              • *
              • *

                * For the G.2X worker type, each worker provides 8 vCPU, 32 GB of memory and a 128GB disk, and * 1 executor per worker. *

                *
              • *
              *

              * MaxCapacity is a mutually exclusive option with NumberOfWorkers and * WorkerType. *

              *
                *
              • *

                * If either NumberOfWorkers or WorkerType is set, then MaxCapacity * cannot be set. *

                *
              • *
              • *

                * If MaxCapacity is set then neither NumberOfWorkers or WorkerType * can be set. *

                *
              • *
              • *

                * If WorkerType is set, then NumberOfWorkers is required (and vice versa). *

                *
              • *
              • *

                * MaxCapacity and NumberOfWorkers must both be at least 1. *

                *
              • * @return Returns a reference to this object so that method calls can be chained together. * @see WorkerType */ public CreateMLTransformRequest withWorkerType(WorkerType workerType) { this.workerType = workerType.toString(); return this; } /** *

                * The number of workers of a defined workerType that are allocated when this task runs. *

                *

                * If WorkerType is set, then NumberOfWorkers is required (and vice versa). *

                * * @param numberOfWorkers * The number of workers of a defined workerType that are allocated when this task runs.

                *

                * If WorkerType is set, then NumberOfWorkers is required (and vice versa). */ public void setNumberOfWorkers(Integer numberOfWorkers) { this.numberOfWorkers = numberOfWorkers; } /** *

                * The number of workers of a defined workerType that are allocated when this task runs. *

                *

                * If WorkerType is set, then NumberOfWorkers is required (and vice versa). *

                * * @return The number of workers of a defined workerType that are allocated when this task runs.

                *

                * If WorkerType is set, then NumberOfWorkers is required (and vice versa). */ public Integer getNumberOfWorkers() { return this.numberOfWorkers; } /** *

                * The number of workers of a defined workerType that are allocated when this task runs. *

                *

                * If WorkerType is set, then NumberOfWorkers is required (and vice versa). *

                * * @param numberOfWorkers * The number of workers of a defined workerType that are allocated when this task runs.

                *

                * If WorkerType is set, then NumberOfWorkers is required (and vice versa). * @return Returns a reference to this object so that method calls can be chained together. */ public CreateMLTransformRequest withNumberOfWorkers(Integer numberOfWorkers) { setNumberOfWorkers(numberOfWorkers); return this; } /** *

                * The timeout of the task run for this transform in minutes. This is the maximum time that a task run for this * transform can consume resources before it is terminated and enters TIMEOUT status. The default is * 2,880 minutes (48 hours). *

                * * @param timeout * The timeout of the task run for this transform in minutes. This is the maximum time that a task run for * this transform can consume resources before it is terminated and enters TIMEOUT status. The * default is 2,880 minutes (48 hours). */ public void setTimeout(Integer timeout) { this.timeout = timeout; } /** *

                * The timeout of the task run for this transform in minutes. This is the maximum time that a task run for this * transform can consume resources before it is terminated and enters TIMEOUT status. The default is * 2,880 minutes (48 hours). *

                * * @return The timeout of the task run for this transform in minutes. This is the maximum time that a task run for * this transform can consume resources before it is terminated and enters TIMEOUT status. The * default is 2,880 minutes (48 hours). */ public Integer getTimeout() { return this.timeout; } /** *

                * The timeout of the task run for this transform in minutes. This is the maximum time that a task run for this * transform can consume resources before it is terminated and enters TIMEOUT status. The default is * 2,880 minutes (48 hours). *

                * * @param timeout * The timeout of the task run for this transform in minutes. This is the maximum time that a task run for * this transform can consume resources before it is terminated and enters TIMEOUT status. The * default is 2,880 minutes (48 hours). * @return Returns a reference to this object so that method calls can be chained together. */ public CreateMLTransformRequest withTimeout(Integer timeout) { setTimeout(timeout); return this; } /** *

                * The maximum number of times to retry a task for this transform after a task run fails. *

                * * @param maxRetries * The maximum number of times to retry a task for this transform after a task run fails. */ public void setMaxRetries(Integer maxRetries) { this.maxRetries = maxRetries; } /** *

                * The maximum number of times to retry a task for this transform after a task run fails. *

                * * @return The maximum number of times to retry a task for this transform after a task run fails. */ public Integer getMaxRetries() { return this.maxRetries; } /** *

                * The maximum number of times to retry a task for this transform after a task run fails. *

                * * @param maxRetries * The maximum number of times to retry a task for this transform after a task run fails. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateMLTransformRequest withMaxRetries(Integer maxRetries) { setMaxRetries(maxRetries); return this; } /** *

                * The tags to use with this machine learning transform. You may use tags to limit access to the machine learning * transform. For more information about tags in Glue, see Amazon Web Services Tags in Glue in the * developer guide. *

                * * @return The tags to use with this machine learning transform. You may use tags to limit access to the machine * learning transform. For more information about tags in Glue, see Amazon Web Services Tags in Glue * in the developer guide. */ public java.util.Map getTags() { return tags; } /** *

                * The tags to use with this machine learning transform. You may use tags to limit access to the machine learning * transform. For more information about tags in Glue, see Amazon Web Services Tags in Glue in the * developer guide. *

                * * @param tags * The tags to use with this machine learning transform. You may use tags to limit access to the machine * learning transform. For more information about tags in Glue, see Amazon Web Services Tags in Glue * in the developer guide. */ public void setTags(java.util.Map tags) { this.tags = tags; } /** *

                * The tags to use with this machine learning transform. You may use tags to limit access to the machine learning * transform. For more information about tags in Glue, see Amazon Web Services Tags in Glue in the * developer guide. *

                * * @param tags * The tags to use with this machine learning transform. You may use tags to limit access to the machine * learning transform. For more information about tags in Glue, see Amazon Web Services Tags in Glue * in the developer guide. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateMLTransformRequest withTags(java.util.Map tags) { setTags(tags); return this; } /** * Add a single Tags entry * * @see CreateMLTransformRequest#withTags * @returns a reference to this object so that method calls can be chained together. */ public CreateMLTransformRequest addTagsEntry(String key, String value) { if (null == this.tags) { this.tags = new java.util.HashMap(); } if (this.tags.containsKey(key)) throw new IllegalArgumentException("Duplicated keys (" + key.toString() + ") are provided."); this.tags.put(key, value); return this; } /** * Removes all the entries added into Tags. * * @return Returns a reference to this object so that method calls can be chained together. */ public CreateMLTransformRequest clearTagsEntries() { this.tags = null; return this; } /** *

                * The encryption-at-rest settings of the transform that apply to accessing user data. Machine learning transforms * can access user data encrypted in Amazon S3 using KMS. *

                * * @param transformEncryption * The encryption-at-rest settings of the transform that apply to accessing user data. Machine learning * transforms can access user data encrypted in Amazon S3 using KMS. */ public void setTransformEncryption(TransformEncryption transformEncryption) { this.transformEncryption = transformEncryption; } /** *

                * The encryption-at-rest settings of the transform that apply to accessing user data. Machine learning transforms * can access user data encrypted in Amazon S3 using KMS. *

                * * @return The encryption-at-rest settings of the transform that apply to accessing user data. Machine learning * transforms can access user data encrypted in Amazon S3 using KMS. */ public TransformEncryption getTransformEncryption() { return this.transformEncryption; } /** *

                * The encryption-at-rest settings of the transform that apply to accessing user data. Machine learning transforms * can access user data encrypted in Amazon S3 using KMS. *

                * * @param transformEncryption * The encryption-at-rest settings of the transform that apply to accessing user data. Machine learning * transforms can access user data encrypted in Amazon S3 using KMS. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateMLTransformRequest withTransformEncryption(TransformEncryption transformEncryption) { setTransformEncryption(transformEncryption); 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 (getName() != null) sb.append("Name: ").append(getName()).append(","); if (getDescription() != null) sb.append("Description: ").append(getDescription()).append(","); if (getInputRecordTables() != null) sb.append("InputRecordTables: ").append(getInputRecordTables()).append(","); if (getParameters() != null) sb.append("Parameters: ").append(getParameters()).append(","); if (getRole() != null) sb.append("Role: ").append(getRole()).append(","); if (getGlueVersion() != null) sb.append("GlueVersion: ").append(getGlueVersion()).append(","); if (getMaxCapacity() != null) sb.append("MaxCapacity: ").append(getMaxCapacity()).append(","); if (getWorkerType() != null) sb.append("WorkerType: ").append(getWorkerType()).append(","); if (getNumberOfWorkers() != null) sb.append("NumberOfWorkers: ").append(getNumberOfWorkers()).append(","); if (getTimeout() != null) sb.append("Timeout: ").append(getTimeout()).append(","); if (getMaxRetries() != null) sb.append("MaxRetries: ").append(getMaxRetries()).append(","); if (getTags() != null) sb.append("Tags: ").append(getTags()).append(","); if (getTransformEncryption() != null) sb.append("TransformEncryption: ").append(getTransformEncryption()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof CreateMLTransformRequest == false) return false; CreateMLTransformRequest other = (CreateMLTransformRequest) obj; if (other.getName() == null ^ this.getName() == null) return false; if (other.getName() != null && other.getName().equals(this.getName()) == false) return false; if (other.getDescription() == null ^ this.getDescription() == null) return false; if (other.getDescription() != null && other.getDescription().equals(this.getDescription()) == false) return false; if (other.getInputRecordTables() == null ^ this.getInputRecordTables() == null) return false; if (other.getInputRecordTables() != null && other.getInputRecordTables().equals(this.getInputRecordTables()) == false) return false; if (other.getParameters() == null ^ this.getParameters() == null) return false; if (other.getParameters() != null && other.getParameters().equals(this.getParameters()) == false) return false; if (other.getRole() == null ^ this.getRole() == null) return false; if (other.getRole() != null && other.getRole().equals(this.getRole()) == false) return false; if (other.getGlueVersion() == null ^ this.getGlueVersion() == null) return false; if (other.getGlueVersion() != null && other.getGlueVersion().equals(this.getGlueVersion()) == false) return false; if (other.getMaxCapacity() == null ^ this.getMaxCapacity() == null) return false; if (other.getMaxCapacity() != null && other.getMaxCapacity().equals(this.getMaxCapacity()) == false) return false; if (other.getWorkerType() == null ^ this.getWorkerType() == null) return false; if (other.getWorkerType() != null && other.getWorkerType().equals(this.getWorkerType()) == false) return false; if (other.getNumberOfWorkers() == null ^ this.getNumberOfWorkers() == null) return false; if (other.getNumberOfWorkers() != null && other.getNumberOfWorkers().equals(this.getNumberOfWorkers()) == false) return false; if (other.getTimeout() == null ^ this.getTimeout() == null) return false; if (other.getTimeout() != null && other.getTimeout().equals(this.getTimeout()) == false) return false; if (other.getMaxRetries() == null ^ this.getMaxRetries() == null) return false; if (other.getMaxRetries() != null && other.getMaxRetries().equals(this.getMaxRetries()) == false) return false; if (other.getTags() == null ^ this.getTags() == null) return false; if (other.getTags() != null && other.getTags().equals(this.getTags()) == false) return false; if (other.getTransformEncryption() == null ^ this.getTransformEncryption() == null) return false; if (other.getTransformEncryption() != null && other.getTransformEncryption().equals(this.getTransformEncryption()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getName() == null) ? 0 : getName().hashCode()); hashCode = prime * hashCode + ((getDescription() == null) ? 0 : getDescription().hashCode()); hashCode = prime * hashCode + ((getInputRecordTables() == null) ? 0 : getInputRecordTables().hashCode()); hashCode = prime * hashCode + ((getParameters() == null) ? 0 : getParameters().hashCode()); hashCode = prime * hashCode + ((getRole() == null) ? 0 : getRole().hashCode()); hashCode = prime * hashCode + ((getGlueVersion() == null) ? 0 : getGlueVersion().hashCode()); hashCode = prime * hashCode + ((getMaxCapacity() == null) ? 0 : getMaxCapacity().hashCode()); hashCode = prime * hashCode + ((getWorkerType() == null) ? 0 : getWorkerType().hashCode()); hashCode = prime * hashCode + ((getNumberOfWorkers() == null) ? 0 : getNumberOfWorkers().hashCode()); hashCode = prime * hashCode + ((getTimeout() == null) ? 0 : getTimeout().hashCode()); hashCode = prime * hashCode + ((getMaxRetries() == null) ? 0 : getMaxRetries().hashCode()); hashCode = prime * hashCode + ((getTags() == null) ? 0 : getTags().hashCode()); hashCode = prime * hashCode + ((getTransformEncryption() == null) ? 0 : getTransformEncryption().hashCode()); return hashCode; } @Override public CreateMLTransformRequest clone() { return (CreateMLTransformRequest) super.clone(); } }