diff --git a/bom/application/pom.xml b/bom/application/pom.xml index d0963f74ab6724..7e39cbf73ffaea 100644 --- a/bom/application/pom.xml +++ b/bom/application/pom.xml @@ -101,7 +101,7 @@ bytebuddy.version (just below), hibernate-orm.version-for-documentation (in docs/pom.xml) and antlr.version.version in build-parent/pom.xml WARNING again for diffs that don't provide enough context: when updating, see above --> - 6.3.1.Final + 6.4.0.CR1 1.14.7 6.0.6.Final 2.0.6.Final @@ -190,7 +190,7 @@ 2.1.SP1 5.3.1 5.8.0 - 4.10.1 + 4.13.0 2.0.2.Final 22.0.5 1.15.1 diff --git a/build-parent/pom.xml b/build-parent/pom.xml index bd06d38ef306f4..5c932db050ebdd 100644 --- a/build-parent/pom.xml +++ b/build-parent/pom.xml @@ -72,7 +72,7 @@ - 4.10.1 + 4.13.0 :Z diff --git a/extensions/hibernate-orm/deployment/src/main/java/io/quarkus/hibernate/orm/deployment/HibernateOrmTypes.java b/extensions/hibernate-orm/deployment/src/main/java/io/quarkus/hibernate/orm/deployment/HibernateOrmTypes.java index 9cf8734dfa33ea..e21152cf216c1b 100644 --- a/extensions/hibernate-orm/deployment/src/main/java/io/quarkus/hibernate/orm/deployment/HibernateOrmTypes.java +++ b/extensions/hibernate-orm/deployment/src/main/java/io/quarkus/hibernate/orm/deployment/HibernateOrmTypes.java @@ -36,6 +36,7 @@ private HibernateOrmTypes() { DotName.createSimple("org.hibernate.annotations.NamedNativeQuery"), DotName.createSimple("org.hibernate.annotations.NamedQueries"), DotName.createSimple("org.hibernate.annotations.NamedQuery"), + DotName.createSimple("org.hibernate.annotations.SoftDelete"), DotName.createSimple("org.hibernate.annotations.TypeRegistration"), DotName.createSimple("org.hibernate.annotations.TypeRegistrations")); @@ -301,6 +302,7 @@ private HibernateOrmTypes() { DotName.createSimple("org.hibernate.annotations.SecondaryRow"), DotName.createSimple("org.hibernate.annotations.SecondaryRows"), DotName.createSimple("org.hibernate.annotations.SelectBeforeUpdate"), + DotName.createSimple("org.hibernate.annotations.SoftDelete"), DotName.createSimple("org.hibernate.annotations.SortComparator"), DotName.createSimple("org.hibernate.annotations.SortNatural"), DotName.createSimple("org.hibernate.annotations.Source"), diff --git a/extensions/hibernate-orm/runtime/src/main/java/io/quarkus/hibernate/orm/runtime/StatelessSessionLazyDelegator.java b/extensions/hibernate-orm/runtime/src/main/java/io/quarkus/hibernate/orm/runtime/StatelessSessionLazyDelegator.java index 41f7ab0f524894..fa815d3fe5d43d 100644 --- a/extensions/hibernate-orm/runtime/src/main/java/io/quarkus/hibernate/orm/runtime/StatelessSessionLazyDelegator.java +++ b/extensions/hibernate-orm/runtime/src/main/java/io/quarkus/hibernate/orm/runtime/StatelessSessionLazyDelegator.java @@ -121,6 +121,11 @@ public String getTenantIdentifier() { return delegate.get().getTenantIdentifier(); } + @Override + public Object getTenantIdentifierValue() { + return delegate.get().getTenantIdentifier(); + } + @Override public boolean isOpen() { return delegate.get().isOpen(); diff --git a/extensions/hibernate-orm/runtime/src/main/java/io/quarkus/hibernate/orm/runtime/session/TransactionScopedSession.java b/extensions/hibernate-orm/runtime/src/main/java/io/quarkus/hibernate/orm/runtime/session/TransactionScopedSession.java index d526ce46b059e4..9541b03d0bb8cc 100644 --- a/extensions/hibernate-orm/runtime/src/main/java/io/quarkus/hibernate/orm/runtime/session/TransactionScopedSession.java +++ b/extensions/hibernate-orm/runtime/src/main/java/io/quarkus/hibernate/orm/runtime/session/TransactionScopedSession.java @@ -1142,6 +1142,13 @@ public String getTenantIdentifier() { } } + @Override + public Object getTenantIdentifierValue() { + try (SessionResult emr = acquireSession()) { + return emr.session.getTenantIdentifierValue(); + } + } + @Override public boolean isConnected() { checkBlocking(); diff --git a/extensions/hibernate-orm/runtime/src/main/java/io/quarkus/hibernate/orm/runtime/session/TransactionScopedStatelessSession.java b/extensions/hibernate-orm/runtime/src/main/java/io/quarkus/hibernate/orm/runtime/session/TransactionScopedStatelessSession.java index 7ae85355ffeb8f..c20c509377e646 100644 --- a/extensions/hibernate-orm/runtime/src/main/java/io/quarkus/hibernate/orm/runtime/session/TransactionScopedStatelessSession.java +++ b/extensions/hibernate-orm/runtime/src/main/java/io/quarkus/hibernate/orm/runtime/session/TransactionScopedStatelessSession.java @@ -401,6 +401,13 @@ public String getTenantIdentifier() { } } + @Override + public Object getTenantIdentifierValue() { + try (SessionResult emr = acquireSession()) { + return emr.statelessSession.getTenantIdentifierValue(); + } + } + @Override public boolean isConnected() { checkBlocking(); diff --git a/extensions/hibernate-orm/runtime/src/main/java/io/quarkus/hibernate/orm/runtime/tenant/HibernateCurrentTenantIdentifierResolver.java b/extensions/hibernate-orm/runtime/src/main/java/io/quarkus/hibernate/orm/runtime/tenant/HibernateCurrentTenantIdentifierResolver.java index 1989224a064068..66d38d64247913 100644 --- a/extensions/hibernate-orm/runtime/src/main/java/io/quarkus/hibernate/orm/runtime/tenant/HibernateCurrentTenantIdentifierResolver.java +++ b/extensions/hibernate-orm/runtime/src/main/java/io/quarkus/hibernate/orm/runtime/tenant/HibernateCurrentTenantIdentifierResolver.java @@ -15,7 +15,8 @@ * @author Michael Schnell * */ -public final class HibernateCurrentTenantIdentifierResolver implements CurrentTenantIdentifierResolver { +// TODO support other tenant ID types than String; see https://github.com/quarkusio/quarkus/issues/36831 +public final class HibernateCurrentTenantIdentifierResolver implements CurrentTenantIdentifierResolver { private static final Logger LOG = Logger.getLogger(HibernateCurrentTenantIdentifierResolver.class); diff --git a/extensions/hibernate-orm/runtime/src/main/java/io/quarkus/hibernate/orm/runtime/tenant/HibernateMultiTenantConnectionProvider.java b/extensions/hibernate-orm/runtime/src/main/java/io/quarkus/hibernate/orm/runtime/tenant/HibernateMultiTenantConnectionProvider.java index f29c007142fd44..8ea5f7ac188f40 100644 --- a/extensions/hibernate-orm/runtime/src/main/java/io/quarkus/hibernate/orm/runtime/tenant/HibernateMultiTenantConnectionProvider.java +++ b/extensions/hibernate-orm/runtime/src/main/java/io/quarkus/hibernate/orm/runtime/tenant/HibernateMultiTenantConnectionProvider.java @@ -23,7 +23,8 @@ * * @author Michael Schnell */ -public final class HibernateMultiTenantConnectionProvider extends AbstractMultiTenantConnectionProvider { +// TODO support other tenant ID types than String; see https://github.com/quarkusio/quarkus/issues/36831 +public final class HibernateMultiTenantConnectionProvider extends AbstractMultiTenantConnectionProvider { private static final Logger LOG = Logger.getLogger(HibernateMultiTenantConnectionProvider.class);