protected List statementsForColumnsWithAutoGeneratedValues()

in src/main/java/com/epam/digital/data/platform/liquibase/extension/change/core/DdmAddColumnChange.java [539:555]


    protected List<SqlStatement> statementsForColumnsWithAutoGeneratedValues(String tableName, List<AddColumnConfig> columns) {
        List<SqlStatement> result = new ArrayList<>();
        for (AddColumnConfig columnConfig : columns) {
            if (DdmAddColumnConfig.class.isAssignableFrom(columnConfig.getClass())) {
                DdmAddColumnConfig column = (DdmAddColumnConfig) columnConfig;
                if (column.getAutoGenerate() != null) {
                    result.add(new DdmCreateSequenceStatement(tableName, column.getName()));
                    result.add(new RawSqlStatement(
                        String.format(GRANT_USAGE_ON_SEQUENCE, tableName, column.getName(),
                            "application_role")));
                    result.add(DdmUtils.insertMetadataSql(DdmConstants.ATTRIBUTE_AUTOGENERATE,
                        getTableName(), column.getName(), column.getAutoGenerate()));
                }
            }
        }
        return result;
    }