From b238b1e0e59bec06a2cfe43d42e57e34209f8df9 Mon Sep 17 00:00:00 2001 From: Lukas Eder Date: Thu, 26 Sep 2019 10:03:39 +0200 Subject: [PATCH] [jOOQ/jOOQ#9274] AttributeConverterExtractor should receive custom Hibernate configuration properties --- .../meta/extensions/jpa/AttributeConverterExtractor.java | 1 + .../java/org/jooq/meta/extensions/jpa/JPADatabase.java | 9 ++++++--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/jOOQ-meta-extensions/src/main/java/org/jooq/meta/extensions/jpa/AttributeConverterExtractor.java b/jOOQ-meta-extensions/src/main/java/org/jooq/meta/extensions/jpa/AttributeConverterExtractor.java index 36f9b8cb4f..116ebadb57 100644 --- a/jOOQ-meta-extensions/src/main/java/org/jooq/meta/extensions/jpa/AttributeConverterExtractor.java +++ b/jOOQ-meta-extensions/src/main/java/org/jooq/meta/extensions/jpa/AttributeConverterExtractor.java @@ -165,6 +165,7 @@ final class AttributeConverterExtractor implements Integrator { Properties properties = new Properties(); properties.put("hibernate.dialect", JPADatabase.HIBERNATE_DIALECT); properties.put("hibernate.hbm2ddl.auto", "create-drop"); + properties.putAll(database.userSettings); return properties; } diff --git a/jOOQ-meta-extensions/src/main/java/org/jooq/meta/extensions/jpa/JPADatabase.java b/jOOQ-meta-extensions/src/main/java/org/jooq/meta/extensions/jpa/JPADatabase.java index 92b6b0bdda..c58800cb75 100644 --- a/jOOQ-meta-extensions/src/main/java/org/jooq/meta/extensions/jpa/JPADatabase.java +++ b/jOOQ-meta-extensions/src/main/java/org/jooq/meta/extensions/jpa/JPADatabase.java @@ -46,6 +46,7 @@ import java.sql.SQLException; import java.util.ArrayList; import java.util.Collection; import java.util.EnumSet; +import java.util.HashMap; import java.util.Iterator; import java.util.LinkedHashMap; import java.util.List; @@ -102,8 +103,9 @@ public class JPADatabase extends H2Database { static final String HIBERNATE_DIALECT = SQLDialect.H2.thirdParty().hibernateDialect(); static final JooqLogger log = JooqLogger.getLogger(JPADatabase.class); - private Connection connection; - private boolean publicIsDefault; + Connection connection; + boolean publicIsDefault; + Map userSettings = new HashMap<>(); @Override public void close() { @@ -149,8 +151,9 @@ public class JPADatabase extends H2Database { String key = "" + entry.getKey(); if (key.startsWith("hibernate.") || key.startsWith("javax.persistence.")) - settings.put(key, entry.getValue()); + userSettings.put(key, entry.getValue()); } + settings.putAll(userSettings); StandardServiceRegistryBuilder builder = new StandardServiceRegistryBuilder(); builder.applySettings(settings);