Class HibernateOrmProcessor
- java.lang.Object
-
- io.quarkus.hibernate.orm.deployment.HibernateOrmProcessor
-
public final class HibernateOrmProcessor extends Object
Simulacrum of JPA bootstrap.This does not address the proper integration with Hibernate Rather prepare the path to providing the right metadata
- Author:
- Emmanuel Bernard emmanuel@hibernate.org, Sanne Grinovero
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) static classHibernateOrmProcessor.CachedProxy
-
Field Summary
Fields Modifier and Type Field Description static StringHIBERNATE_ORM_CONFIG_PREFIXstatic StringNO_SQL_LOAD_SCRIPT_FILE
-
Constructor Summary
Constructors Constructor Description HibernateOrmProcessor()
-
Method Summary
-
-
-
Field Detail
-
HIBERNATE_ORM_CONFIG_PREFIX
public static final String HIBERNATE_ORM_CONFIG_PREFIX
- See Also:
- Constant Field Values
-
NO_SQL_LOAD_SCRIPT_FILE
public static final String NO_SQL_LOAD_SCRIPT_FILE
- See Also:
- Constant Field Values
-
-
Method Detail
-
registerHibernateOrmMetadataForCoreDialects
void registerHibernateOrmMetadataForCoreDialects(BuildProducer<DatabaseKindDialectBuildItem> producer)
-
checkTransactionsSupport
void checkTransactionsSupport(Capabilities capabilities, BuildProducer<ValidationPhaseBuildItem.ValidationErrorBuildItem> validationErrors)
-
includeArchivesHostingEntityPackagesInIndex
void includeArchivesHostingEntityPackagesInIndex(HibernateOrmConfig hibernateOrmConfig, BuildProducer<AdditionalApplicationArchiveMarkerBuildItem> additionalApplicationArchiveMarkers)
-
warnOfSchemaProblems
void warnOfSchemaProblems(HibernateOrmConfig config, HibernateOrmRecorder recorder)
-
addPersistenceUnitAnnotationToIndex
AdditionalIndexedClassesBuildItem addPersistenceUnitAnnotationToIndex()
-
enrollBeanValidationTypeSafeActivatorForReflection
public void enrollBeanValidationTypeSafeActivatorForReflection(Capabilities capabilities, BuildProducer<ReflectiveClassBuildItem> reflectiveClasses)
-
hotDeploymentWatchedFiles
List<HotDeploymentWatchedFileBuildItem> hotDeploymentWatchedFiles(HibernateOrmConfig config, LaunchModeBuildItem launchMode)
-
parsePersistenceXmlDescriptors
public void parsePersistenceXmlDescriptors(HibernateOrmConfig config, BuildProducer<PersistenceXmlDescriptorBuildItem> persistenceXmlDescriptorBuildItemBuildProducer)
-
defineTypeOfImpliedPU
public ImpliedBlockingPersistenceUnitTypeBuildItem defineTypeOfImpliedPU(List<io.quarkus.agroal.spi.JdbcDataSourceBuildItem> jdbcDataSourcesBuildItem, Capabilities capabilities)
-
configurationDescriptorBuilding
public void configurationDescriptorBuilding(HibernateOrmConfig hibernateOrmConfig, CombinedIndexBuildItem index, ImpliedBlockingPersistenceUnitTypeBuildItem impliedPU, List<PersistenceXmlDescriptorBuildItem> persistenceXmlDescriptors, List<io.quarkus.agroal.spi.JdbcDataSourceBuildItem> jdbcDataSources, ApplicationArchivesBuildItem applicationArchivesBuildItem, LaunchModeBuildItem launchMode, JpaModelBuildItem jpaModel, Capabilities capabilities, BuildProducer<SystemPropertyBuildItem> systemProperties, BuildProducer<NativeImageResourceBuildItem> nativeImageResources, BuildProducer<HotDeploymentWatchedFileBuildItem> hotDeploymentWatchedFiles, BuildProducer<PersistenceUnitDescriptorBuildItem> persistenceUnitDescriptors, List<DatabaseKindDialectBuildItem> dbKindMetadataBuildItems)
-
jpaEntitiesIndexer
public JpaModelIndexBuildItem jpaEntitiesIndexer(CombinedIndexBuildItem index, List<AdditionalJpaModelBuildItem> additionalJpaModelBuildItems, List<AdditionalJpaModelBuildItem> deprecatedAdditionalJpaModelBuildItems)
-
contributePersistenceXmlToJpaModel
public void contributePersistenceXmlToJpaModel(BuildProducer<JpaModelPersistenceUnitContributionBuildItem> jpaModelPuContributions, List<PersistenceXmlDescriptorBuildItem> persistenceXmlDescriptors)
-
contributeQuarkusConfigToJpaModel
public void contributeQuarkusConfigToJpaModel(BuildProducer<JpaModelPersistenceUnitContributionBuildItem> jpaModelPuContributions, HibernateOrmConfig hibernateOrmConfig)
-
defineJpaEntities
public void defineJpaEntities(JpaModelIndexBuildItem indexBuildItem, BuildProducer<JpaModelBuildItem> domainObjectsProducer, List<IgnorableNonIndexedClasses> ignorableNonIndexedClassesBuildItems, BuildProducer<ReflectiveClassBuildItem> reflectiveClass, BuildProducer<HotDeploymentWatchedFileBuildItem> hotDeploymentWatchedFiles, List<JpaModelPersistenceUnitContributionBuildItem> jpaModelPuContributions)
-
pregenProxies
public BytecodeRecorderConstantDefinitionBuildItem pregenProxies(JpaModelBuildItem jpaModel, JpaModelIndexBuildItem indexBuildItem, TransformedClassesBuildItem transformedClassesBuildItem, List<PersistenceUnitDescriptorBuildItem> persistenceUnitDescriptorBuildItems, BuildProducer<GeneratedClassBuildItem> generatedClassBuildItemBuildProducer, LiveReloadBuildItem liveReloadBuildItem)
-
preGenAnnotationProxies
public void preGenAnnotationProxies(List<PersistenceUnitDescriptorBuildItem> persistenceUnitDescriptorBuildItems, BuildProducer<ReflectiveClassBuildItem> reflective, BuildProducer<NativeImageProxyDefinitionBuildItem> proxyDefinitions)
-
build
public void build(RecorderContext recorderContext, HibernateOrmRecorder recorder, Capabilities capabilities, JpaModelBuildItem jpaModel, List<PersistenceUnitDescriptorBuildItem> persistenceUnitDescriptorBuildItems, List<HibernateOrmIntegrationStaticConfiguredBuildItem> integrationBuildItems, BuildProducer<BeanContainerListenerBuildItem> beanContainerListener, LaunchModeBuildItem launchMode) throws Exception
- Throws:
Exception
-
handleNativeImageImportSql
void handleNativeImageImportSql(BuildProducer<NativeImageResourceBuildItem> resources, List<PersistenceUnitDescriptorBuildItem> descriptors, JpaModelBuildItem jpaModel, LaunchModeBuildItem launchMode)
-
registerBeans
void registerBeans(HibernateOrmConfig hibernateOrmConfig, BuildProducer<AdditionalBeanBuildItem> additionalBeans, BuildProducer<UnremovableBeanBuildItem> unremovableBeans, Capabilities capabilities, CombinedIndexBuildItem combinedIndex, List<PersistenceUnitDescriptorBuildItem> descriptors, JpaModelBuildItem jpaModel)
-
enhancerDomainObjects
public HibernateEnhancersRegisteredBuildItem enhancerDomainObjects(JpaModelBuildItem jpaModel, BuildProducer<BytecodeTransformerBuildItem> transformers, List<AdditionalJpaModelBuildItem> additionalJpaModelBuildItems, List<AdditionalJpaModelBuildItem> deprecatedAdditionalJpaModelBuildItems, BuildProducer<GeneratedClassBuildItem> additionalClasses)
-
candidatesForFieldAccess
public HibernateModelClassCandidatesForFieldAccessBuildItem candidatesForFieldAccess(JpaModelBuildItem jpaModel)
-
build
public void build(HibernateOrmRecorder recorder, HibernateOrmConfig hibernateOrmConfig, HibernateOrmRuntimeConfig hibernateOrmRuntimeConfig, BuildProducer<JpaModelPersistenceUnitMappingBuildItem> jpaModelPersistenceUnitMapping, List<PersistenceUnitDescriptorBuildItem> descriptors, JpaModelBuildItem jpaModel) throws Exception
- Throws:
Exception
-
setupPersistenceProvider
public PersistenceProviderSetUpBuildItem setupPersistenceProvider(HibernateOrmRecorder recorder, Capabilities capabilities, HibernateOrmRuntimeConfig hibernateOrmRuntimeConfig, List<HibernateOrmIntegrationRuntimeConfiguredBuildItem> integrationBuildItems, BuildProducer<RecorderBeanInitializedBuildItem> orderEnforcer)
-
startPersistenceUnits
public ServiceStartBuildItem startPersistenceUnits(HibernateOrmRecorder recorder, BeanContainerBuildItem beanContainer, List<io.quarkus.agroal.spi.JdbcDataSourceBuildItem> dataSourcesConfigured, JpaModelBuildItem jpaModel, List<io.quarkus.agroal.spi.JdbcDataSourceSchemaReadyBuildItem> schemaReadyBuildItem, List<PersistenceProviderSetUpBuildItem> persistenceProviderSetUp) throws Exception
- Throws:
Exception
-
multitenancy
public void multitenancy(HibernateOrmRecorder recorder, List<PersistenceUnitDescriptorBuildItem> persistenceUnitDescriptors, BuildProducer<SyntheticBeanBuildItem> syntheticBeans, BuildProducer<UnremovableBeanBuildItem> unremovableBeans)
-
produceLoggingCategories
public void produceLoggingCategories(HibernateOrmConfig hibernateOrmConfig, BuildProducer<LogCategoryBuildItem> categories)
-
registerStaticMetamodelClassesForReflection
public void registerStaticMetamodelClassesForReflection(CombinedIndexBuildItem index, BuildProducer<ReflectiveClassBuildItem> reflective)
-
registerInjectServiceMethodsForReflection
public void registerInjectServiceMethodsForReflection(CombinedIndexBuildItem index, BuildProducer<ReflectiveClassBuildItem> reflective)
-
getModelClassesAndPackagesPerPersistenceUnits
public static Map<String,Set<String>> getModelClassesAndPackagesPerPersistenceUnits(HibernateOrmConfig hibernateOrmConfig, JpaModelBuildItem jpaModel, org.jboss.jandex.IndexView index, boolean enableDefaultPersistenceUnit)
-
buildQuarkusScanner
public static QuarkusScanner buildQuarkusScanner(JpaModelBuildItem jpaModel)
Set up the scanner, as this scanning has already been done we need to just tell it about the classes we have discovered. This scanner is bytecode serializable and is passed directly into the recorder- Parameters:
jpaModel- the previously discovered JPA model (domain objects, ...)- Returns:
- a new QuarkusScanner with all domainObjects registered
-
-