diff --git a/hibernate-reactive-core/src/main/java/org/hibernate/reactive/event/impl/DefaultReactiveLoadEventListener.java b/hibernate-reactive-core/src/main/java/org/hibernate/reactive/event/impl/DefaultReactiveLoadEventListener.java index 0bea041f2..5e7003879 100644 --- a/hibernate-reactive-core/src/main/java/org/hibernate/reactive/event/impl/DefaultReactiveLoadEventListener.java +++ b/hibernate-reactive-core/src/main/java/org/hibernate/reactive/event/impl/DefaultReactiveLoadEventListener.java @@ -29,12 +29,12 @@ import org.hibernate.event.spi.LoadEventListener; import org.hibernate.loader.ast.internal.CacheEntityLoaderHelper; import org.hibernate.metamodel.mapping.AttributeMapping; +import org.hibernate.metamodel.mapping.AttributeMappingsList; import org.hibernate.metamodel.mapping.CompositeIdentifierMapping; import org.hibernate.metamodel.mapping.EntityIdentifierMapping; import org.hibernate.metamodel.mapping.EntityMappingType; import org.hibernate.metamodel.mapping.MappingType; import org.hibernate.metamodel.mapping.NonAggregatedIdentifierMapping; -import org.hibernate.persister.entity.AttributeMappingsList; import org.hibernate.persister.entity.EntityPersister; import org.hibernate.proxy.HibernateProxy; import org.hibernate.proxy.LazyInitializer; diff --git a/hibernate-reactive-core/src/main/java/org/hibernate/reactive/persister/entity/mutation/ReactiveInsertCoordinator.java b/hibernate-reactive-core/src/main/java/org/hibernate/reactive/persister/entity/mutation/ReactiveInsertCoordinator.java index 40a4efe62..e2de8f9e9 100644 --- a/hibernate-reactive-core/src/main/java/org/hibernate/reactive/persister/entity/mutation/ReactiveInsertCoordinator.java +++ b/hibernate-reactive-core/src/main/java/org/hibernate/reactive/persister/entity/mutation/ReactiveInsertCoordinator.java @@ -18,8 +18,8 @@ import org.hibernate.generator.BeforeExecutionGenerator; import org.hibernate.generator.Generator; import org.hibernate.metamodel.mapping.AttributeMapping; +import org.hibernate.metamodel.mapping.AttributeMappingsList; import org.hibernate.persister.entity.AbstractEntityPersister; -import org.hibernate.persister.entity.AttributeMappingsList; import org.hibernate.persister.entity.mutation.EntityTableMapping; import org.hibernate.persister.entity.mutation.InsertCoordinator; import org.hibernate.reactive.engine.jdbc.env.internal.ReactiveMutationExecutor; diff --git a/hibernate-reactive-core/src/main/java/org/hibernate/reactive/provider/impl/ReactiveServiceInitiators.java b/hibernate-reactive-core/src/main/java/org/hibernate/reactive/provider/impl/ReactiveServiceInitiators.java index de6c70920..90cf1d157 100644 --- a/hibernate-reactive-core/src/main/java/org/hibernate/reactive/provider/impl/ReactiveServiceInitiators.java +++ b/hibernate-reactive-core/src/main/java/org/hibernate/reactive/provider/impl/ReactiveServiceInitiators.java @@ -27,7 +27,7 @@ import org.hibernate.reactive.id.factory.spi.ReactiveIdentifierGeneratorFactoryInitiator; import org.hibernate.reactive.pool.impl.ReactiveConnectionPoolInitiator; import org.hibernate.reactive.pool.impl.SqlClientPoolConfigurationInitiator; -import org.hibernate.reactive.provider.service.NativeParametersRendering; +import org.hibernate.reactive.provider.service.NativeParametersHandling; import org.hibernate.reactive.provider.service.NoJdbcConnectionProviderInitiator; import org.hibernate.reactive.provider.service.NoJdbcEnvironmentInitiator; import org.hibernate.reactive.provider.service.NoJdbcMultiTenantConnectionProviderInitiator; @@ -154,8 +154,8 @@ private static List> buildInitialServiceInitiatorLis // Custom for Hibernate Reactive: SqmMultiTableMutationStrategyProvider serviceInitiators.add( ReactiveSqmMultiTableMutationStrategyProviderInitiator.INSTANCE ); - // Custom for Hibernate Reactive: NativeParametersRendering - serviceInitiators.add( NativeParametersRendering.INSTANCE ); + // Custom for Hibernate Reactive: NativeParametersHandling + serviceInitiators.add( NativeParametersHandling.INSTANCE ); // --- end of services defined by Hibernate ORM diff --git a/hibernate-reactive-core/src/main/java/org/hibernate/reactive/provider/service/NativeParametersRendering.java b/hibernate-reactive-core/src/main/java/org/hibernate/reactive/provider/service/NativeParametersHandling.java similarity index 67% rename from hibernate-reactive-core/src/main/java/org/hibernate/reactive/provider/service/NativeParametersRendering.java rename to hibernate-reactive-core/src/main/java/org/hibernate/reactive/provider/service/NativeParametersHandling.java index 5a672e2dc..15aaa9e37 100644 --- a/hibernate-reactive-core/src/main/java/org/hibernate/reactive/provider/service/NativeParametersRendering.java +++ b/hibernate-reactive-core/src/main/java/org/hibernate/reactive/provider/service/NativeParametersHandling.java @@ -16,7 +16,7 @@ import org.hibernate.reactive.logging.impl.Log; import org.hibernate.reactive.logging.impl.LoggerFactory; import org.hibernate.service.spi.ServiceRegistryImplementor; -import org.hibernate.sql.ast.spi.JdbcParameterRenderer; +import org.hibernate.sql.ast.spi.ParameterMarkerStrategy; import org.hibernate.type.descriptor.jdbc.JdbcType; /** @@ -24,42 +24,42 @@ * users to set AvailableSettings.DIALECT_NATIVE_PARAM_MARKERS : this * gets enforces as the Vert.x SQL clients require it. */ -public class NativeParametersRendering implements StandardServiceInitiator { +public class NativeParametersHandling implements StandardServiceInitiator { private static final Log LOG = LoggerFactory.make( Log.class, MethodHandles.lookup() ); /** * Singleton access */ - public static final NativeParametersRendering INSTANCE = new NativeParametersRendering(); + public static final NativeParametersHandling INSTANCE = new NativeParametersHandling(); @Override - public JdbcParameterRenderer initiateService(Map configurationValues, ServiceRegistryImplementor registry) { + public ParameterMarkerStrategy initiateService(Map configurationValues, ServiceRegistryImplementor registry) { final Dialect dialect = registry.getService( JdbcServices.class ).getDialect(); final Dialect realDialect = DialectDelegateWrapper.extractRealDialect( dialect ); - final JdbcParameterRenderer renderer = recommendRendered( realDialect ); + final ParameterMarkerStrategy renderer = recommendRendered( realDialect ); LOG.debug( "Initializing service JdbcParameterRenderer with implementation: " + renderer.getClass() ); return renderer; } - private JdbcParameterRenderer recommendRendered(Dialect realDialect) { + private ParameterMarkerStrategy recommendRendered(Dialect realDialect) { if ( realDialect instanceof PostgreSQLDialect ) { return new PostgreSQLNativeParameterMarkers(); } //TBD : Implementations for other DBs else { - return realDialect.getNativeParameterRenderer(); + return realDialect.getNativeParameterMarkerStrategy(); } } @Override - public Class getServiceInitiated() { - return JdbcParameterRenderer.class; + public Class getServiceInitiated() { + return ParameterMarkerStrategy.class; } - private static class PostgreSQLNativeParameterMarkers implements JdbcParameterRenderer { + private static class PostgreSQLNativeParameterMarkers implements ParameterMarkerStrategy { @Override - public String renderJdbcParameter(int position, JdbcType jdbcType) { + public String createMarker(int position, JdbcType jdbcType) { return "$" + position; } } diff --git a/hibernate-reactive-core/src/main/java/org/hibernate/reactive/query/sql/internal/ReactiveNativeNonSelectQueryPlan.java b/hibernate-reactive-core/src/main/java/org/hibernate/reactive/query/sql/internal/ReactiveNativeNonSelectQueryPlan.java index 138b24c31..efed93fad 100644 --- a/hibernate-reactive-core/src/main/java/org/hibernate/reactive/query/sql/internal/ReactiveNativeNonSelectQueryPlan.java +++ b/hibernate-reactive-core/src/main/java/org/hibernate/reactive/query/sql/internal/ReactiveNativeNonSelectQueryPlan.java @@ -61,9 +61,7 @@ public CompletionStage executeReactiveUpdate(DomainQueryExecutionContex } else { jdbcParameterBinders = new ArrayList<>( parameterList.size() ); - jdbcParameterBindings = new JdbcParameterBindingsImpl( parameterList.size() ); - - jdbcParameterBindings.registerNativeQueryParameters( + jdbcParameterBindings = new JdbcParameterBindingsImpl( queryParameterBindings, parameterList, jdbcParameterBinders, diff --git a/hibernate-reactive-core/src/main/java/org/hibernate/reactive/query/sql/internal/ReactiveNativeSelectQueryPlanImpl.java b/hibernate-reactive-core/src/main/java/org/hibernate/reactive/query/sql/internal/ReactiveNativeSelectQueryPlanImpl.java index 2e9f5683c..781ad06b4 100644 --- a/hibernate-reactive-core/src/main/java/org/hibernate/reactive/query/sql/internal/ReactiveNativeSelectQueryPlanImpl.java +++ b/hibernate-reactive-core/src/main/java/org/hibernate/reactive/query/sql/internal/ReactiveNativeSelectQueryPlanImpl.java @@ -82,9 +82,7 @@ public CompletionStage> reactivePerformList(DomainQueryExecutionContext } else { jdbcParameterBinders = new ArrayList<>( parameterList.size() ); - jdbcParameterBindings = new JdbcParameterBindingsImpl( parameterList.size() ); - - jdbcParameterBindings.registerNativeQueryParameters( + jdbcParameterBindings = new JdbcParameterBindingsImpl( queryParameterBindings, parameterList, jdbcParameterBinders,