HHH-17504 - Ongoing JPA 32 work
HHH-17350 - Work on hibernate-models, XSD and JAXB HHH-16114 - Improve boot metamodel binding HHH-15996 - Develop an abstraction for Annotation in annotation processing HHH-16012 - Develop an abstraction for domain model Class refs HHH-15997 - Support for dynamic models in orm.xml HHH-15698 - Support for entity-name in mapping.xsd
This commit is contained in:
parent
cf69c2683d
commit
3e20e0939f
|
@ -1,10 +1,10 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* Copyright: Red Hat Inc. and Hibernate Authors
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html.
|
||||
*/
|
||||
package org.hibernate.boot.models.bind.internal;
|
||||
package org.hibernate.boot.internal;
|
||||
|
||||
import java.lang.annotation.ElementType;
|
||||
import java.lang.annotation.Retention;
|
|
@ -11,6 +11,7 @@ import java.util.function.Consumer;
|
|||
|
||||
import org.hibernate.annotations.*;
|
||||
import org.hibernate.boot.internal.Abstract;
|
||||
import org.hibernate.boot.internal.AnyKeyType;
|
||||
import org.hibernate.boot.internal.CollectionClassification;
|
||||
import org.hibernate.boot.internal.Extends;
|
||||
import org.hibernate.boot.internal.Target;
|
||||
|
@ -172,6 +173,7 @@ public interface HibernateAnnotations {
|
|||
AnnotationDescriptor<WhereJoinTable> WHERE_JOIN_TABLE = createOrmDescriptor( WhereJoinTable.class );
|
||||
|
||||
AnnotationDescriptor<Abstract> ABSTRACT = createOrmDescriptor( Abstract.class );
|
||||
AnnotationDescriptor<AnyKeyType> ANY_KEY_TYPE = createOrmDescriptor( AnyKeyType.class );
|
||||
AnnotationDescriptor<CollectionClassification> COLLECTION_CLASSIFICATION = createOrmDescriptor( CollectionClassification.class );
|
||||
AnnotationDescriptor<Extends> EXTENDS = createOrmDescriptor( Extends.class );
|
||||
AnnotationDescriptor<Target> TARGET = createOrmDescriptor( Target.class );
|
||||
|
|
|
@ -14,12 +14,10 @@ import org.hibernate.annotations.Mutability;
|
|||
import org.hibernate.annotations.NaturalId;
|
||||
import org.hibernate.annotations.OptimisticLock;
|
||||
import org.hibernate.boot.model.convert.internal.ClassBasedConverterDescriptor;
|
||||
import org.hibernate.boot.model.naming.Identifier;
|
||||
import org.hibernate.boot.models.AnnotationPlacementException;
|
||||
import org.hibernate.boot.models.bind.spi.BindingContext;
|
||||
import org.hibernate.boot.models.bind.spi.BindingOptions;
|
||||
import org.hibernate.boot.models.bind.spi.BindingState;
|
||||
import org.hibernate.boot.models.bind.spi.TableReference;
|
||||
import org.hibernate.boot.models.categorize.spi.AttributeMetadata;
|
||||
import org.hibernate.mapping.BasicValue;
|
||||
import org.hibernate.mapping.Component;
|
||||
|
@ -233,21 +231,6 @@ public class AttributeBinding extends Binding {
|
|||
bindingState,
|
||||
bindingContext
|
||||
);
|
||||
// todo : implicit column
|
||||
final var columnAnn = member.getAnnotationUsage( annotation );
|
||||
final var column = ColumnHelper.bindColumn( columnAnn, property::getName );
|
||||
|
||||
var tableName = BindingHelper.getValue( columnAnn, "table", "" );
|
||||
if ( "".equals( tableName ) || tableName == null ) {
|
||||
basicValue.setTable( primaryTable );
|
||||
}
|
||||
else {
|
||||
final Identifier identifier = Identifier.toIdentifier( tableName );
|
||||
final TableReference tableByName = bindingState.getTableByName( identifier.getCanonicalName() );
|
||||
basicValue.setTable( tableByName.table() );
|
||||
}
|
||||
|
||||
basicValue.addColumn( column );
|
||||
}
|
||||
|
||||
private void applyNaturalId(AttributeMetadata attributeMetadata, Property property) {
|
||||
|
|
|
@ -17,6 +17,7 @@ import org.hibernate.annotations.Filter;
|
|||
import org.hibernate.boot.models.bind.spi.BindingContext;
|
||||
import org.hibernate.boot.models.bind.spi.BindingOptions;
|
||||
import org.hibernate.boot.models.bind.spi.BindingState;
|
||||
import org.hibernate.boot.models.bind.spi.TableReference;
|
||||
import org.hibernate.boot.models.categorize.spi.AttributeMetadata;
|
||||
import org.hibernate.boot.models.categorize.spi.EntityHierarchy;
|
||||
import org.hibernate.boot.models.categorize.spi.EntityTypeMetadata;
|
||||
|
@ -356,21 +357,14 @@ public abstract class EntityBinding extends IdentifiableTypeBinding {
|
|||
}
|
||||
}
|
||||
|
||||
protected void processSecondaryTables() {
|
||||
final List<SecondaryTable> secondaryTables = TableHelper.bindSecondaryTables(
|
||||
protected void processSecondaryTables(TableReference primaryTableReference) {
|
||||
TableHelper.bindSecondaryTables(
|
||||
this,
|
||||
primaryTableReference,
|
||||
bindingOptions,
|
||||
bindingState,
|
||||
bindingContext
|
||||
);
|
||||
|
||||
secondaryTables.forEach( (secondaryTable) -> {
|
||||
final Join join = new Join();
|
||||
join.setTable( secondaryTable.table() );
|
||||
join.setPersistentClass( getPersistentClass() );
|
||||
join.setOptional( secondaryTable.optional() );
|
||||
join.setInverse( !secondaryTable.owned() );
|
||||
} );
|
||||
}
|
||||
|
||||
protected void prepareSubclassBindings() {
|
||||
|
|
|
@ -83,7 +83,7 @@ public class RootEntityBinding extends EntityBinding {
|
|||
bindingContext
|
||||
);
|
||||
|
||||
processSecondaryTables();
|
||||
processSecondaryTables( this.tableReference );
|
||||
|
||||
bindingState.registerTypeBinding( typeMetadata, this );
|
||||
|
||||
|
@ -111,8 +111,6 @@ public class RootEntityBinding extends EntityBinding {
|
|||
applyFilters( typeMetadata, rootClass );
|
||||
applyJpaEventListeners( typeMetadata, rootClass );
|
||||
|
||||
// todo : handle any super mapped-superclasses
|
||||
|
||||
prepareAttributeBindings( tableReference.table() );
|
||||
|
||||
prepareSubclassBindings();
|
||||
|
|
|
@ -132,15 +132,14 @@ public class TableHelper {
|
|||
return tableReference;
|
||||
}
|
||||
|
||||
public static List<SecondaryTable> bindSecondaryTables(
|
||||
public static void bindSecondaryTables(
|
||||
EntityBinding entityBinding,
|
||||
TableReference primaryTableReference,
|
||||
BindingOptions bindingOptions,
|
||||
BindingState bindingState,
|
||||
BindingContext bindingContext) {
|
||||
final ClassDetails typeClassDetails = entityBinding.getTypeMetadata().getClassDetails();
|
||||
|
||||
final List<AnnotationUsage<jakarta.persistence.SecondaryTable>> secondaryTableAnns = typeClassDetails.getRepeatedAnnotationUsages( jakarta.persistence.SecondaryTable.class );
|
||||
final List<SecondaryTable> result = new ArrayList<>( secondaryTableAnns.size() );
|
||||
|
||||
secondaryTableAnns.forEach( (secondaryTableAnn) -> {
|
||||
final AnnotationUsage<SecondaryRow> secondaryRowAnn = typeClassDetails.getNamedAnnotationUsage(
|
||||
|
@ -150,20 +149,20 @@ public class TableHelper {
|
|||
);
|
||||
final SecondaryTable binding = bindSecondaryTable(
|
||||
entityBinding,
|
||||
primaryTableReference,
|
||||
secondaryTableAnn,
|
||||
secondaryRowAnn,
|
||||
bindingOptions,
|
||||
bindingState,
|
||||
bindingContext
|
||||
);
|
||||
result.add( binding );
|
||||
bindingState.addSecondaryTable( binding );
|
||||
} );
|
||||
return result;
|
||||
}
|
||||
|
||||
public static SecondaryTable bindSecondaryTable(
|
||||
EntityBinding entityBinding,
|
||||
TableReference primaryTableReference,
|
||||
AnnotationUsage<jakarta.persistence.SecondaryTable> secondaryTableAnn,
|
||||
AnnotationUsage<SecondaryRow> secondaryRowAnn,
|
||||
BindingOptions bindingOptions,
|
||||
|
@ -197,7 +196,7 @@ public class TableHelper {
|
|||
bindingContext
|
||||
);
|
||||
|
||||
final var binding = bindingState.getMetadataBuildingContext().getMetadataCollector().addTable(
|
||||
final var secondaryTable = bindingState.getMetadataBuildingContext().getMetadataCollector().addTable(
|
||||
toCanonicalName( schemaName ),
|
||||
toCanonicalName( catalogName ),
|
||||
logicalName.getCanonicalName(),
|
||||
|
@ -206,15 +205,15 @@ public class TableHelper {
|
|||
bindingState.getMetadataBuildingContext()
|
||||
);
|
||||
|
||||
applyComment( binding, secondaryTableAnn, findCommentAnnotation(
|
||||
applyComment( secondaryTable, secondaryTableAnn, findCommentAnnotation(
|
||||
entityBinding.getTypeMetadata(),
|
||||
logicalName,
|
||||
false
|
||||
) );
|
||||
applyOptions( binding, secondaryTableAnn );
|
||||
applyOptions( secondaryTable, secondaryTableAnn );
|
||||
|
||||
final Join join = new Join();
|
||||
join.setTable( binding );
|
||||
join.setTable( secondaryTable );
|
||||
join.setOptional( BindingHelper.getValue( secondaryRowAnn, "optional", true ) );
|
||||
join.setInverse( !BindingHelper.getValue( secondaryRowAnn, "owned", true ) );
|
||||
join.setPersistentClass( entityBinding.getPersistentClass() );
|
||||
|
@ -231,7 +230,7 @@ public class TableHelper {
|
|||
physicalNamingStrategy.toPhysicalSchemaName( schemaName, jdbcEnvironment ),
|
||||
BindingHelper.getValue( secondaryRowAnn, "optional", true ),
|
||||
BindingHelper.getValue( secondaryRowAnn, "owned", true ),
|
||||
binding
|
||||
secondaryTable
|
||||
);
|
||||
}
|
||||
|
||||
|
|
|
@ -18,7 +18,7 @@ import org.hibernate.boot.jaxb.mapping.spi.JaxbAnyMappingDiscriminatorImpl;
|
|||
import org.hibernate.boot.jaxb.mapping.spi.JaxbAnyMappingImpl;
|
||||
import org.hibernate.boot.jaxb.mapping.spi.JaxbAnyMappingKeyImpl;
|
||||
import org.hibernate.boot.jaxb.mapping.spi.JaxbColumnImpl;
|
||||
import org.hibernate.boot.models.bind.internal.AnyKeyType;
|
||||
import org.hibernate.boot.internal.AnyKeyType;
|
||||
import org.hibernate.boot.models.categorize.xml.internal.XmlProcessingHelper;
|
||||
import org.hibernate.boot.models.categorize.xml.internal.db.ColumnProcessing;
|
||||
import org.hibernate.boot.models.categorize.xml.spi.XmlDocumentContext;
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html.
|
||||
*/
|
||||
package org.hibernate.orm.test.boot.models.process;
|
||||
package org.hibernate.orm.test.boot.models;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
|
@ -4,7 +4,7 @@
|
|||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html.
|
||||
*/
|
||||
package org.hibernate.orm.test.boot.models.process;
|
||||
package org.hibernate.orm.test.boot.models;
|
||||
|
||||
import jakarta.persistence.AttributeConverter;
|
||||
import jakarta.persistence.Converter;
|
|
@ -4,7 +4,7 @@
|
|||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html.
|
||||
*/
|
||||
package org.hibernate.orm.test.boot.models.process;
|
||||
package org.hibernate.orm.test.boot.models;
|
||||
|
||||
import java.util.UUID;
|
||||
|
|
@ -24,7 +24,7 @@ import org.hibernate.boot.models.categorize.spi.EntityHierarchy;
|
|||
import org.hibernate.boot.models.categorize.spi.ManagedResourcesProcessor;
|
||||
import org.hibernate.boot.registry.StandardServiceRegistry;
|
||||
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
|
||||
import org.hibernate.orm.test.boot.models.process.ManagedResourcesImpl;
|
||||
import org.hibernate.orm.test.boot.models.ManagedResourcesImpl;
|
||||
|
||||
/**
|
||||
* @author Steve Ebersole
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html.
|
||||
*/
|
||||
package org.hibernate.orm.test.boot.models.resources;
|
||||
package org.hibernate.orm.test.boot.models.process;
|
||||
|
||||
import java.util.Iterator;
|
||||
import java.util.Set;
|
||||
|
@ -50,7 +50,7 @@ import static org.assertj.core.api.Assertions.assertThat;
|
|||
* set of "managed classes" (JPA's term) which Hibernate will process for annotations -
|
||||
* {@code @Entity}, {@code @Converter}, ...
|
||||
* <p/>
|
||||
* And is the likely place that hibernate-models-source would hook in to. Let's see how that might work...
|
||||
* Let's see how using that with hibernate-models that might work...
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
|
@ -14,6 +14,7 @@ import org.hibernate.annotations.GenericGenerator;
|
|||
import org.hibernate.annotations.JavaTypeRegistration;
|
||||
import org.hibernate.annotations.ParamDef;
|
||||
import org.hibernate.id.IncrementGenerator;
|
||||
import org.hibernate.orm.test.boot.models.MyUuidConverter;
|
||||
import org.hibernate.type.descriptor.java.StringJavaType;
|
||||
|
||||
import jakarta.persistence.Entity;
|
||||
|
|
|
@ -1,76 +0,0 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html.
|
||||
*/
|
||||
package org.hibernate.orm.test.boot.models.process;
|
||||
|
||||
import org.hibernate.boot.model.process.spi.ManagedResources;
|
||||
import org.hibernate.orm.test.boot.models.SourceModelTestHelper;
|
||||
import org.hibernate.models.internal.SourceModelBuildingContextImpl;
|
||||
import org.hibernate.models.spi.ClassDetails;
|
||||
import org.hibernate.models.spi.ClassDetailsRegistry;
|
||||
import org.hibernate.type.CharBooleanConverter;
|
||||
import org.hibernate.type.YesNoConverter;
|
||||
import org.hibernate.type.descriptor.converter.spi.BasicValueConverter;
|
||||
import org.hibernate.type.descriptor.java.AbstractClassJavaType;
|
||||
import org.hibernate.type.descriptor.java.StringJavaType;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import org.jboss.jandex.Index;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
import static org.hibernate.models.internal.SimpleClassLoading.SIMPLE_CLASS_LOADING;
|
||||
|
||||
/**
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
public class ProcessorSmokeTests {
|
||||
@Test
|
||||
void simpleTest() {
|
||||
|
||||
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// ManagedResources is built by scanning and from explicit resources
|
||||
// during ORM bootstrap
|
||||
|
||||
final ManagedResourcesImpl.Builder managedResourcesBuilder = new ManagedResourcesImpl.Builder();
|
||||
managedResourcesBuilder
|
||||
.addLoadedClasses( Person.class, MyStringConverter.class )
|
||||
.addPackages( "org.hibernate.models.orm.process" );
|
||||
final ManagedResources managedResources = managedResourcesBuilder.build();
|
||||
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// The Jandex index would generally (1) be built by WF and passed
|
||||
// to ORM or (2) be built by ORM
|
||||
final Index jandexIndex = SourceModelTestHelper.buildJandexIndex(
|
||||
SIMPLE_CLASS_LOADING,
|
||||
Person.class,
|
||||
MyStringConverter.class,
|
||||
MyUuidConverter.class,
|
||||
YesNoConverter.class,
|
||||
CharBooleanConverter.class,
|
||||
BasicValueConverter.class,
|
||||
StringJavaType.class,
|
||||
AbstractClassJavaType.class
|
||||
);
|
||||
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
|
||||
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// Above here is work done before hibernate-models.
|
||||
// Below here is work done by hibernate-models.
|
||||
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
final SourceModelBuildingContextImpl buildingContext = SourceModelTestHelper.createBuildingContext(
|
||||
jandexIndex,
|
||||
SIMPLE_CLASS_LOADING
|
||||
);
|
||||
final ClassDetailsRegistry classDetailsRegistry = buildingContext.getClassDetailsRegistry();
|
||||
final ClassDetails personClassDetails = classDetailsRegistry.findClassDetails( Person.class.getName() );
|
||||
assertThat( personClassDetails ).isNotNull();
|
||||
}
|
||||
|
||||
}
|
|
@ -12,6 +12,9 @@ import java.util.Map;
|
|||
import org.hibernate.boot.internal.MetadataBuilderImpl;
|
||||
import org.hibernate.boot.model.process.spi.ManagedResources;
|
||||
import org.hibernate.orm.test.boot.models.BootstrapContextTesting;
|
||||
import org.hibernate.orm.test.boot.models.ManagedResourcesImpl;
|
||||
import org.hibernate.orm.test.boot.models.MyStringConverter;
|
||||
import org.hibernate.orm.test.boot.models.MyUuidConverter;
|
||||
import org.hibernate.orm.test.boot.models.SourceModelTestHelper;
|
||||
import org.hibernate.boot.models.categorize.spi.CategorizedDomainModel;
|
||||
import org.hibernate.boot.models.categorize.spi.EntityHierarchy;
|
||||
|
@ -37,6 +40,8 @@ import static org.assertj.core.api.Assertions.assertThat;
|
|||
import static org.hibernate.models.internal.SimpleClassLoading.SIMPLE_CLASS_LOADING;
|
||||
|
||||
/**
|
||||
* Tests the general process / flow of using hibernate-models
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
public class SimpleProcessorTests {
|
||||
|
@ -71,12 +76,6 @@ public class SimpleProcessorTests {
|
|||
);
|
||||
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
|
||||
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// Above here is work done before hibernate-models.
|
||||
// Below here is work done by hibernate-models.
|
||||
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
try (StandardServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder().build()) {
|
||||
final MetadataBuilderImpl.MetadataBuildingOptionsImpl metadataBuildingOptions = new MetadataBuilderImpl.MetadataBuildingOptionsImpl( serviceRegistry );
|
||||
final BootstrapContextTesting bootstrapContext = new BootstrapContextTesting( jandexIndex, serviceRegistry, metadataBuildingOptions );
|
||||
|
|
|
@ -1,76 +0,0 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html.
|
||||
*/
|
||||
package org.hibernate.orm.test.boot.models.util;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
import org.hibernate.boot.models.categorize.spi.JpaEventListener;
|
||||
import org.hibernate.boot.models.categorize.spi.ModelCategorizationContext;
|
||||
import org.hibernate.models.spi.AnnotationDescriptorRegistry;
|
||||
import org.hibernate.models.spi.ClassDetailsRegistry;
|
||||
import org.hibernate.models.spi.SourceModelBuildingContext;
|
||||
|
||||
import jakarta.persistence.SharedCacheMode;
|
||||
|
||||
/**
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
public class ModelCategorizationContextTesting implements ModelCategorizationContext {
|
||||
private final ClassDetailsRegistry classDetailsRegistry;
|
||||
private final AnnotationDescriptorRegistry annotationDescriptorRegistry;
|
||||
private final SharedCacheMode sharedCacheMode;
|
||||
|
||||
public ModelCategorizationContextTesting(SourceModelBuildingContext sourceModelBuildingContext) {
|
||||
this( sourceModelBuildingContext, SharedCacheMode.UNSPECIFIED );
|
||||
}
|
||||
|
||||
public ModelCategorizationContextTesting(
|
||||
SourceModelBuildingContext sourceModelBuildingContext,
|
||||
SharedCacheMode sharedCacheMode) {
|
||||
this(
|
||||
sourceModelBuildingContext.getClassDetailsRegistry(),
|
||||
sourceModelBuildingContext.getAnnotationDescriptorRegistry(),
|
||||
sharedCacheMode
|
||||
);
|
||||
}
|
||||
|
||||
public ModelCategorizationContextTesting(
|
||||
ClassDetailsRegistry classDetailsRegistry,
|
||||
AnnotationDescriptorRegistry annotationDescriptorRegistry) {
|
||||
this( classDetailsRegistry, annotationDescriptorRegistry, SharedCacheMode.UNSPECIFIED );
|
||||
}
|
||||
|
||||
public ModelCategorizationContextTesting(
|
||||
ClassDetailsRegistry classDetailsRegistry,
|
||||
AnnotationDescriptorRegistry annotationDescriptorRegistry,
|
||||
SharedCacheMode sharedCacheMode) {
|
||||
this.classDetailsRegistry = classDetailsRegistry;
|
||||
this.annotationDescriptorRegistry = annotationDescriptorRegistry;
|
||||
this.sharedCacheMode = sharedCacheMode;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ClassDetailsRegistry getClassDetailsRegistry() {
|
||||
return classDetailsRegistry;
|
||||
}
|
||||
|
||||
@Override
|
||||
public AnnotationDescriptorRegistry getAnnotationDescriptorRegistry() {
|
||||
return annotationDescriptorRegistry;
|
||||
}
|
||||
|
||||
@Override
|
||||
public SharedCacheMode getSharedCacheMode() {
|
||||
return sharedCacheMode;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<JpaEventListener> getDefaultEventListeners() {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
}
|
|
@ -15,10 +15,10 @@ import org.hibernate.annotations.AnyDiscriminatorValue;
|
|||
import org.hibernate.boot.internal.BootstrapContextImpl;
|
||||
import org.hibernate.boot.internal.MetadataBuilderImpl;
|
||||
import org.hibernate.boot.model.process.spi.ManagedResources;
|
||||
import org.hibernate.boot.models.bind.internal.AnyKeyType;
|
||||
import org.hibernate.boot.internal.AnyKeyType;
|
||||
import org.hibernate.boot.models.categorize.spi.CategorizedDomainModel;
|
||||
import org.hibernate.boot.models.categorize.spi.EntityHierarchy;
|
||||
import org.hibernate.orm.test.boot.models.process.ManagedResourcesImpl;
|
||||
import org.hibernate.orm.test.boot.models.ManagedResourcesImpl;
|
||||
import org.hibernate.boot.registry.StandardServiceRegistry;
|
||||
import org.hibernate.models.spi.AnnotationUsage;
|
||||
import org.hibernate.models.spi.FieldDetails;
|
||||
|
|
|
@ -24,7 +24,7 @@ import org.hibernate.boot.model.process.spi.ManagedResources;
|
|||
import org.hibernate.boot.models.categorize.spi.CategorizedDomainModel;
|
||||
import org.hibernate.boot.models.categorize.spi.EntityHierarchy;
|
||||
import org.hibernate.boot.models.categorize.spi.EntityTypeMetadata;
|
||||
import org.hibernate.orm.test.boot.models.process.ManagedResourcesImpl;
|
||||
import org.hibernate.orm.test.boot.models.ManagedResourcesImpl;
|
||||
import org.hibernate.boot.registry.StandardServiceRegistry;
|
||||
import org.hibernate.models.spi.AnnotationUsage;
|
||||
import org.hibernate.models.spi.FieldDetails;
|
||||
|
|
|
@ -12,7 +12,7 @@ import org.hibernate.boot.model.process.spi.ManagedResources;
|
|||
import org.hibernate.boot.models.categorize.spi.CategorizedDomainModel;
|
||||
import org.hibernate.boot.models.categorize.spi.EntityHierarchy;
|
||||
import org.hibernate.boot.models.categorize.spi.EntityTypeMetadata;
|
||||
import org.hibernate.orm.test.boot.models.process.ManagedResourcesImpl;
|
||||
import org.hibernate.orm.test.boot.models.ManagedResourcesImpl;
|
||||
import org.hibernate.boot.registry.StandardServiceRegistry;
|
||||
import org.hibernate.models.spi.AnnotationUsage;
|
||||
import org.hibernate.models.spi.FieldDetails;
|
||||
|
|
|
@ -16,7 +16,7 @@ import org.hibernate.boot.registry.StandardServiceRegistry;
|
|||
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
|
||||
import org.hibernate.orm.test.boot.models.BootstrapContextTesting;
|
||||
import org.hibernate.orm.test.boot.models.SourceModelTestHelper;
|
||||
import org.hibernate.orm.test.boot.models.process.ManagedResourcesImpl;
|
||||
import org.hibernate.orm.test.boot.models.ManagedResourcesImpl;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
|
|
|
@ -13,7 +13,7 @@ import org.hibernate.boot.models.categorize.spi.AttributeMetadata;
|
|||
import org.hibernate.boot.models.categorize.spi.CategorizedDomainModel;
|
||||
import org.hibernate.boot.models.categorize.spi.EntityHierarchy;
|
||||
import org.hibernate.boot.models.categorize.spi.EntityTypeMetadata;
|
||||
import org.hibernate.orm.test.boot.models.process.ManagedResourcesImpl;
|
||||
import org.hibernate.orm.test.boot.models.ManagedResourcesImpl;
|
||||
import org.hibernate.boot.registry.StandardServiceRegistry;
|
||||
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
|
||||
|
||||
|
|
|
@ -16,7 +16,7 @@ import org.hibernate.boot.models.categorize.spi.CategorizedDomainModel;
|
|||
import org.hibernate.boot.models.categorize.spi.EntityHierarchy;
|
||||
import org.hibernate.boot.models.categorize.spi.EntityTypeMetadata;
|
||||
import org.hibernate.boot.models.categorize.spi.IdentifiableTypeMetadata;
|
||||
import org.hibernate.orm.test.boot.models.process.ManagedResourcesImpl;
|
||||
import org.hibernate.orm.test.boot.models.ManagedResourcesImpl;
|
||||
import org.hibernate.boot.registry.StandardServiceRegistry;
|
||||
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
|
||||
import org.hibernate.models.spi.AnnotationUsage;
|
||||
|
|
|
@ -20,7 +20,7 @@ import org.hibernate.boot.models.categorize.spi.AttributeMetadata;
|
|||
import org.hibernate.boot.models.categorize.spi.CategorizedDomainModel;
|
||||
import org.hibernate.boot.models.categorize.spi.EntityHierarchy;
|
||||
import org.hibernate.boot.models.categorize.spi.EntityTypeMetadata;
|
||||
import org.hibernate.orm.test.boot.models.process.ManagedResourcesImpl;
|
||||
import org.hibernate.orm.test.boot.models.ManagedResourcesImpl;
|
||||
import org.hibernate.orm.test.boot.models.xml.SimpleEntity;
|
||||
import org.hibernate.boot.registry.StandardServiceRegistry;
|
||||
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
|
||||
|
|
|
@ -26,7 +26,7 @@ import org.hibernate.boot.model.process.spi.ManagedResources;
|
|||
import org.hibernate.boot.models.categorize.spi.CategorizedDomainModel;
|
||||
import org.hibernate.boot.models.categorize.spi.EntityHierarchy;
|
||||
import org.hibernate.boot.models.categorize.spi.EntityTypeMetadata;
|
||||
import org.hibernate.orm.test.boot.models.process.ManagedResourcesImpl;
|
||||
import org.hibernate.orm.test.boot.models.ManagedResourcesImpl;
|
||||
import org.hibernate.boot.registry.StandardServiceRegistry;
|
||||
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
|
||||
import org.hibernate.models.spi.AnnotationUsage;
|
||||
|
|
|
@ -15,7 +15,7 @@ import org.hibernate.boot.model.process.spi.ManagedResources;
|
|||
import org.hibernate.boot.models.categorize.spi.CategorizedDomainModel;
|
||||
import org.hibernate.boot.models.categorize.spi.EntityHierarchy;
|
||||
import org.hibernate.boot.models.categorize.spi.EntityTypeMetadata;
|
||||
import org.hibernate.orm.test.boot.models.process.ManagedResourcesImpl;
|
||||
import org.hibernate.orm.test.boot.models.ManagedResourcesImpl;
|
||||
import org.hibernate.boot.registry.StandardServiceRegistry;
|
||||
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
|
||||
import org.hibernate.models.spi.AnnotationUsage;
|
||||
|
|
|
@ -15,7 +15,7 @@ import org.hibernate.boot.model.process.spi.ManagedResources;
|
|||
import org.hibernate.boot.models.categorize.spi.CategorizedDomainModel;
|
||||
import org.hibernate.boot.models.categorize.spi.EntityHierarchy;
|
||||
import org.hibernate.boot.models.categorize.spi.EntityTypeMetadata;
|
||||
import org.hibernate.orm.test.boot.models.process.ManagedResourcesImpl;
|
||||
import org.hibernate.orm.test.boot.models.ManagedResourcesImpl;
|
||||
import org.hibernate.boot.registry.StandardServiceRegistry;
|
||||
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
|
||||
import org.hibernate.models.spi.AnnotationUsage;
|
||||
|
|
|
@ -16,7 +16,7 @@ import org.hibernate.boot.model.process.spi.ManagedResources;
|
|||
import org.hibernate.boot.models.categorize.spi.CategorizedDomainModel;
|
||||
import org.hibernate.boot.models.categorize.spi.EntityHierarchy;
|
||||
import org.hibernate.boot.models.categorize.spi.EntityTypeMetadata;
|
||||
import org.hibernate.orm.test.boot.models.process.ManagedResourcesImpl;
|
||||
import org.hibernate.orm.test.boot.models.ManagedResourcesImpl;
|
||||
import org.hibernate.boot.registry.StandardServiceRegistry;
|
||||
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
|
||||
import org.hibernate.models.spi.AnnotationUsage;
|
||||
|
|
|
@ -13,7 +13,7 @@ import org.hibernate.boot.internal.MetadataBuilderImpl;
|
|||
import org.hibernate.boot.model.process.spi.ManagedResources;
|
||||
import org.hibernate.boot.models.categorize.spi.CategorizedDomainModel;
|
||||
import org.hibernate.boot.models.categorize.spi.JpaEventListener;
|
||||
import org.hibernate.orm.test.boot.models.process.ManagedResourcesImpl;
|
||||
import org.hibernate.orm.test.boot.models.ManagedResourcesImpl;
|
||||
import org.hibernate.boot.registry.StandardServiceRegistry;
|
||||
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
|
||||
import org.hibernate.models.internal.jdk.VoidClassDetails;
|
||||
|
|
|
@ -14,7 +14,7 @@ import org.hibernate.boot.internal.MetadataBuilderImpl;
|
|||
import org.hibernate.boot.model.process.spi.ManagedResources;
|
||||
import org.hibernate.boot.models.categorize.spi.CategorizedDomainModel;
|
||||
import org.hibernate.boot.models.categorize.spi.EntityTypeMetadata;
|
||||
import org.hibernate.orm.test.boot.models.process.ManagedResourcesImpl;
|
||||
import org.hibernate.orm.test.boot.models.ManagedResourcesImpl;
|
||||
import org.hibernate.orm.test.boot.models.xml.SimpleEntity;
|
||||
import org.hibernate.boot.registry.StandardServiceRegistry;
|
||||
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
|
||||
|
|
|
@ -13,7 +13,7 @@ import org.hibernate.boot.models.categorize.spi.AttributeMetadata;
|
|||
import org.hibernate.boot.models.categorize.spi.CategorizedDomainModel;
|
||||
import org.hibernate.boot.models.categorize.spi.EntityHierarchy;
|
||||
import org.hibernate.boot.models.categorize.spi.EntityTypeMetadata;
|
||||
import org.hibernate.orm.test.boot.models.process.ManagedResourcesImpl;
|
||||
import org.hibernate.orm.test.boot.models.ManagedResourcesImpl;
|
||||
import org.hibernate.orm.test.boot.models.xml.SimpleEntity;
|
||||
import org.hibernate.boot.registry.StandardServiceRegistry;
|
||||
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
|
||||
|
|
Loading…
Reference in New Issue