class DatePartition extends BasePartition implements JdbcFragmentMetadata {

    @Override
    public String toSqlConstraint(String quoteString, DbProduct dbProduct) {
        if (quoteString == null) {
            throw new RuntimeException("Quote string cannot be null");
        }
        if (dbProduct == null) {
            throw new RuntimeException(String.format(
                    "DbProduct cannot be null for partitions of type '%s'", PartitionType.DATE
            ));
        }

        return generateRangeConstraint(
                quoteString + column + quoteString,
                Stream.of(boundaries).map(b -> b == null ? null : dbProduct.wrapDate(b)).toArray(String[]::new)
        );
    }

    public  DatePartition(String column, LocalDate start, LocalDate end);

}