mirror of
https://github.com/ebean-orm/ebean.git
synced 2024-04-21 10:51:47 +00:00
Split DatabaseBuilder interface separating the setters n getters adding DatabaseBuilder.Settings
So DatabaseBuilder.Settings has all the getters for code looking to read the configuration that has been set. So DatabaseBuilder now just has the setter methods. Use DatabaseBuilder.settings() to access the settings and read the config that has been set.
This commit is contained in:
@@ -29,13 +29,13 @@
|
||||
<dependency>
|
||||
<groupId>io.ebean</groupId>
|
||||
<artifactId>ebean-joda-time</artifactId>
|
||||
<version>13.24.0-RC1</version>
|
||||
<version>13.24.0-RC2</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>io.ebean</groupId>
|
||||
<artifactId>ebean-jackson-jsonnode</artifactId>
|
||||
<version>13.24.0-RC1</version>
|
||||
<version>13.24.0-RC2</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -75,9 +75,10 @@ public final class DatabaseFactory {
|
||||
*
|
||||
* }</pre>
|
||||
*/
|
||||
public static Database create(DatabaseBuilder config) {
|
||||
public static Database create(DatabaseBuilder builder) {
|
||||
lock.lock();
|
||||
try {
|
||||
var config = builder.settings();
|
||||
if (config.getName() == null) {
|
||||
throw new PersistenceException("The name is null (it is required)");
|
||||
}
|
||||
@@ -131,7 +132,7 @@ public final class DatabaseFactory {
|
||||
}
|
||||
}
|
||||
|
||||
private static Database createInternal(DatabaseBuilder config) {
|
||||
private static Database createInternal(DatabaseBuilder.Settings config) {
|
||||
return container(config.getContainerConfig()).createServer(config);
|
||||
}
|
||||
|
||||
|
||||
@@ -61,7 +61,7 @@ import java.util.function.Function;
|
||||
* @author rbygrave
|
||||
* @see DatabaseFactory
|
||||
*/
|
||||
public class DatabaseConfig implements DatabaseBuilder {
|
||||
public class DatabaseConfig implements DatabaseBuilder.Settings {
|
||||
|
||||
/**
|
||||
* The Database name.
|
||||
@@ -548,6 +548,11 @@ public class DatabaseConfig implements DatabaseBuilder {
|
||||
public DatabaseConfig() {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Settings settings() {
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Clock getClock() {
|
||||
return clock;
|
||||
|
||||
@@ -16,7 +16,7 @@ public interface SpiServer extends Database {
|
||||
/**
|
||||
* Return the DatabaseConfig.
|
||||
*/
|
||||
DatabaseBuilder config();
|
||||
DatabaseBuilder.Settings config();
|
||||
|
||||
/**
|
||||
* Return the DatabasePlatform for this database.
|
||||
|
||||
@@ -18,7 +18,7 @@ class DatabaseConfigTest {
|
||||
|
||||
@Test
|
||||
void testLoadFromEbeanProperties() {
|
||||
DatabaseBuilder config = new DatabaseConfig();
|
||||
var config = new DatabaseConfig().settings();
|
||||
config.loadFromProperties();
|
||||
|
||||
assertEquals(PersistBatch.NONE, config.getPersistBatch());
|
||||
@@ -33,7 +33,7 @@ class DatabaseConfigTest {
|
||||
Properties props = new Properties();
|
||||
props.setProperty("ddl.initSql", "${user.home}" + fileSeparator + "initSql");
|
||||
|
||||
DatabaseBuilder config = new DatabaseConfig();
|
||||
var config = new DatabaseConfig().settings();
|
||||
config.loadFromProperties(props);
|
||||
|
||||
String ddlInitSql = config.getDdlInitSql();
|
||||
@@ -84,46 +84,47 @@ class DatabaseConfigTest {
|
||||
|
||||
config.loadFromProperties(props);
|
||||
|
||||
assertFalse(config.isDefaultServer());
|
||||
assertTrue(config.isDisableL2Cache());
|
||||
assertTrue(config.isNotifyL2CacheInForeground());
|
||||
assertTrue(config.isDbOffline());
|
||||
assertTrue(config.isAutoReadOnlyDataSource());
|
||||
assertTrue(config.isAutoLoadModuleInfo());
|
||||
assertTrue(config.isLoadModuleInfo());
|
||||
assertTrue(config.skipDataSourceCheck());
|
||||
var settings = config.settings();
|
||||
assertFalse(settings.isDefaultServer());
|
||||
assertTrue(settings.isDisableL2Cache());
|
||||
assertTrue(settings.isNotifyL2CacheInForeground());
|
||||
assertTrue(settings.isDbOffline());
|
||||
assertTrue(settings.isAutoReadOnlyDataSource());
|
||||
assertTrue(settings.isAutoLoadModuleInfo());
|
||||
assertTrue(settings.isLoadModuleInfo());
|
||||
assertTrue(settings.skipDataSourceCheck());
|
||||
|
||||
assertTrue(config.isIdGeneratorAutomatic());
|
||||
assertFalse(config.getPlatformConfig().isCaseSensitiveCollation());
|
||||
assertTrue(config.getPlatformConfig().isForUpdateNoKey());
|
||||
assertTrue(settings.isIdGeneratorAutomatic());
|
||||
assertFalse(settings.getPlatformConfig().isCaseSensitiveCollation());
|
||||
assertTrue(settings.getPlatformConfig().isForUpdateNoKey());
|
||||
|
||||
assertThat(config.getNamingConvention()).isInstanceOf(MatchingNamingConvention.class);
|
||||
assertThat(settings.getNamingConvention()).isInstanceOf(MatchingNamingConvention.class);
|
||||
|
||||
assertEquals(MutationDetection.NONE, config.getJsonMutationDetection());
|
||||
assertEquals(MutationDetection.NONE, settings.getJsonMutationDetection());
|
||||
config.setJsonMutationDetection(MutationDetection.SOURCE);
|
||||
assertEquals(MutationDetection.SOURCE, config.getJsonMutationDetection());
|
||||
assertEquals(IdType.SEQUENCE, config.getIdType());
|
||||
assertEquals(PersistBatch.ALL, config.getPersistBatch());
|
||||
assertEquals(PersistBatch.ALL, config.getPersistBatchOnCascade());
|
||||
Assertions.assertEquals(PlatformConfig.DbUuid.BINARY, config.getPlatformConfig().getDbUuid());
|
||||
Assertions.assertEquals(JsonConfig.DateTime.MILLIS, config.getJsonDateTime());
|
||||
assertEquals(JsonConfig.Date.MILLIS, config.getJsonDate());
|
||||
assertEquals(MutationDetection.SOURCE, settings.getJsonMutationDetection());
|
||||
assertEquals(IdType.SEQUENCE, settings.getIdType());
|
||||
assertEquals(PersistBatch.ALL, settings.getPersistBatch());
|
||||
assertEquals(PersistBatch.ALL, settings.getPersistBatchOnCascade());
|
||||
Assertions.assertEquals(PlatformConfig.DbUuid.BINARY, settings.getPlatformConfig().getDbUuid());
|
||||
Assertions.assertEquals(JsonConfig.DateTime.MILLIS, settings.getJsonDateTime());
|
||||
assertEquals(JsonConfig.Date.MILLIS, settings.getJsonDate());
|
||||
|
||||
assertEquals("r0,users,orgs", config.getEnabledL2Regions());
|
||||
assertEquals("r0,users,orgs", settings.getEnabledL2Regions());
|
||||
|
||||
assertEquals(42, config.getJdbcFetchSizeFindEach());
|
||||
assertEquals(43, config.getJdbcFetchSizeFindList());
|
||||
assertEquals(4, config.getBackgroundExecutorSchedulePoolSize());
|
||||
assertEquals(98, config.getBackgroundExecutorShutdownSecs());
|
||||
assertEquals(42, settings.getJdbcFetchSizeFindEach());
|
||||
assertEquals(43, settings.getJdbcFetchSizeFindList());
|
||||
assertEquals(4, settings.getBackgroundExecutorSchedulePoolSize());
|
||||
assertEquals(98, settings.getBackgroundExecutorShutdownSecs());
|
||||
|
||||
assertTrue(config.isQueryPlanEnable());
|
||||
assertEquals(10000, config.getQueryPlanThresholdMicros());
|
||||
assertTrue(config.isQueryPlanCapture());
|
||||
assertEquals(42, config.getQueryPlanCapturePeriodSecs());
|
||||
assertEquals(560, config.getQueryPlanCaptureMaxTimeMillis());
|
||||
assertEquals(7, config.getQueryPlanCaptureMaxCount());
|
||||
assertTrue(settings.isQueryPlanEnable());
|
||||
assertEquals(10000, settings.getQueryPlanThresholdMicros());
|
||||
assertTrue(settings.isQueryPlanCapture());
|
||||
assertEquals(42, settings.getQueryPlanCapturePeriodSecs());
|
||||
assertEquals(560, settings.getQueryPlanCaptureMaxTimeMillis());
|
||||
assertEquals(7, settings.getQueryPlanCaptureMaxCount());
|
||||
|
||||
assertThat(config.getMappingLocations()).containsExactly("classpath:/foo","bar");
|
||||
assertThat(settings.getMappingLocations()).containsExactly("classpath:/foo","bar");
|
||||
|
||||
config.setPersistBatch(PersistBatch.NONE);
|
||||
config.setPersistBatchOnCascade(PersistBatch.NONE);
|
||||
@@ -138,19 +139,19 @@ class DatabaseConfigTest {
|
||||
props1.setProperty("ebean.notifyL2CacheInForeground", "false");
|
||||
|
||||
config.loadFromProperties(props1);
|
||||
assertFalse(config.isDisableL2Cache());
|
||||
assertFalse(config.isNotifyL2CacheInForeground());
|
||||
assertFalse(settings.isDisableL2Cache());
|
||||
assertFalse(settings.isNotifyL2CacheInForeground());
|
||||
|
||||
assertEquals(PersistBatch.ALL, config.getPersistBatch());
|
||||
assertEquals(PersistBatch.ALL, config.getPersistBatchOnCascade());
|
||||
assertEquals(PersistBatch.ALL, settings.getPersistBatch());
|
||||
assertEquals(PersistBatch.ALL, settings.getPersistBatchOnCascade());
|
||||
|
||||
config.setEnabledL2Regions("r0,orgs");
|
||||
assertEquals("r0,orgs", config.getEnabledL2Regions());
|
||||
assertEquals("r0,orgs", settings.getEnabledL2Regions());
|
||||
}
|
||||
|
||||
@Test
|
||||
void test_defaults() {
|
||||
DatabaseBuilder config = new DatabaseConfig();
|
||||
DatabaseBuilder.Settings config = new DatabaseConfig().settings();
|
||||
assertTrue(config.isIdGeneratorAutomatic());
|
||||
assertTrue(config.isDefaultServer());
|
||||
assertFalse(config.isAutoPersistUpdates());
|
||||
@@ -185,7 +186,7 @@ class DatabaseConfigTest {
|
||||
void test_putServiceObject() {
|
||||
ObjectMapper objectMapper = new ObjectMapper();
|
||||
|
||||
DatabaseBuilder config = new DatabaseConfig();
|
||||
var config = new DatabaseConfig().settings();
|
||||
config.putServiceObject(objectMapper);
|
||||
|
||||
ObjectMapper mapper0 = config.getServiceObject(ObjectMapper.class);
|
||||
|
||||
+2
-2
@@ -113,13 +113,13 @@
|
||||
<dependency>
|
||||
<groupId>io.ebean</groupId>
|
||||
<artifactId>ebean-joda-time</artifactId>
|
||||
<version>13.24.0-RC1</version>
|
||||
<version>13.24.0-RC2</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>io.ebean</groupId>
|
||||
<artifactId>ebean-jackson-jsonnode</artifactId>
|
||||
<version>13.24.0-RC1</version>
|
||||
<version>13.24.0-RC2</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
|
||||
@@ -12,5 +12,5 @@ public interface ExtraTypeFactory {
|
||||
/**
|
||||
* Provide extra types to Ebean.
|
||||
*/
|
||||
List<? extends ScalarType<?>> createTypes(DatabaseBuilder config, Object objectMapper);
|
||||
List<? extends ScalarType<?>> createTypes(DatabaseBuilder.Settings config, Object objectMapper);
|
||||
}
|
||||
|
||||
@@ -12,6 +12,6 @@ public interface ScalarTypeSetFactory {
|
||||
* Create the ScalarTypeSet given the config and optional objectMapper.
|
||||
*/
|
||||
@Nullable
|
||||
ScalarTypeSet<?> createTypeSet(DatabaseBuilder config, @Nullable Object objectMapper);
|
||||
ScalarTypeSet<?> createTypeSet(DatabaseBuilder.Settings config, @Nullable Object objectMapper);
|
||||
|
||||
}
|
||||
|
||||
@@ -11,5 +11,5 @@ public interface GeoTypeProvider {
|
||||
/**
|
||||
* Create a binder for binding geometry types.
|
||||
*/
|
||||
GeoTypeBinder createBinder(DatabaseBuilder config);
|
||||
GeoTypeBinder createBinder(DatabaseBuilder.Settings config);
|
||||
}
|
||||
|
||||
+2
-2
@@ -13,7 +13,7 @@ import io.ebeaninternal.server.cluster.ClusterManager;
|
||||
public final class CacheManagerOptions {
|
||||
|
||||
private final ClusterManager clusterManager;
|
||||
private final DatabaseBuilder databaseBuilder;
|
||||
private final DatabaseBuilder.Settings databaseBuilder;
|
||||
private final boolean localL2Caching;
|
||||
private CurrentTenantProvider currentTenantProvider;
|
||||
private QueryCacheEntryValidate queryCacheEntryValidate;
|
||||
@@ -30,7 +30,7 @@ public final class CacheManagerOptions {
|
||||
this.queryDefault = new ServerCacheOptions();
|
||||
}
|
||||
|
||||
public CacheManagerOptions(ClusterManager clusterManager, DatabaseBuilder config, boolean localL2Caching) {
|
||||
public CacheManagerOptions(ClusterManager clusterManager, DatabaseBuilder.Settings config, boolean localL2Caching) {
|
||||
this.clusterManager = clusterManager;
|
||||
this.databaseBuilder = config;
|
||||
this.localL2Caching = localL2Caching;
|
||||
|
||||
@@ -16,7 +16,7 @@ public class ClassPathScanners {
|
||||
/**
|
||||
* Return the list of ClassPathScanner services using DatabaseConfig service loader.
|
||||
*/
|
||||
public static List<ClassPathScanner> find(DatabaseBuilder config) {
|
||||
public static List<ClassPathScanner> find(DatabaseBuilder.Settings config) {
|
||||
List<ClassPathScanner> scanners = new ArrayList<>();
|
||||
for (ClassPathScannerFactory factory : ServiceLoader.load(ClassPathScannerFactory.class)) {
|
||||
scanners.add(factory.createScanner(config.getClassLoadConfig().getClassLoader()));
|
||||
|
||||
@@ -37,7 +37,7 @@ public class DatabasePlatformFactory {
|
||||
/**
|
||||
* Create the appropriate database specific platform.
|
||||
*/
|
||||
public DatabasePlatform create(DatabaseBuilder config) {
|
||||
public DatabasePlatform create(DatabaseBuilder.Settings config) {
|
||||
try {
|
||||
String offlinePlatform = DbOffline.getPlatform();
|
||||
if (offlinePlatform != null) {
|
||||
|
||||
@@ -58,7 +58,8 @@ public final class DefaultContainer implements SpiContainer {
|
||||
return createServer(config);
|
||||
}
|
||||
|
||||
private SpiBackgroundExecutor createBackgroundExecutor(DatabaseBuilder config) {
|
||||
private SpiBackgroundExecutor createBackgroundExecutor(DatabaseBuilder builder) {
|
||||
var config = builder.settings();
|
||||
String namePrefix = "ebean-" + config.getName();
|
||||
int schedulePoolSize = config.getBackgroundExecutorSchedulePoolSize();
|
||||
int shutdownSecs = config.getBackgroundExecutorShutdownSecs();
|
||||
@@ -70,9 +71,10 @@ public final class DefaultContainer implements SpiContainer {
|
||||
* Create the implementation from the configuration.
|
||||
*/
|
||||
@Override
|
||||
public SpiEbeanServer createServer(DatabaseBuilder config) {
|
||||
public SpiEbeanServer createServer(DatabaseBuilder builder) {
|
||||
lock.lock();
|
||||
try {
|
||||
var config = builder.settings();
|
||||
long start = System.currentTimeMillis();
|
||||
applyConfigServices(config);
|
||||
setNamingConvention(config);
|
||||
@@ -116,7 +118,7 @@ public final class DefaultContainer implements SpiContainer {
|
||||
}
|
||||
}
|
||||
|
||||
private void applyConfigServices(DatabaseBuilder config) {
|
||||
private void applyConfigServices(DatabaseBuilder.Settings config) {
|
||||
if (config.isDefaultServer()) {
|
||||
for (DatabaseConfigProvider configProvider : ServiceLoader.load(DatabaseConfigProvider.class)) {
|
||||
configProvider.apply(config);
|
||||
@@ -159,7 +161,7 @@ public final class DefaultContainer implements SpiContainer {
|
||||
* Get the entities, scalarTypes, Listeners etc combining the class registered
|
||||
* ones with the already created instances.
|
||||
*/
|
||||
private BootupClasses bootupClasses(DatabaseBuilder config) {
|
||||
private BootupClasses bootupClasses(DatabaseBuilder.Settings config) {
|
||||
BootupClasses bootup = bootupClasses1(config);
|
||||
bootup.addServerConfigStartup(config.getServerConfigStartupListeners());
|
||||
bootup.runServerConfigStartup(config);
|
||||
@@ -177,7 +179,7 @@ public final class DefaultContainer implements SpiContainer {
|
||||
/**
|
||||
* Get the class based entities, scalarTypes, Listeners etc.
|
||||
*/
|
||||
private BootupClasses bootupClasses1(DatabaseBuilder config) {
|
||||
private BootupClasses bootupClasses1(DatabaseBuilder.Settings config) {
|
||||
Set<Class<?>> classes = config.classes();
|
||||
if (config.isDisableClasspathSearch() || (classes != null && !classes.isEmpty())) {
|
||||
// use classes we explicitly added via configuration
|
||||
@@ -189,7 +191,7 @@ public final class DefaultContainer implements SpiContainer {
|
||||
/**
|
||||
* Set the naming convention to underscore if it has not already been set.
|
||||
*/
|
||||
private void setNamingConvention(DatabaseBuilder config) {
|
||||
private void setNamingConvention(DatabaseBuilder.Settings config) {
|
||||
if (config.getNamingConvention() == null) {
|
||||
config.setNamingConvention(new UnderscoreNamingConvention());
|
||||
}
|
||||
@@ -198,7 +200,7 @@ public final class DefaultContainer implements SpiContainer {
|
||||
/**
|
||||
* Set the DatabasePlatform if it has not already been set.
|
||||
*/
|
||||
private void setDatabasePlatform(DatabaseBuilder config) {
|
||||
private void setDatabasePlatform(DatabaseBuilder.Settings config) {
|
||||
DatabasePlatform platform = config.getDatabasePlatform();
|
||||
if (platform == null) {
|
||||
if (config.getTenantMode().isDynamicDataSource()) {
|
||||
@@ -214,7 +216,7 @@ public final class DefaultContainer implements SpiContainer {
|
||||
/**
|
||||
* Set the DataSource if it has not already been set.
|
||||
*/
|
||||
private void setDataSource(DatabaseBuilder config) {
|
||||
private void setDataSource(DatabaseBuilder.Settings config) {
|
||||
if (isOfflineMode(config)) {
|
||||
log.log(DEBUG, "... DbOffline using platform [{0}]", DbOffline.getPlatform());
|
||||
} else {
|
||||
@@ -222,7 +224,7 @@ public final class DefaultContainer implements SpiContainer {
|
||||
}
|
||||
}
|
||||
|
||||
private boolean isOfflineMode(DatabaseBuilder config) {
|
||||
private boolean isOfflineMode(DatabaseBuilder.Settings config) {
|
||||
return config.isDbOffline() || DbOffline.isSet();
|
||||
}
|
||||
|
||||
@@ -236,7 +238,7 @@ public final class DefaultContainer implements SpiContainer {
|
||||
* checking may not work as expected.
|
||||
* </p>
|
||||
*/
|
||||
private boolean checkDataSource(DatabaseBuilder config) {
|
||||
private boolean checkDataSource(DatabaseBuilder.Settings config) {
|
||||
if (isOfflineMode(config)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -76,7 +76,7 @@ public final class DefaultServer implements SpiServer, SpiEbeanServer {
|
||||
private static final System.Logger log = CoreLog.internal;
|
||||
|
||||
private final ReentrantLock lock = new ReentrantLock();
|
||||
private final DatabaseBuilder config;
|
||||
private final DatabaseBuilder.Settings config;
|
||||
private final String serverName;
|
||||
private final DatabasePlatform databasePlatform;
|
||||
private final TransactionManager transactionManager;
|
||||
@@ -170,7 +170,7 @@ public final class DefaultServer implements SpiServer, SpiEbeanServer {
|
||||
/**
|
||||
* Create the CallStackFactory depending if AutoTune is being used.
|
||||
*/
|
||||
private CallOriginFactory initCallStackFactory(DatabaseBuilder config) {
|
||||
private CallOriginFactory initCallStackFactory(DatabaseBuilder.Settings config) {
|
||||
if (!config.getAutoTuneConfig().isActive()) {
|
||||
// use a common CallStack for performance as we don't care with no AutoTune
|
||||
return new NoopCallOriginFactory();
|
||||
@@ -224,7 +224,7 @@ public final class DefaultServer implements SpiServer, SpiEbeanServer {
|
||||
}
|
||||
|
||||
@Override
|
||||
public DatabaseBuilder config() {
|
||||
public DatabaseBuilder.Settings config() {
|
||||
return config;
|
||||
}
|
||||
|
||||
|
||||
@@ -12,16 +12,16 @@ import javax.sql.DataSource;
|
||||
*/
|
||||
final class InitDataSource {
|
||||
|
||||
private final DatabaseBuilder config;
|
||||
private final DatabaseBuilder.Settings config;
|
||||
|
||||
/**
|
||||
* Create and set the main DataSource and read-only DataSource.
|
||||
*/
|
||||
static void init(DatabaseBuilder config) {
|
||||
static void init(DatabaseBuilder.Settings config) {
|
||||
new InitDataSource(config).initialise();
|
||||
}
|
||||
|
||||
InitDataSource(DatabaseBuilder config) {
|
||||
InitDataSource(DatabaseBuilder.Settings config) {
|
||||
this.config = config;
|
||||
}
|
||||
|
||||
|
||||
@@ -69,7 +69,7 @@ public final class InternalConfiguration {
|
||||
|
||||
private final TableModState tableModState;
|
||||
private final boolean online;
|
||||
private final DatabaseBuilder config;
|
||||
private final DatabaseBuilder.Settings config;
|
||||
private final BootupClasses bootupClasses;
|
||||
private final DatabasePlatform databasePlatform;
|
||||
private final DeployInherit deployInherit;
|
||||
@@ -98,12 +98,12 @@ public final class InternalConfiguration {
|
||||
private boolean localL2Caching;
|
||||
|
||||
InternalConfiguration(boolean online, ClusterManager clusterManager, SpiBackgroundExecutor backgroundExecutor,
|
||||
DatabaseBuilder config, BootupClasses bootupClasses) {
|
||||
DatabaseBuilder.Settings config, BootupClasses bootupClasses) {
|
||||
|
||||
this.online = online;
|
||||
this.config = config;
|
||||
this.jacksonCorePresent = config.getClassLoadConfig().isJacksonCorePresent();
|
||||
this.clockService = new ClockService(config.getClock());
|
||||
this.clockService = new ClockService(config.settings().getClock());
|
||||
this.tableModState = new TableModState();
|
||||
this.logManager = initLogManager();
|
||||
this.docStoreFactory = initDocStoreFactory(service(DocStoreFactory.class));
|
||||
@@ -173,7 +173,7 @@ public final class InternalConfiguration {
|
||||
/**
|
||||
* Create and return the ExpressionFactory based on configuration and database platform.
|
||||
*/
|
||||
private ExpressionFactory initExpressionFactory(DatabaseBuilder config) {
|
||||
private ExpressionFactory initExpressionFactory(DatabaseBuilder.Settings config) {
|
||||
boolean nativeIlike = config.isExpressionNativeIlike() && databasePlatform.supportsNativeIlike();
|
||||
return new DefaultExpressionFactory(config.isExpressionEqualsWithNullAsNoop(), nativeIlike);
|
||||
}
|
||||
@@ -331,7 +331,7 @@ public final class InternalConfiguration {
|
||||
return config.getDatabasePlatform();
|
||||
}
|
||||
|
||||
public DatabaseBuilder getConfig() {
|
||||
public DatabaseBuilder.Settings getConfig() {
|
||||
return config;
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -24,11 +24,11 @@ public class BootupClassPathSearch {
|
||||
* Search the classPath for the classes we are interested in returning
|
||||
* them as BootupClasses.
|
||||
*/
|
||||
public static BootupClasses search(DatabaseBuilder config) {
|
||||
public static BootupClasses search(DatabaseBuilder.Settings config) {
|
||||
return new BootupClassPathSearch(config).getBootupClasses();
|
||||
}
|
||||
|
||||
private BootupClassPathSearch(DatabaseBuilder config) {
|
||||
private BootupClassPathSearch(DatabaseBuilder.Settings config) {
|
||||
// find packages defined in ebean.mf resources
|
||||
Set<String> mfPackages = ManifestReader.create(config.getClassLoadConfig().getClassLoader())
|
||||
.read("META-INF/ebean.mf")
|
||||
|
||||
@@ -172,7 +172,7 @@ public class BootupClasses implements Predicate<Class<?>> {
|
||||
add(startupInstances, serverConfigStartupInstances, serverConfigStartupCandidates);
|
||||
}
|
||||
|
||||
public void addChangeLogInstances(DatabaseBuilder config) {
|
||||
public void addChangeLogInstances(DatabaseBuilder.Settings config) {
|
||||
readAuditPrepare = config.getReadAuditPrepare();
|
||||
readAuditLogger = config.getReadAuditLogger();
|
||||
changeLogPrepare = config.getChangeLogPrepare();
|
||||
|
||||
@@ -423,7 +423,7 @@ public class BeanDescriptor<T> implements BeanType<T>, STreeType, SpiBeanType {
|
||||
/**
|
||||
* Return the DatabaseConfig.
|
||||
*/
|
||||
public DatabaseBuilder config() {
|
||||
public DatabaseBuilder.Settings config() {
|
||||
return owner.config();
|
||||
}
|
||||
|
||||
|
||||
@@ -79,7 +79,7 @@ public final class BeanDescriptorManager implements BeanDescriptorMap, SpiBeanTy
|
||||
private final NamingConvention namingConvention;
|
||||
private final DeployCreateProperties createProperties;
|
||||
private final BeanManagerFactory beanManagerFactory;
|
||||
private final DatabaseBuilder config;
|
||||
private final DatabaseBuilder.Settings config;
|
||||
private final ChangeLogListener changeLogListener;
|
||||
private final ChangeLogRegister changeLogRegister;
|
||||
private final ChangeLogPrepare changeLogPrepare;
|
||||
@@ -196,19 +196,19 @@ public final class BeanDescriptorManager implements BeanDescriptorMap, SpiBeanTy
|
||||
/**
|
||||
* Return the AsOfViewSuffix based on the DbHistorySupport.
|
||||
*/
|
||||
private String asOfViewSuffix(DatabasePlatform databasePlatform, DatabaseBuilder serverConfig) {
|
||||
private String asOfViewSuffix(DatabasePlatform databasePlatform, DatabaseBuilder.Settings config) {
|
||||
DbHistorySupport historySupport = databasePlatform.historySupport();
|
||||
// with historySupport returns a simple view suffix or the sql2011 as of timestamp suffix
|
||||
return (historySupport == null) ? serverConfig.getAsOfViewSuffix() : historySupport.getAsOfViewSuffix(serverConfig.getAsOfViewSuffix());
|
||||
return (historySupport == null) ? config.getAsOfViewSuffix() : historySupport.getAsOfViewSuffix(config.getAsOfViewSuffix());
|
||||
}
|
||||
|
||||
/**
|
||||
* Return the versions between timestamp suffix based on the DbHistorySupport.
|
||||
*/
|
||||
private String versionsBetweenSuffix(DatabasePlatform databasePlatform, DatabaseBuilder serverConfig) {
|
||||
private String versionsBetweenSuffix(DatabasePlatform databasePlatform, DatabaseBuilder.Settings config) {
|
||||
DbHistorySupport historySupport = databasePlatform.historySupport();
|
||||
// with historySupport returns a simple view suffix or the sql2011 versions between timestamp suffix
|
||||
return (historySupport == null) ? serverConfig.getAsOfViewSuffix() : historySupport.getVersionsBetweenSuffix(serverConfig.getAsOfViewSuffix());
|
||||
return (historySupport == null) ? config.getAsOfViewSuffix() : historySupport.getVersionsBetweenSuffix(config.getAsOfViewSuffix());
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -217,7 +217,7 @@ public final class BeanDescriptorManager implements BeanDescriptorMap, SpiBeanTy
|
||||
}
|
||||
|
||||
@Override
|
||||
public DatabaseBuilder config() {
|
||||
public DatabaseBuilder.Settings config() {
|
||||
return config;
|
||||
}
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@ public interface BeanDescriptorMap {
|
||||
/**
|
||||
* Return the DatabaseConfig.
|
||||
*/
|
||||
DatabaseBuilder config();
|
||||
DatabaseBuilder.Settings config();
|
||||
|
||||
/**
|
||||
* Return the Cache Manager.
|
||||
|
||||
+1
-1
@@ -34,7 +34,7 @@ final class BeanLifecycleAdapterFactory {
|
||||
|
||||
private final boolean postConstructPresent;
|
||||
|
||||
BeanLifecycleAdapterFactory(DatabaseBuilder config) {
|
||||
BeanLifecycleAdapterFactory(DatabaseBuilder.Settings config) {
|
||||
this.postConstructPresent = config.getClassLoadConfig().isJavaxPostConstructPresent();
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -27,7 +27,7 @@ public final class GeneratedPropertyFactory {
|
||||
private final ClassLoadConfig classLoadConfig;
|
||||
private final Map<String, PlatformIdGenerator> idGeneratorMap = new HashMap<>();
|
||||
|
||||
public GeneratedPropertyFactory(boolean offlineMode, DatabaseBuilder config, List<IdGenerator> idGenerators) {
|
||||
public GeneratedPropertyFactory(boolean offlineMode, DatabaseBuilder.Settings config, List<IdGenerator> idGenerators) {
|
||||
this.classLoadConfig = config.getClassLoadConfig();
|
||||
this.insertFactory = new InsertTimestampFactory(classLoadConfig);
|
||||
this.updateFactory = new UpdateTimestampFactory(classLoadConfig);
|
||||
|
||||
+2
-2
@@ -47,7 +47,7 @@ public class DeployBeanDescriptor<T> {
|
||||
|
||||
private static final PropOrder PROP_ORDER = new PropOrder();
|
||||
|
||||
private final DatabaseBuilder config;
|
||||
private final DatabaseBuilder.Settings config;
|
||||
private final BeanDescriptorManager manager;
|
||||
/**
|
||||
* Map of BeanProperty Linked so as to preserve order.
|
||||
@@ -133,7 +133,7 @@ public class DeployBeanDescriptor<T> {
|
||||
/**
|
||||
* Construct the BeanDescriptor.
|
||||
*/
|
||||
public DeployBeanDescriptor(BeanDescriptorManager manager, Class<T> beanType, DatabaseBuilder config) {
|
||||
public DeployBeanDescriptor(BeanDescriptorManager manager, Class<T> beanType, DatabaseBuilder.Settings config) {
|
||||
this.manager = manager;
|
||||
this.config = config;
|
||||
this.beanType = beanType;
|
||||
|
||||
@@ -44,7 +44,7 @@ public final class DeployUtil {
|
||||
private final Encryptor bytesEncryptor;
|
||||
private final boolean useValidationNotNull;
|
||||
|
||||
public DeployUtil(TypeManager typeMgr, DatabaseBuilder config) {
|
||||
public DeployUtil(TypeManager typeMgr, DatabaseBuilder.Settings config) {
|
||||
this.typeManager = typeMgr;
|
||||
this.namingConvention = config.getNamingConvention();
|
||||
this.dbPlatform = config.getDatabasePlatform();
|
||||
|
||||
+1
-1
@@ -31,7 +31,7 @@ final class ReadAnnotationConfig {
|
||||
private final ReadValidationAnnotations jakartaValidation;
|
||||
private final Set<Class<?>> metaAnnotations = new HashSet<>();
|
||||
|
||||
ReadAnnotationConfig(GeneratedPropertyFactory generatedPropFactory, String asOfViewSuffix, String versionsBetweenSuffix, DatabaseBuilder config) {
|
||||
ReadAnnotationConfig(GeneratedPropertyFactory generatedPropFactory, String asOfViewSuffix, String versionsBetweenSuffix, DatabaseBuilder.Settings config) {
|
||||
this.generatedPropFactory = generatedPropFactory;
|
||||
this.asOfViewSuffix = asOfViewSuffix;
|
||||
this.versionsBetweenSuffix = versionsBetweenSuffix;
|
||||
|
||||
@@ -12,7 +12,7 @@ public final class ReadAnnotations {
|
||||
|
||||
private final ReadAnnotationConfig readConfig;
|
||||
|
||||
public ReadAnnotations(GeneratedPropertyFactory generatedPropFactory, String asOfViewSuffix, String versionsBetweenSuffix, DatabaseBuilder config) {
|
||||
public ReadAnnotations(GeneratedPropertyFactory generatedPropFactory, String asOfViewSuffix, String versionsBetweenSuffix, DatabaseBuilder.Settings config) {
|
||||
this.readConfig = new ReadAnnotationConfig(generatedPropFactory, asOfViewSuffix, versionsBetweenSuffix, config);
|
||||
}
|
||||
|
||||
|
||||
@@ -38,7 +38,7 @@ public final class CQueryEngine {
|
||||
private final CQueryHistorySupport historySupport;
|
||||
private final DatabasePlatform dbPlatform;
|
||||
|
||||
public CQueryEngine(DatabaseBuilder config, DatabasePlatform dbPlatform, Binder binder, Map<String, String> asOfTableMapping, Map<String, String> draftTableMap) {
|
||||
public CQueryEngine(DatabaseBuilder.Settings config, DatabasePlatform dbPlatform, Binder binder, Map<String, String> asOfTableMapping, Map<String, String> draftTableMap) {
|
||||
this.dbPlatform = dbPlatform;
|
||||
this.defaultFetchSizeFindEach = config.getJdbcFetchSizeFindEach();
|
||||
this.defaultFetchSizeFindList = config.getJdbcFetchSizeFindList();
|
||||
|
||||
+3
-3
@@ -18,7 +18,7 @@ public final class TransactionManagerOptions {
|
||||
|
||||
final SpiServer server;
|
||||
final boolean notifyL2CacheInForeground;
|
||||
final DatabaseBuilder config;
|
||||
final DatabaseBuilder.Settings config;
|
||||
final ClusterManager clusterManager;
|
||||
final BackgroundExecutor backgroundExecutor;
|
||||
|
||||
@@ -33,8 +33,8 @@ public final class TransactionManagerOptions {
|
||||
final ClockService clockService;
|
||||
|
||||
|
||||
public TransactionManagerOptions(SpiServer server, boolean notifyL2CacheInForeground, DatabaseBuilder config, TransactionScopeManager scopeManager, ClusterManager clusterManager,
|
||||
BackgroundExecutor backgroundExecutor, DocStoreUpdateProcessor docStoreUpdateProcessor,
|
||||
public TransactionManagerOptions(SpiServer server, boolean notifyL2CacheInForeground, DatabaseBuilder.Settings config, TransactionScopeManager scopeManager,
|
||||
ClusterManager clusterManager, BackgroundExecutor backgroundExecutor, DocStoreUpdateProcessor docStoreUpdateProcessor,
|
||||
BeanDescriptorManager descMgr, DataSourceSupplier dataSourceSupplier, SpiProfileHandler profileHandler,
|
||||
SpiLogManager logManager, TableModState tableModState, ServerCacheNotify cacheNotify, ClockService clockService) {
|
||||
this.server = server;
|
||||
|
||||
@@ -16,9 +16,9 @@ import java.util.Date;
|
||||
*/
|
||||
final class DefaultTypeFactory {
|
||||
|
||||
private final DatabaseBuilder config;
|
||||
private final DatabaseBuilder.Settings config;
|
||||
|
||||
public DefaultTypeFactory(DatabaseBuilder config) {
|
||||
public DefaultTypeFactory(DatabaseBuilder.Settings config) {
|
||||
this.config = config;
|
||||
}
|
||||
|
||||
|
||||
@@ -76,7 +76,7 @@ public final class DefaultTypeManager implements TypeManager {
|
||||
/**
|
||||
* Create the DefaultTypeManager.
|
||||
*/
|
||||
public DefaultTypeManager(DatabaseBuilder config, BootupClasses bootupClasses) {
|
||||
public DefaultTypeManager(DatabaseBuilder.Settings config, BootupClasses bootupClasses) {
|
||||
this.jsonDateTime = config.getJsonDateTime();
|
||||
this.jsonDate = config.getJsonDate();
|
||||
this.typeMap = new ConcurrentHashMap<>();
|
||||
@@ -108,7 +108,7 @@ public final class DefaultTypeManager implements TypeManager {
|
||||
}
|
||||
}
|
||||
|
||||
private void loadGeoTypeBinder(DatabaseBuilder config) {
|
||||
private void loadGeoTypeBinder(DatabaseBuilder.Settings config) {
|
||||
GeoTypeProvider provider = config.getServiceObject(GeoTypeProvider.class);
|
||||
if (provider == null) {
|
||||
provider = ServiceUtil.service(GeoTypeProvider.class);
|
||||
@@ -139,7 +139,7 @@ public final class DefaultTypeManager implements TypeManager {
|
||||
/**
|
||||
* Load custom scalar types registered via ExtraTypeFactory and ServiceLoader.
|
||||
*/
|
||||
private void loadTypesFromProviders(DatabaseBuilder config, Object objectMapper) {
|
||||
private void loadTypesFromProviders(DatabaseBuilder.Settings config, Object objectMapper) {
|
||||
for (ExtraTypeFactory plugin : ServiceLoader.load(ExtraTypeFactory.class)) {
|
||||
for (ScalarType<?> type : plugin.createTypes(config, objectMapper)) {
|
||||
add(type);
|
||||
@@ -616,7 +616,7 @@ public final class DefaultTypeManager implements TypeManager {
|
||||
}
|
||||
|
||||
|
||||
private Object initObjectMapper(DatabaseBuilder config) {
|
||||
private Object initObjectMapper(DatabaseBuilder.Settings config) {
|
||||
Object objectMapper = config.getObjectMapper();
|
||||
if (objectMapper == null) {
|
||||
objectMapper = InitObjectMapper.init();
|
||||
@@ -674,7 +674,7 @@ public final class DefaultTypeManager implements TypeManager {
|
||||
}
|
||||
|
||||
|
||||
private void initialiseJavaTimeTypes(DatabaseBuilder config) {
|
||||
private void initialiseJavaTimeTypes(DatabaseBuilder.Settings config) {
|
||||
ZoneId zoneId = zoneId(config);
|
||||
|
||||
typeMap.put(java.nio.file.Path.class, new ScalarTypePath());
|
||||
@@ -702,7 +702,7 @@ public final class DefaultTypeManager implements TypeManager {
|
||||
addType(Duration.class, (durationNanos) ? new ScalarTypeDurationWithNanos() : new ScalarTypeDuration());
|
||||
}
|
||||
|
||||
private ZoneId zoneId(DatabaseBuilder config) {
|
||||
private ZoneId zoneId(DatabaseBuilder.Settings config) {
|
||||
final String dataTimeZone = config.getDataTimeZone();
|
||||
return (dataTimeZone == null) ? ZoneOffset.systemDefault() : TimeZone.getTimeZone(dataTimeZone).toZoneId();
|
||||
}
|
||||
@@ -716,7 +716,7 @@ public final class DefaultTypeManager implements TypeManager {
|
||||
* Register all the standard types supported. This is the standard JDBC types
|
||||
* plus some other common types such as java.util.Date and java.util.Calendar.
|
||||
*/
|
||||
private void initialiseStandard(DatabaseBuilder config) {
|
||||
private void initialiseStandard(DatabaseBuilder.Settings config) {
|
||||
DatabasePlatform databasePlatform = config.getDatabasePlatform();
|
||||
int platformClobType = databasePlatform.clobDbType();
|
||||
int platformBlobType = databasePlatform.blobDbType();
|
||||
|
||||
@@ -19,12 +19,12 @@ import static org.junit.jupiter.api.Assertions.*;
|
||||
|
||||
public class InitDataSourceTest {
|
||||
|
||||
private DatabaseBuilder newConfig(String readOnlyUrl) {
|
||||
private DatabaseBuilder.Settings newConfig(String readOnlyUrl) {
|
||||
DatabaseBuilder config = new DatabaseConfig();
|
||||
DataSourceConfig roConfig = new DataSourceConfig();
|
||||
roConfig.setUrl(readOnlyUrl);
|
||||
config.setReadOnlyDataSourceConfig(roConfig);
|
||||
return config;
|
||||
return config.settings();
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -35,7 +35,7 @@ public class InitDataSourceTest {
|
||||
|
||||
@Test
|
||||
public void readOnlyConfig_null_whenSetNullExplicitly() {
|
||||
DatabaseBuilder config = new DatabaseConfig();
|
||||
DatabaseConfig config = new DatabaseConfig();
|
||||
config.setReadOnlyDataSourceConfig(null);
|
||||
|
||||
assertNull(new InitDataSource(config).readOnlyConfig());
|
||||
@@ -57,7 +57,7 @@ public class InitDataSourceTest {
|
||||
|
||||
@Test
|
||||
public void readOnlyConfig_when_autoReadOnlyDataSource() {
|
||||
DatabaseBuilder config = new DatabaseConfig();
|
||||
DatabaseConfig config = new DatabaseConfig();
|
||||
config.setAutoReadOnlyDataSource(true);
|
||||
|
||||
assertNotNull(new InitDataSource(config).readOnlyConfig());
|
||||
@@ -65,7 +65,7 @@ public class InitDataSourceTest {
|
||||
|
||||
@Test
|
||||
public void readOnlyConfig_when_autoReadOnlyDataSource_expect_setToNull() {
|
||||
DatabaseBuilder config = newConfig("none");
|
||||
var config = newConfig("none");
|
||||
config.setAutoReadOnlyDataSource(true);
|
||||
|
||||
final DataSourceBuilder readOnlyConfig = new InitDataSource(config).readOnlyConfig();
|
||||
@@ -75,7 +75,7 @@ public class InitDataSourceTest {
|
||||
|
||||
@Test
|
||||
public void readOnlyConfig_when_urlSet() {
|
||||
DatabaseBuilder config = newConfig("foo");
|
||||
var config = newConfig("foo");
|
||||
|
||||
final DataSourceBuilder roConfig = new InitDataSource(config).readOnlyConfig();
|
||||
assertNotNull(roConfig);
|
||||
@@ -84,7 +84,7 @@ public class InitDataSourceTest {
|
||||
|
||||
@Test
|
||||
public void readOnlyConfig_when_readOnlyUrlSetOnMain() {
|
||||
DatabaseBuilder config = newConfig(null);
|
||||
var config = newConfig(null);
|
||||
// alternate location to set read-only url for developer convenience
|
||||
config.getDataSourceConfig().readOnlyUrl("bar");
|
||||
|
||||
@@ -95,7 +95,7 @@ public class InitDataSourceTest {
|
||||
|
||||
@Test
|
||||
public void readOnlyConfig_when_readOnlyUrlSetOnMain_withNone() {
|
||||
DatabaseBuilder config = newConfig("None");
|
||||
var config = newConfig("None");
|
||||
// alternate location to set read-only url for developer convenience
|
||||
config.getDataSourceConfig().readOnlyUrl("bar");
|
||||
|
||||
@@ -106,7 +106,7 @@ public class InitDataSourceTest {
|
||||
|
||||
@Test
|
||||
public void readOnlyConfig_when_bothReadOnlyUrlsSet() {
|
||||
DatabaseBuilder config = newConfig("one");
|
||||
var config = newConfig("one");
|
||||
config.getDataSourceConfig().readOnlyUrl("two");
|
||||
|
||||
final DataSourceBuilder roConfig = new InitDataSource(config).readOnlyConfig();
|
||||
@@ -116,7 +116,7 @@ public class InitDataSourceTest {
|
||||
|
||||
@Test
|
||||
public void readOnlyConfig_when_readOnlyUrlSetOnMain_withNoneNone() {
|
||||
DatabaseBuilder config = newConfig("none");
|
||||
var config = newConfig("none");
|
||||
// alternate location to set read-only url for developer convenience
|
||||
config.getDataSourceConfig().readOnlyUrl("none");
|
||||
|
||||
@@ -126,8 +126,8 @@ public class InitDataSourceTest {
|
||||
|
||||
@Test
|
||||
public void readOnlyConfig_when_urlSet_2() {
|
||||
DatabaseBuilder config = new DatabaseConfig();
|
||||
config.getReadOnlyDataSourceConfig().url("foo");
|
||||
DatabaseConfig config = new DatabaseConfig();
|
||||
config.settings().getReadOnlyDataSourceConfig().url("foo");
|
||||
|
||||
final DataSourceBuilder roConfig = new InitDataSource(config).readOnlyConfig();
|
||||
assertNotNull(roConfig);
|
||||
@@ -136,7 +136,7 @@ public class InitDataSourceTest {
|
||||
|
||||
@Test
|
||||
void isPostgresAllQuotedIdentifiers_true_when_postgres() {
|
||||
DatabaseBuilder config = new DatabaseConfig();
|
||||
DatabaseConfig config = new DatabaseConfig();
|
||||
config.setAllQuotedIdentifiers(true);
|
||||
config.setDatabasePlatform(new PostgresPlatform());
|
||||
|
||||
@@ -145,7 +145,7 @@ public class InitDataSourceTest {
|
||||
|
||||
@Test
|
||||
void isPostgresAllQuotedIdentifiers_true_when_postgres9() {
|
||||
DatabaseBuilder config = new DatabaseConfig();
|
||||
DatabaseConfig config = new DatabaseConfig();
|
||||
config.setAllQuotedIdentifiers(true);
|
||||
config.setDatabasePlatform(new Postgres9Platform());
|
||||
|
||||
@@ -154,7 +154,7 @@ public class InitDataSourceTest {
|
||||
|
||||
@Test
|
||||
void isPostgresAllQuotedIdentifiers_false() {
|
||||
DatabaseBuilder config = new DatabaseConfig();
|
||||
DatabaseConfig config = new DatabaseConfig();
|
||||
config.setAllQuotedIdentifiers(false);
|
||||
config.setDatabasePlatform(new PostgresPlatform());
|
||||
|
||||
@@ -163,7 +163,7 @@ public class InitDataSourceTest {
|
||||
|
||||
@Test
|
||||
void isPostgresAllQuotedIdentifiers_false_when_notPostgres() {
|
||||
DatabaseBuilder config = new DatabaseConfig();
|
||||
DatabaseConfig config = new DatabaseConfig();
|
||||
config.setAllQuotedIdentifiers(true);
|
||||
config.setDatabasePlatform(new H2Platform());
|
||||
|
||||
@@ -172,7 +172,7 @@ public class InitDataSourceTest {
|
||||
|
||||
@Test
|
||||
public void online() {
|
||||
DatabaseBuilder config = new DatabaseConfig();
|
||||
DatabaseConfig config = new DatabaseConfig();
|
||||
config.getDataSourceConfig().username("sa");
|
||||
config.getDataSourceConfig().password("");
|
||||
config.getDataSourceConfig().url("jdbc:h2:mem:dsTestOnline");
|
||||
@@ -204,7 +204,7 @@ public class InitDataSourceTest {
|
||||
|
||||
@Test
|
||||
public void offline() throws SQLException {
|
||||
DatabaseBuilder config = new DatabaseConfig();
|
||||
DatabaseConfig config = new DatabaseConfig();
|
||||
DataSourceBuilder dsConfig = config.getDataSourceConfig();
|
||||
dsConfig.username("sa");
|
||||
dsConfig.password("");
|
||||
|
||||
+3
-3
@@ -46,7 +46,7 @@ public class AnnotationClassTest {
|
||||
}
|
||||
|
||||
@SuppressWarnings({"unchecked", "rawtypes"})
|
||||
private AnnotationClass createAnnotationClass(DatabaseBuilder config) {
|
||||
private AnnotationClass createAnnotationClass(DatabaseBuilder.Settings config) {
|
||||
DeployUtil deployUtil = new DeployUtil(new DefaultTypeManager(config, new BootupClasses()), config);
|
||||
|
||||
DeployBeanInfo deployBeanInfo = new DeployBeanInfo(deployUtil, new DeployBeanDescriptor<>(null, Customer.class, null));
|
||||
@@ -54,9 +54,9 @@ public class AnnotationClassTest {
|
||||
return new AnnotationClass(deployBeanInfo, readAnnotationConfig);
|
||||
}
|
||||
|
||||
private DatabaseBuilder sqlServerPlatform(boolean allQuotedIdentifiers) {
|
||||
private DatabaseBuilder.Settings sqlServerPlatform(boolean allQuotedIdentifiers) {
|
||||
SqlServer17Platform sqlServer17Platform = new SqlServer17Platform();
|
||||
DatabaseBuilder config = new DatabaseConfig();
|
||||
var config = new DatabaseConfig().settings();
|
||||
config.setDatabasePlatform(sqlServer17Platform);
|
||||
config.setAllQuotedIdentifiers(allQuotedIdentifiers);
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package io.ebeaninternal.server.type;
|
||||
|
||||
import io.ebean.config.DatabaseConfig;
|
||||
import io.ebean.core.type.ScalarType;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
@@ -10,7 +11,7 @@ import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
|
||||
public class DefaultTypeFactoryTest {
|
||||
|
||||
DefaultTypeFactory defaultTypeFactory = new DefaultTypeFactory(null);
|
||||
DefaultTypeFactory defaultTypeFactory = new DefaultTypeFactory(new DatabaseConfig());
|
||||
|
||||
@Test
|
||||
public void testCreateBoolean() throws Exception {
|
||||
|
||||
@@ -21,7 +21,7 @@ import static org.junit.jupiter.api.Assertions.assertTrue;
|
||||
public class DefaultTypeManagerTest {
|
||||
|
||||
private DefaultTypeManager create() {
|
||||
DatabaseBuilder serverConfig = new DatabaseConfig();
|
||||
var serverConfig = new DatabaseConfig();
|
||||
serverConfig.setDatabasePlatform(new PostgresPlatform());
|
||||
BootupClasses bootupClasses = new BootupClasses();
|
||||
return new DefaultTypeManager(serverConfig, bootupClasses);
|
||||
|
||||
@@ -122,7 +122,7 @@ class TestTypeManager extends BaseTest {
|
||||
}
|
||||
|
||||
private DefaultTypeManager createTypeManager() {
|
||||
DatabaseBuilder config = new DatabaseConfig();
|
||||
var config = new DatabaseConfig();
|
||||
config.setDatabasePlatform(new H2Platform());
|
||||
|
||||
BootupClasses bootupClasses = new BootupClasses();
|
||||
@@ -132,7 +132,7 @@ class TestTypeManager extends BaseTest {
|
||||
}
|
||||
|
||||
private DefaultTypeManager createTypeManagerDefaultEnumTypeString() {
|
||||
DatabaseBuilder config = new DatabaseConfig();
|
||||
var config = new DatabaseConfig();
|
||||
config.setDatabasePlatform(new H2Platform());
|
||||
config.setDefaultEnumType(EnumType.STRING);
|
||||
|
||||
|
||||
@@ -51,7 +51,7 @@ public class DdlGenerator implements SpiDdlGenerator {
|
||||
|
||||
public DdlGenerator(SpiEbeanServer server) {
|
||||
this.server = server;
|
||||
final DatabaseBuilder config = server.config();
|
||||
final var config = server.config();
|
||||
this.jaxbPresent = Detect.isJAXBPresent(config);
|
||||
this.generateDdl = config.isDdlGenerate();
|
||||
this.extraDdl = config.isDdlExtra();
|
||||
@@ -318,7 +318,7 @@ public class DdlGenerator implements SpiDdlGenerator {
|
||||
/**
|
||||
* Create the ScriptTransform for placeholder key/value replacement.
|
||||
*/
|
||||
private ScriptTransform createScriptTransform(DatabaseBuilder config) {
|
||||
private ScriptTransform createScriptTransform(DatabaseBuilder.Settings config) {
|
||||
return ScriptTransform.build(config.getDdlPlaceholders(), config.getDdlPlaceholderMap());
|
||||
}
|
||||
|
||||
|
||||
+3
-2
@@ -73,7 +73,7 @@ public class DefaultDbMigration implements DbMigration {
|
||||
protected DatabasePlatform databasePlatform;
|
||||
private boolean vanillaPlatform;
|
||||
protected List<Pair> platforms = new ArrayList<>();
|
||||
protected DatabaseBuilder databaseBuilder;
|
||||
protected DatabaseBuilder.Settings databaseBuilder;
|
||||
protected DbConstraintNaming constraintNaming;
|
||||
protected Boolean strictMode;
|
||||
protected Boolean includeGeneratedFileComment;
|
||||
@@ -114,7 +114,8 @@ public class DefaultDbMigration implements DbMigration {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setServerConfig(DatabaseBuilder config) {
|
||||
public void setServerConfig(DatabaseBuilder builder) {
|
||||
var config = builder.settings();
|
||||
if (this.databaseBuilder == null) {
|
||||
this.databaseBuilder = config;
|
||||
}
|
||||
|
||||
@@ -10,7 +10,7 @@ public class Detect {
|
||||
/**
|
||||
* Return true if JAXB is present.
|
||||
*/
|
||||
public static boolean isJAXBPresent(DatabaseBuilder config) {
|
||||
public static boolean isJAXBPresent(DatabaseBuilder.Settings config) {
|
||||
return config.getClassLoadConfig().isPresent("jakarta.xml.bind.JAXBException");
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -14,7 +14,7 @@ public class BaseDdlHandler implements DdlHandler {
|
||||
|
||||
protected final TableDdl tableDdl;
|
||||
|
||||
public BaseDdlHandler(DatabaseBuilder config, PlatformDdl platformDdl) {
|
||||
public BaseDdlHandler(DatabaseBuilder.Settings config, PlatformDdl platformDdl) {
|
||||
this(config, platformDdl, new BaseTableDdl(config, platformDdl));
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -155,7 +155,7 @@ public class BaseTableDdl implements TableDdl {
|
||||
/**
|
||||
* Construct with a naming convention and platform specific DDL.
|
||||
*/
|
||||
public BaseTableDdl(DatabaseBuilder config, PlatformDdl platformDdl) {
|
||||
public BaseTableDdl(DatabaseBuilder.Settings config, PlatformDdl platformDdl) {
|
||||
this.namingConvention = config.getNamingConvention();
|
||||
this.naming = config.getConstraintNaming();
|
||||
this.historyTableSuffix = config.getHistoryTableSuffix();
|
||||
|
||||
+1
-1
@@ -18,7 +18,7 @@ public class ClickHouseDdl extends PlatformDdl {
|
||||
}
|
||||
|
||||
@Override
|
||||
public DdlHandler createDdlHandler(DatabaseBuilder config) {
|
||||
public DdlHandler createDdlHandler(DatabaseBuilder.Settings config) {
|
||||
return new ClickHouseDdlHandler(config, this);
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -5,7 +5,7 @@ import io.ebeaninternal.dbmigration.ddlgeneration.BaseDdlHandler;
|
||||
|
||||
public class ClickHouseDdlHandler extends BaseDdlHandler {
|
||||
|
||||
public ClickHouseDdlHandler(DatabaseBuilder config, PlatformDdl platformDdl) {
|
||||
public ClickHouseDdlHandler(DatabaseBuilder.Settings config, PlatformDdl platformDdl) {
|
||||
super(config, platformDdl, new ClickHouseTableDdl(config, platformDdl));
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -6,7 +6,7 @@ import io.ebeaninternal.dbmigration.migration.CreateTable;
|
||||
|
||||
public class ClickHouseTableDdl extends BaseTableDdl {
|
||||
|
||||
public ClickHouseTableDdl(DatabaseBuilder config, PlatformDdl platformDdl) {
|
||||
public ClickHouseTableDdl(DatabaseBuilder.Settings config, PlatformDdl platformDdl) {
|
||||
super(config, platformDdl);
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -20,7 +20,7 @@ public class Db2HistoryDdl extends DbTableBasedHistoryDdl implements PlatformHis
|
||||
private String transactionId;
|
||||
|
||||
@Override
|
||||
public void configure(DatabaseBuilder config, PlatformDdl platformDdl) {
|
||||
public void configure(DatabaseBuilder.Settings config, PlatformDdl platformDdl) {
|
||||
super.configure(config, platformDdl);
|
||||
this.systemPeriodStart = config.getAsOfSysPeriod() + "_start";
|
||||
this.systemPeriodEnd = config.getAsOfSysPeriod() + "_end";
|
||||
|
||||
+1
-1
@@ -16,7 +16,7 @@ public abstract class DbTableBasedHistoryDdl implements PlatformHistoryDdl.Table
|
||||
protected PlatformDdl platformDdl;
|
||||
|
||||
@Override
|
||||
public void configure(DatabaseBuilder config, PlatformDdl platformDdl) {
|
||||
public void configure(DatabaseBuilder.Settings config, PlatformDdl platformDdl) {
|
||||
this.platformDdl = platformDdl;
|
||||
this.historySuffix = config.getHistoryTableSuffix();
|
||||
this.constraintNaming = config.getConstraintNaming();
|
||||
|
||||
+1
-1
@@ -28,7 +28,7 @@ public abstract class DbTriggerBasedHistoryDdl extends DbTableBasedHistoryDdl im
|
||||
}
|
||||
|
||||
@Override
|
||||
public void configure(DatabaseBuilder config, PlatformDdl platformDdl) {
|
||||
public void configure(DatabaseBuilder.Settings config, PlatformDdl platformDdl) {
|
||||
super.configure(config, platformDdl);
|
||||
this.sysPeriod = config.getAsOfSysPeriod();
|
||||
this.viewSuffix = config.getAsOfViewSuffix();
|
||||
|
||||
+1
-1
@@ -17,7 +17,7 @@ public class HanaHistoryDdl extends DbTableBasedHistoryDdl implements PlatformHi
|
||||
private String systemPeriodEnd;
|
||||
|
||||
@Override
|
||||
public void configure(DatabaseBuilder config, PlatformDdl platformDdl) {
|
||||
public void configure(DatabaseBuilder.Settings config, PlatformDdl platformDdl) {
|
||||
super.configure(config, platformDdl);
|
||||
this.systemPeriodStart = config.getAsOfSysPeriod() + "_start";
|
||||
this.systemPeriodEnd = config.getAsOfSysPeriod() + "_end";
|
||||
|
||||
+1
-1
@@ -16,7 +16,7 @@ public class MariaDbHistoryDdl implements PlatformHistoryDdl {
|
||||
private PlatformDdl platformDdl;
|
||||
|
||||
@Override
|
||||
public void configure(DatabaseBuilder config, PlatformDdl platformDdl) {
|
||||
public void configure(DatabaseBuilder.Settings config, PlatformDdl platformDdl) {
|
||||
this.platformDdl = platformDdl;
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -13,7 +13,7 @@ import io.ebeaninternal.dbmigration.model.MTable;
|
||||
public class NoHistorySupportDdl implements PlatformHistoryDdl {
|
||||
|
||||
@Override
|
||||
public void configure(DatabaseBuilder config, PlatformDdl platformDdl) {
|
||||
public void configure(DatabaseBuilder.Settings config, PlatformDdl platformDdl) {
|
||||
// does nothing
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -105,7 +105,7 @@ public class PlatformDdl {
|
||||
/**
|
||||
* Set configuration options.
|
||||
*/
|
||||
public void configure(DatabaseBuilder config) {
|
||||
public void configure(DatabaseBuilder.Settings config) {
|
||||
historyDdl.configure(config, this);
|
||||
naming = config.getConstraintNaming();
|
||||
}
|
||||
@@ -113,7 +113,7 @@ public class PlatformDdl {
|
||||
/**
|
||||
* Create a DdlHandler for the specific database platform.
|
||||
*/
|
||||
public DdlHandler createDdlHandler(DatabaseBuilder config) {
|
||||
public DdlHandler createDdlHandler(DatabaseBuilder.Settings config) {
|
||||
return new BaseDdlHandler(config, this);
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -14,7 +14,7 @@ public interface PlatformHistoryDdl {
|
||||
/**
|
||||
* Configure typically reading the necessary parameters from DatabaseConfig and Platform.
|
||||
*/
|
||||
void configure(DatabaseBuilder config, PlatformDdl platformDdl);
|
||||
void configure(DatabaseBuilder.Settings config, PlatformDdl platformDdl);
|
||||
|
||||
/**
|
||||
* Creates a new table and add history support to the table using platform specific mechanism.
|
||||
|
||||
+1
-1
@@ -22,7 +22,7 @@ public class SqlServerHistoryDdl implements PlatformHistoryDdl {
|
||||
protected String historySuffix;
|
||||
|
||||
@Override
|
||||
public void configure(DatabaseBuilder config, PlatformDdl platformDdl) {
|
||||
public void configure(DatabaseBuilder.Settings config, PlatformDdl platformDdl) {
|
||||
this.systemPeriodStart = config.getAsOfSysPeriod() + "From";
|
||||
this.systemPeriodEnd = config.getAsOfSysPeriod() + "To";
|
||||
this.platformDdl = platformDdl;
|
||||
|
||||
+5
-5
@@ -26,13 +26,13 @@ public class PlatformDdlWriter {
|
||||
|
||||
private static final System.Logger logger = AppLog.getLogger(PlatformDdlWriter.class);
|
||||
|
||||
private final DatabaseBuilder databaseBuilder;
|
||||
private final DatabaseBuilder.Settings config;
|
||||
private final PlatformDdl platformDdl;
|
||||
private final int lockTimeoutSeconds;
|
||||
|
||||
public PlatformDdlWriter(DatabasePlatform platform, DatabaseBuilder dbConfig, int lockTimeoutSeconds) {
|
||||
public PlatformDdlWriter(DatabasePlatform platform, DatabaseBuilder.Settings config, int lockTimeoutSeconds) {
|
||||
this.platformDdl = PlatformDdlBuilder.create(platform);
|
||||
this.databaseBuilder = dbConfig;
|
||||
this.config = config;
|
||||
this.lockTimeoutSeconds = lockTimeoutSeconds;
|
||||
}
|
||||
|
||||
@@ -87,7 +87,7 @@ public class PlatformDdlWriter {
|
||||
* Write the 'Apply' DDL buffers to the writer.
|
||||
*/
|
||||
protected void writeApplyDdl(Writer writer, DdlWrite ddl) throws IOException {
|
||||
String header = databaseBuilder.getDdlHeader();
|
||||
String header = config.getDdlHeader();
|
||||
if (header != null && !header.isEmpty()) {
|
||||
writer.append(header).append('\n');
|
||||
}
|
||||
@@ -98,7 +98,7 @@ public class PlatformDdlWriter {
|
||||
* Return the platform specific DdlHandler (to generate DDL).
|
||||
*/
|
||||
protected DdlHandler handler() {
|
||||
return platformDdl.createDdlHandler(databaseBuilder);
|
||||
return platformDdl.createDdlHandler(config);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
+1
-1
@@ -22,7 +22,7 @@ public class BaseDdlHandlerTest extends BaseTestCase {
|
||||
|
||||
private static boolean useV1Syntax = Boolean.getBoolean("ebean.h2.useV1Syntax");
|
||||
|
||||
private final DatabaseBuilder serverConfig = new DatabaseConfig();
|
||||
private final DatabaseConfig serverConfig = new DatabaseConfig();
|
||||
|
||||
private DdlHandler handler(DatabasePlatform platform) {
|
||||
return PlatformDdlBuilder.create(platform).createDdlHandler(serverConfig);
|
||||
|
||||
+1
-1
@@ -20,7 +20,7 @@ import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
|
||||
class BaseTableDdlTest {
|
||||
|
||||
private final DatabaseBuilder serverConfig = new DatabaseConfig();
|
||||
private final DatabaseConfig serverConfig = new DatabaseConfig();
|
||||
private final PlatformDdl h2ddl = PlatformDdlBuilder.create(new H2Platform());
|
||||
|
||||
@Test
|
||||
|
||||
+1
-1
@@ -36,7 +36,7 @@ public class PlatformDdl_AlterColumnTest {
|
||||
private final SoftAssertions softly = new SoftAssertions();
|
||||
|
||||
{
|
||||
DatabaseBuilder serverConfig = DB.getDefault().pluginApi().config();
|
||||
DatabaseBuilder.Settings serverConfig = DB.getDefault().pluginApi().config();
|
||||
sqlServerDdl.configure(serverConfig);
|
||||
}
|
||||
|
||||
|
||||
+1
-2
@@ -27,7 +27,7 @@ public class PlatformDdl_CreateIndexTest {
|
||||
private final PlatformDdl db2LuwDdl = PlatformDdlBuilder.create(new DB2LuwPlatform());
|
||||
|
||||
{
|
||||
DatabaseBuilder config = DB.getDefault().pluginApi().config();
|
||||
DatabaseBuilder.Settings config = DB.getDefault().pluginApi().config();
|
||||
h2Ddl.configure(config);
|
||||
pgDdl.configure(config);
|
||||
mysqlDdl.configure(config);
|
||||
@@ -38,7 +38,6 @@ public class PlatformDdl_CreateIndexTest {
|
||||
}
|
||||
|
||||
WriteCreateIndex writeCreateIndex() {
|
||||
|
||||
return writeCreateIndex(true, true);
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -49,7 +49,7 @@ public class PlatformDdl_dropUniqueConstraintTest {
|
||||
sql = mysqlDdl.alterTableDropUniqueConstraint("mytab", "uq_name");
|
||||
assertEquals("alter table mytab drop index uq_name", sql);
|
||||
|
||||
DatabaseBuilder config = new DatabaseConfig();
|
||||
DatabaseConfig config = new DatabaseConfig();
|
||||
hanaDdl.configure(config);
|
||||
sql = hanaDdl.alterTableDropUniqueConstraint("mytab", "uq_name");
|
||||
assertEquals("delimiter $$\n" +
|
||||
|
||||
+1
-1
@@ -55,7 +55,7 @@ public class ModelBuildBeanVisitorTest extends BaseTestCase {
|
||||
|
||||
ModelContainer model = new ModelContainer();
|
||||
|
||||
DatabaseBuilder config = new DatabaseConfig();
|
||||
DatabaseConfig config = new DatabaseConfig();
|
||||
config.setName("h2");
|
||||
config.loadFromProperties();
|
||||
config.setName("h2other");
|
||||
|
||||
@@ -16,7 +16,7 @@ import java.util.List;
|
||||
public class PostgisExtraTypeFactory implements ExtraTypeFactory {
|
||||
|
||||
@Override
|
||||
public List<ScalarType<?>> createTypes(DatabaseBuilder config, Object objectMapper) {
|
||||
public List<ScalarType<?>> createTypes(DatabaseBuilder.Settings config, Object objectMapper) {
|
||||
|
||||
List<ScalarType<?>> list = new ArrayList<>();
|
||||
list.add(new ScalarTypePgisPoint());
|
||||
|
||||
@@ -7,7 +7,7 @@ import io.ebeaninternal.server.type.GeoTypeBinder;
|
||||
public class PostgisGeoTypeBindProvider implements GeoTypeProvider {
|
||||
|
||||
@Override
|
||||
public GeoTypeBinder createBinder(DatabaseBuilder config) {
|
||||
public GeoTypeBinder createBinder(DatabaseBuilder.Settings config) {
|
||||
boolean withGeolatte = config.getClassLoadConfig().isPresent("org.geolatte.geom.Geometry");
|
||||
return new PostgisGeoTypeBinder(withGeolatte);
|
||||
}
|
||||
|
||||
@@ -74,7 +74,7 @@ final class RedisCacheFactory implements ServerCacheFactory {
|
||||
private final ReentrantLock lock = new ReentrantLock();
|
||||
private ServerCacheNotify listener;
|
||||
|
||||
RedisCacheFactory(DatabaseBuilder config, BackgroundExecutor executor) {
|
||||
RedisCacheFactory(DatabaseBuilder.Settings config, BackgroundExecutor executor) {
|
||||
this.executor = executor;
|
||||
this.nearCacheNotify = new DNearCacheNotify();
|
||||
MetricFactory factory = MetricFactory.get();
|
||||
@@ -95,7 +95,7 @@ final class RedisCacheFactory implements ServerCacheFactory {
|
||||
/**
|
||||
* Return the JedisPool to use (only 1 at this stage).
|
||||
*/
|
||||
private JedisPool getJedisPool(DatabaseBuilder config) {
|
||||
private JedisPool getJedisPool(DatabaseBuilder.Settings config) {
|
||||
JedisPool jedisPool = config.getServiceObject(JedisPool.class);
|
||||
if (jedisPool != null) {
|
||||
return jedisPool;
|
||||
|
||||
@@ -12,6 +12,6 @@ public class RedisCachePlugin implements ServerCachePlugin {
|
||||
*/
|
||||
@Override
|
||||
public ServerCacheFactory create(DatabaseBuilder config, BackgroundExecutor executor) {
|
||||
return new RedisCacheFactory(config, executor);
|
||||
return new RedisCacheFactory(config.settings(), executor);
|
||||
}
|
||||
}
|
||||
|
||||
+2
-2
@@ -135,14 +135,14 @@
|
||||
<dependency>
|
||||
<groupId>io.ebean</groupId>
|
||||
<artifactId>ebean-joda-time</artifactId>
|
||||
<version>13.24.0-RC1</version>
|
||||
<version>13.24.0-RC2</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>io.ebean</groupId>
|
||||
<artifactId>ebean-jackson-jsonnode</artifactId>
|
||||
<version>13.24.0-RC1</version>
|
||||
<version>13.24.0-RC2</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
|
||||
@@ -31,7 +31,8 @@ public class AutoConfigureForTesting implements AutoConfigure {
|
||||
private final String environmentDb = System.getProperty("db");
|
||||
|
||||
@Override
|
||||
public void preConfigure(DatabaseBuilder config) {
|
||||
public void preConfigure(DatabaseBuilder builder) {
|
||||
var config = builder.settings();
|
||||
Properties properties = config.getProperties();
|
||||
if (properties != null) {
|
||||
// trigger determination of docker.host system property if not already done
|
||||
@@ -55,7 +56,8 @@ public class AutoConfigureForTesting implements AutoConfigure {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void postConfigure(DatabaseBuilder config) {
|
||||
public void postConfigure(DatabaseBuilder builder) {
|
||||
var config = builder.settings();
|
||||
if (!config.isDefaultServer()) {
|
||||
return;
|
||||
}
|
||||
@@ -87,7 +89,7 @@ public class AutoConfigureForTesting implements AutoConfigure {
|
||||
/**
|
||||
* Check if this is not the primary server and return true if that is the case.
|
||||
*/
|
||||
private boolean isExtraServer(DatabaseBuilder config, Properties properties) {
|
||||
private boolean isExtraServer(DatabaseBuilder.Settings config, Properties properties) {
|
||||
String extraDb = properties.getProperty("ebean.test.extraDb.dbName", properties.getProperty("ebean.test.extraDb"));
|
||||
if (extraDb != null && extraDb.equals(config.getName())) {
|
||||
config.setDefaultServer(false);
|
||||
@@ -99,7 +101,7 @@ public class AutoConfigureForTesting implements AutoConfigure {
|
||||
/**
|
||||
* Setup the DataSource on the extra database if necessary.
|
||||
*/
|
||||
private void setupExtraDataSourceIfNecessary(DatabaseBuilder config) {
|
||||
private void setupExtraDataSourceIfNecessary(DatabaseBuilder.Settings config) {
|
||||
DataSourceBuilder dataSourceConfig = config.getDataSourceConfig();
|
||||
if (dataSourceConfig == null || dataSourceConfig.settings().getUsername() == null) {
|
||||
new PlatformAutoConfig(environmentDb, config)
|
||||
@@ -110,14 +112,14 @@ public class AutoConfigureForTesting implements AutoConfigure {
|
||||
/**
|
||||
* Setup support for Who, Multi-Tenant and DB encryption if they are not already set.
|
||||
*/
|
||||
private void setupProviders(DatabaseBuilder config) {
|
||||
private void setupProviders(DatabaseBuilder.Settings config) {
|
||||
new ProviderAutoConfig(config).run();
|
||||
}
|
||||
|
||||
/**
|
||||
* Setup the platform for testing including docker as needed and adjusting datasource config as needed.
|
||||
*/
|
||||
private void setupPlatform(String db, DatabaseBuilder config) {
|
||||
private void setupPlatform(String db, DatabaseBuilder.Settings config) {
|
||||
new PlatformAutoConfig(db, config).run();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -37,11 +37,11 @@ class Config {
|
||||
private String schema;
|
||||
private String username;
|
||||
private String password;
|
||||
private final DatabaseBuilder config;
|
||||
private final DatabaseBuilder.Settings config;
|
||||
private boolean containerDropCreate;
|
||||
private final Properties dockerProperties = new Properties();
|
||||
|
||||
Config(String db, String platform, String databaseName, DatabaseBuilder config) {
|
||||
Config(String db, String platform, String databaseName, DatabaseBuilder.Settings config) {
|
||||
this.db = db;
|
||||
this.platform = platform;
|
||||
this.dockerPlatform = platform;
|
||||
|
||||
@@ -38,14 +38,14 @@ public class PlatformAutoConfig {
|
||||
KNOWN_PLATFORMS.put("yugabyte", new YugabyteSetup());
|
||||
}
|
||||
|
||||
private final DatabaseBuilder config;
|
||||
private final DatabaseBuilder.Settings config;
|
||||
private final Properties properties;
|
||||
private String db;
|
||||
private String platform;
|
||||
private PlatformSetup platformSetup;
|
||||
private String databaseName;
|
||||
|
||||
public PlatformAutoConfig(String db, DatabaseBuilder config) {
|
||||
public PlatformAutoConfig(String db, DatabaseBuilder.Settings config) {
|
||||
this.db = db;
|
||||
this.config = config;
|
||||
this.properties = config.getProperties();
|
||||
|
||||
@@ -16,10 +16,10 @@ public class ProviderAutoConfig {
|
||||
|
||||
private static final System.Logger log = AppLog.getLogger("io.ebean.test");
|
||||
|
||||
private final DatabaseBuilder config;
|
||||
private final DatabaseBuilder.Settings config;
|
||||
private final Properties properties;
|
||||
|
||||
public ProviderAutoConfig(DatabaseBuilder config) {
|
||||
public ProviderAutoConfig(DatabaseBuilder.Settings config) {
|
||||
this.config = config;
|
||||
this.properties = config.getProperties();
|
||||
}
|
||||
|
||||
@@ -38,7 +38,7 @@ class ConfigTest {
|
||||
|
||||
@Test
|
||||
void extensions_whenNoSetValues() {
|
||||
DatabaseBuilder databaseBuilder = new DatabaseConfig();
|
||||
DatabaseConfig databaseBuilder = new DatabaseConfig();
|
||||
databaseBuilder.loadFromProperties(new Properties());
|
||||
|
||||
Config config = new Config("db", "postgis", "db", databaseBuilder);
|
||||
@@ -56,7 +56,7 @@ class ConfigTest {
|
||||
|
||||
@Test
|
||||
void extensions_whenSetValues() {
|
||||
DatabaseBuilder databaseBuilder = new DatabaseConfig();
|
||||
DatabaseConfig databaseBuilder = new DatabaseConfig();
|
||||
Properties properties = new Properties();
|
||||
properties.setProperty("ebean.test.extensions", "x,y");
|
||||
properties.setProperty("ebean.test.extraDb.extensions", "z");
|
||||
@@ -78,7 +78,7 @@ class ConfigTest {
|
||||
Properties p = new Properties();
|
||||
p.setProperty("ebean.test.extraDb", "other");
|
||||
|
||||
DatabaseBuilder serverConfig = new DatabaseConfig();
|
||||
DatabaseConfig serverConfig = new DatabaseConfig();
|
||||
serverConfig.loadFromProperties(p);
|
||||
|
||||
Config config = new Config("other", "postgres", "other", serverConfig);
|
||||
@@ -100,7 +100,7 @@ class ConfigTest {
|
||||
Properties p = new Properties();
|
||||
p.setProperty("ebean.test.extraDb.dbName", "other");
|
||||
|
||||
DatabaseBuilder serverConfig = new DatabaseConfig();
|
||||
DatabaseConfig serverConfig = new DatabaseConfig();
|
||||
serverConfig.loadFromProperties(p);
|
||||
|
||||
Config config = new Config("other", "postgres", "other", serverConfig);
|
||||
@@ -126,7 +126,7 @@ class ConfigTest {
|
||||
p.setProperty("ebean.test.extraDb.password", "other_pwd");
|
||||
p.setProperty("ebean.test.extraDb.url", "other_url");
|
||||
|
||||
DatabaseBuilder serverConfig = new DatabaseConfig();
|
||||
DatabaseConfig serverConfig = new DatabaseConfig();
|
||||
serverConfig.setName("scOther");
|
||||
serverConfig.loadFromProperties(p);
|
||||
|
||||
@@ -151,7 +151,7 @@ class ConfigTest {
|
||||
sourceProperties.setProperty("ebean.test.dbName", "main");
|
||||
sourceProperties.setProperty("ebean.test.extraDb.dbName", "central");
|
||||
|
||||
DatabaseBuilder serverConfig = new DatabaseConfig();
|
||||
DatabaseConfig serverConfig = new DatabaseConfig();
|
||||
serverConfig.setName("main");
|
||||
serverConfig.loadFromProperties(sourceProperties);
|
||||
|
||||
@@ -220,7 +220,7 @@ class ConfigTest {
|
||||
}
|
||||
|
||||
private Config createConfig(Properties p) {
|
||||
DatabaseBuilder serverConfig = new DatabaseConfig();
|
||||
DatabaseConfig serverConfig = new DatabaseConfig();
|
||||
serverConfig.setName("scOther");
|
||||
serverConfig.loadFromProperties(p);
|
||||
return new Config("db_name", "postgres", "db_name", serverConfig);
|
||||
|
||||
@@ -16,7 +16,7 @@ public class DbMigrationConfigTest {
|
||||
@Test
|
||||
public void testLoad() {
|
||||
|
||||
DatabaseBuilder config = new DatabaseConfig();
|
||||
DatabaseConfig config = new DatabaseConfig();
|
||||
config.setName("h2other");
|
||||
config.loadFromProperties();
|
||||
config.setDefaultServer(false);
|
||||
|
||||
@@ -89,7 +89,7 @@ public class PlatformNoGeneratedKeysTest {
|
||||
|
||||
private static Database testH2Server() {
|
||||
|
||||
DatabaseBuilder config = new DatabaseConfig();
|
||||
DatabaseConfig config = new DatabaseConfig();
|
||||
config.setName("h2_noGeneratedKeys");
|
||||
|
||||
OtherH2Platform platform = new OtherH2Platform();
|
||||
|
||||
@@ -89,7 +89,7 @@ public class DbMigrationGenerateTest {
|
||||
migration.addPlatform(Platform.YUGABYTE);
|
||||
|
||||
|
||||
DatabaseBuilder config = new DatabaseConfig();
|
||||
DatabaseConfig config = new DatabaseConfig();
|
||||
config.setName("migrationtest");
|
||||
config.loadFromProperties();
|
||||
config.setRegister(false);
|
||||
|
||||
@@ -27,7 +27,7 @@ public class BeanFindControllerTest extends BaseTestCase {
|
||||
@Test
|
||||
public void test() {
|
||||
|
||||
DatabaseBuilder config = new DatabaseConfig();
|
||||
var config = new DatabaseConfig();
|
||||
|
||||
config.setName("h2otherfind");
|
||||
config.loadFromProperties();
|
||||
@@ -170,7 +170,7 @@ public class BeanFindControllerTest extends BaseTestCase {
|
||||
}
|
||||
|
||||
private Database prepareSoftRefs() {
|
||||
DatabaseBuilder config = new DatabaseConfig();
|
||||
DatabaseConfig config = new DatabaseConfig();
|
||||
|
||||
config.setName("h2otherfind");
|
||||
config.loadFromProperties();
|
||||
|
||||
@@ -126,7 +126,7 @@ public class TDSpiEbeanServer extends TDSpiServer implements SpiEbeanServer {
|
||||
}
|
||||
|
||||
@Override
|
||||
public DatabaseBuilder config() {
|
||||
public DatabaseBuilder.Settings config() {
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
@@ -579,7 +579,7 @@ public class TDSpiServer implements SpiServer {
|
||||
}
|
||||
|
||||
@Override
|
||||
public DatabaseBuilder config() {
|
||||
public DatabaseBuilder.Settings config() {
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -24,7 +24,7 @@ public class DJsonScalarTest {
|
||||
private final DJsonScalar jsonScalar;
|
||||
|
||||
public DJsonScalarTest() {
|
||||
DatabaseBuilder serverConfig = new DatabaseConfig();
|
||||
var serverConfig = new DatabaseConfig();
|
||||
serverConfig.setDatabasePlatform(new H2Platform());
|
||||
DefaultTypeManager typeManager = new DefaultTypeManager(serverConfig, new BootupClasses());
|
||||
jsonScalar = new DJsonScalar(typeManager);
|
||||
|
||||
@@ -258,7 +258,7 @@ public class TestPersistenceContext extends BaseTestCase {
|
||||
@Test
|
||||
@Disabled
|
||||
void initDb() {
|
||||
DatabaseBuilder config = new DatabaseConfig();
|
||||
DatabaseConfig config = new DatabaseConfig();
|
||||
config.setName("h2-batch");
|
||||
config.loadFromProperties();
|
||||
config.setDdlExtra(false);
|
||||
@@ -292,7 +292,7 @@ public class TestPersistenceContext extends BaseTestCase {
|
||||
@Test
|
||||
@Disabled
|
||||
void testFindEachFindList() {
|
||||
DatabaseBuilder config = new DatabaseConfig();
|
||||
DatabaseConfig config = new DatabaseConfig();
|
||||
config.setName("h2-batch");
|
||||
config.loadFromProperties();
|
||||
config.setDdlRun(false);
|
||||
|
||||
@@ -98,7 +98,7 @@ public class TestPersistenceContextMany extends BaseTestCase {
|
||||
@Test
|
||||
@Disabled
|
||||
void initDb() {
|
||||
DatabaseBuilder config = new DatabaseConfig();
|
||||
DatabaseConfig config = new DatabaseConfig();
|
||||
config.setName("h2-batch");
|
||||
config.loadFromProperties();
|
||||
config.setDdlExtra(false);
|
||||
@@ -142,7 +142,7 @@ public class TestPersistenceContextMany extends BaseTestCase {
|
||||
@Test
|
||||
@Disabled
|
||||
void testFindEachFindList() {
|
||||
DatabaseBuilder config = new DatabaseConfig();
|
||||
DatabaseConfig config = new DatabaseConfig();
|
||||
config.setName("h2-batch");
|
||||
config.loadFromProperties();
|
||||
config.setDdlRun(false);
|
||||
|
||||
@@ -23,7 +23,7 @@ class TestJsonSourceDefault {
|
||||
@ForPlatform(Platform.H2)
|
||||
@Disabled
|
||||
void testDirtyValues_diffSource() {
|
||||
DatabaseBuilder config = new DatabaseConfig();
|
||||
DatabaseConfig config = new DatabaseConfig();
|
||||
config.getDataSourceConfig()
|
||||
.setUsername("sa")
|
||||
.setPassword("")
|
||||
|
||||
+2
-2
@@ -12,7 +12,7 @@ class SqlServerPlatformTest {
|
||||
@Test
|
||||
public void convertQuotedIdentifiers_when_allQuotedIdentifier_sqlServer() {
|
||||
|
||||
DatabaseBuilder config = new DatabaseConfig();
|
||||
DatabaseConfig config = new DatabaseConfig();
|
||||
config.setAllQuotedIdentifiers(true);
|
||||
config.setNamingConvention(new MatchingNamingConvention());
|
||||
|
||||
@@ -26,7 +26,7 @@ class SqlServerPlatformTest {
|
||||
|
||||
@Test
|
||||
public void convertQuotedIdentifiers() {
|
||||
DatabaseBuilder config = new DatabaseConfig();
|
||||
DatabaseConfig config = new DatabaseConfig();
|
||||
|
||||
SqlServer17Platform dbPlatform = new SqlServer17Platform();
|
||||
dbPlatform.configure(config.getPlatformConfig());
|
||||
|
||||
Reference in New Issue
Block a user