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

com.amazonaws.services.stepfunctions.builder.states.ParametersBuilder Maven / Gradle / Ivy

/*
 * Copyright 2010-2020 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.stepfunctions.builder.states;

/**
 * Interface for all builders that expose the 'Parameters' field.
 *
 * 

This interface should not be implemented outside the SDK.

* * @param Type of concrete builder (for method chaining). */ public interface ParametersBuilder { /** * OPTIONAL. The value of "Parameters" MUST be a valid JSON document. This field forms the effective input to the Task * if present. Values from the input to the state can be interpolated via a JSON path expression. To be interpolated the * field name of the JSON object must end in the suffix ".$". See example below. * *

Given the following Parameters definition. *

     * {@code
     * {
     * ...
     *   "Parameters": {
     *      "flagged": true,
     *      "parts": {
     *         "first.$": "$.vals[0]",
     *         "last3.$": "$.vals[3:]"
     *      }
     *   }
     * ...
     * }
     * }
     * 
* * And suppose that the input to the state is as follows: *
     * {@code
     * {
     *    "flagged": 7,
     *    "vals": [0, 10, 20, 30, 40, 50]
     * }
     * }
     * 
* * Then the effective input to the task will be as follows: *
     * {@code
     * {
     *    "flagged": true,
     *    "parts": {
     *       "first": 0,
     *       "last3": [30, 40, 50]
     *    }
     * }
     * }
     * 
* * @param parameters Raw JSON string representing Parameters value. * @return This object for method chaining. */ BuilderT parameters(String parameters); /** * OPTIONAL. The value of "Parameters" MUST be a valid JSON document. This field forms the effective input to the Task * if present. Values from the input to the state can be interpolated via a JSON path expression. To be interpolated the * field name of the JSON object must end in the suffix ".$". See example below. * *

Given the following Parameters definition. *

     * {@code
     * {
     * ...
     *   "Parameters": {
     *      "flagged": true,
     *      "parts": {
     *         "first.$": "$.vals[0]",
     *         "last3.$": "$.vals[3:]"
     *      }
     *   }
     * ...
     * }
     * }
     * 
* * And suppose that the input to the state is as follows: *
     * {@code
     * {
     *    "flagged": 7,
     *    "vals": [0, 10, 20, 30, 40, 50]
     * }
     * }
     * 
* * Then the effective input to the task will be as follows: *
     * {@code
     * {
     *    "flagged": true,
     *    "parts": {
     *       "first": 0,
     *       "last3": [30, 40, 50]
     *    }
     * }
     * }
     * 
* * @param parameters Object that will be serialized into the JSON document representing this states parameters. * @return This object for method chaining. */ BuilderT parameters(Object parameters); }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy