/* * Copyright 2010-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.stepfunctions.builder.states; /** * Interface for all builders that expose the 'Parameters' field. * *
This interface should not be implemented outside the SDK.
* * @param
* {@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);
}