private List getNestedFields()

in src/main/java/com/epam/digital/data/platform/generator/factory/impl/asyncload/AsyncDataLoadEntityScopeFactory.java [99:124]


  private List<Field> getNestedFields(
      String structureName, NestedNode element, List<Column> columns) {
    return columns.stream()
        .map(
            column -> {
              var childElement = element.getChildNodes().get(column.getName());

              String clazzName;
              if (childElement.getChildNodes().isEmpty()) {
                clazzName = getSchemaName(childElement.getTableName()) + "Model";
              } else {
                clazzName =
                    getSchemaName(structureName, childElement.getTableName()) + "NestedCsv";
              }
              var field = new Field();
              field.setName(getPropertyName(childElement.getTableName()));
              field.setType(typeToString(clazzName, column));
              field.setConstraints(Stream.concat(
                      Stream.of(new Constraint("@com.fasterxml.jackson.annotation.JsonUnwrapped",
                          List.of(new Content("prefix", "\"" + childElement.getTableName() + ".\"")))),
                      constraintProviders.getConstraintForProperty(column, clazzName).stream())
                  .collect(Collectors.toList()));
              return field;
            })
        .collect(toList());
  }