Configure comment prefixes

Closes gh-29095
This commit is contained in:
Stephane Nicoll
2021-12-20 17:47:50 +01:00
parent 53654a0160
commit 653fdbd0a4
4 changed files with 64 additions and 1 deletions

View File

@@ -24,6 +24,8 @@ import org.springframework.boot.jdbc.DatabaseDriver;
import org.springframework.boot.jdbc.init.DataSourceScriptDatabaseInitializer;
import org.springframework.boot.jdbc.init.PlatformPlaceholderDatabaseDriverResolver;
import org.springframework.boot.sql.init.DatabaseInitializationSettings;
import org.springframework.jdbc.datasource.init.ResourceDatabasePopulator;
import org.springframework.util.ObjectUtils;
import org.springframework.util.StringUtils;
/**
@@ -37,6 +39,8 @@ import org.springframework.util.StringUtils;
*/
public class QuartzDataSourceScriptDatabaseInitializer extends DataSourceScriptDatabaseInitializer {
private final List<String> commentPrefixes;
/**
* Create a new {@link QuartzDataSourceScriptDatabaseInitializer} instance.
* @param dataSource the Quartz Scheduler data source
@@ -44,7 +48,7 @@ public class QuartzDataSourceScriptDatabaseInitializer extends DataSourceScriptD
* @see #getSettings
*/
public QuartzDataSourceScriptDatabaseInitializer(DataSource dataSource, QuartzProperties properties) {
this(dataSource, getSettings(dataSource, properties));
this(dataSource, getSettings(dataSource, properties), properties.getJdbc().getCommentPrefix());
}
/**
@@ -54,7 +58,20 @@ public class QuartzDataSourceScriptDatabaseInitializer extends DataSourceScriptD
* @see #getSettings
*/
public QuartzDataSourceScriptDatabaseInitializer(DataSource dataSource, DatabaseInitializationSettings settings) {
this(dataSource, settings, null);
}
private QuartzDataSourceScriptDatabaseInitializer(DataSource dataSource, DatabaseInitializationSettings settings,
List<String> commentPrefixes) {
super(dataSource, settings);
this.commentPrefixes = commentPrefixes;
}
@Override
protected void customize(ResourceDatabasePopulator populator) {
if (!ObjectUtils.isEmpty(this.commentPrefixes)) {
populator.setCommentPrefixes(this.commentPrefixes.toArray(new String[0]));
}
}
/**