public static List buildRequestRecipeSteps()

in aws-databrew-recipe/src/main/java/software/amazon/databrew/recipe/ModelHelper.java [95:132]


    public static List<RecipeStep> buildRequestRecipeSteps(final List<software.amazon.databrew.recipe.RecipeStep> modelRecipeSteps) {
        List<RecipeStep> requestRecipeSteps = new ArrayList<>();
        if (modelRecipeSteps != null) {
            modelRecipeSteps.forEach(step -> {
                Action modelRecipeAction = step.getAction();
                Object parameters = modelRecipeAction.getParameters();
                Map<String, String> tempMap = mapper.convertValue(parameters, new TypeReference<Map<String, String>>() { });
                Map<String, String> parametersMap = new HashMap<>();
                if (tempMap != null) {
                    tempMap.forEach((key, value) -> parametersMap.put(Character.toLowerCase(key.charAt(0)) + key.substring(1), value));
                }
                RecipeAction requestRecipeAction = RecipeAction.builder()
                        .operation(modelRecipeAction.getOperation())
                        .parameters(parametersMap)
                        .build();

                List<software.amazon.databrew.recipe.ConditionExpression> modelConditionExpressions = step.getConditionExpressions();
                List<ConditionExpression> requestConditionExpressions = new ArrayList<>();
                if (modelConditionExpressions != null){
                    modelConditionExpressions.forEach(condition -> {
                        ConditionExpression requestConditionExp = ConditionExpression.builder()
                                .condition(condition.getCondition())
                                .value(condition.getValue())
                                .targetColumn(condition.getTargetColumn())
                                .build();
                        requestConditionExpressions.add(requestConditionExp);
                    });
                }

                RecipeStep recipeStep = RecipeStep.builder()
                        .action(requestRecipeAction)
                        .conditionExpressions(requestConditionExpressions)
                        .build();
                requestRecipeSteps.add(recipeStep);
            });
        }
        return requestRecipeSteps;
    }