Steve Ebersole (
https://hibernate.atlassian.net/secure/ViewProfile.jspa?accountId=557058%...
) *updated* an issue
Hibernate ORM (
https://hibernate.atlassian.net/browse/HHH?atlOrigin=eyJpIjoiYTM5ZDQ4MWM0...
) / Improvement (
https://hibernate.atlassian.net/browse/HHH-15996?atlOrigin=eyJpIjoiYTM5ZD...
) HHH-15996 (
https://hibernate.atlassian.net/browse/HHH-15996?atlOrigin=eyJpIjoiYTM5ZD...
) Create an abstraction over Annotation for annotation processing (
https://hibernate.atlassian.net/browse/HHH-15996?atlOrigin=eyJpIjoiYTM5ZD...
)
Change By: Steve Ebersole (
https://hibernate.atlassian.net/secure/ViewProfile.jspa?accountId=557058%...
)
At the moment, annotation processing uses HCANN. HCANN provides an abstraction from the
domain model, but exposes {{ Annotation}} directly.
Ultimately we want to move away from HCANN to use Jandex for reading the annotation
details. Jandex uses an abstraction from {{Annotation}} in the form of
{{AnnotationInstance}}. Ultimately this move to Jandex will require lots of changes to
that code.
{{ org.hibernate.boot.model.source}} was developed as an abstraction over the source of
mapping information - annotations, {{orm.xml}}, {{hbm.xml}} with the initial intent of
unifying the processing of mapping sources.
This is already how {{hbm.xml}} is processed. This work would apply that to annotations
and {{orm.xml}} processing as well.
The approach has benefits in addition to the processing unification, such as -
# Avoiding use of library APIs in processing. Ultimately we want to move to Jandex over
HCANN for annotation consumption - see
[
https://hibernate.atlassian.net/browse/HHH-9489|https://hibernate.atlassi...
this abstraction will make that migration much simpler.
# Allows support for both dynamic models (MAP mode) and {{entity-name}} models. This is
important for deprecation of {{hbm.xml}} in favor of annotations / {{orm.xml}} - see
[
https://hibernate.atlassian.net/browse/HHH-15698|https://hibernate.atlass...].
(
https://hibernate.atlassian.net/browse/HHH-15996#add-comment?atlOrigin=ey...
) Add Comment (
https://hibernate.atlassian.net/browse/HHH-15996#add-comment?atlOrigin=ey...
)
Get Jira notifications on your phone! Download the Jira Cloud app for Android (
https://play.google.com/store/apps/details?id=com.atlassian.android.jira....
) or iOS (
https://itunes.apple.com/app/apple-store/id1006972087?pt=696495&ct=Em...
) This message was sent by Atlassian Jira (v1001.0.0-SNAPSHOT#100213- sha1:cca7326 )