Gavin King
dc4c87c182
simplification to JD generated code
...
because I got a requirement removed from spec
2024-03-23 16:53:32 +01:00
Gavin King
f3dd73dd2f
HHH-17864 generate static metamodel fields for embeddables
2024-03-23 16:11:50 +01:00
Gavin King
b7038b2294
we changed Iterable -> List in Data spec
2024-03-23 13:07:01 +01:00
Gavin King
c7504d4ada
aesthetic fix to the processor-generated jdoc
2024-03-22 22:25:50 +01:00
Gavin King
8b021ac01f
HHH-17860 report bad return type for @Delete
2024-03-22 18:49:59 +01:00
Gavin King
c3e210e923
HHH-17860 query-based @Delete
2024-03-22 18:17:16 +01:00
Gavin King
f7b895ba11
HHH-17875 validate association mappings in processor
2024-03-22 14:20:39 +01:00
Gavin King
31a63b1b1b
introduce @Suppress annotation to disable processor
2024-03-22 14:20:39 +01:00
Gavin King
c9c0261bfa
HHH-17875 validate association mappings in processor
2024-03-22 14:20:39 +01:00
Gavin King
e16f0938d4
HHH-17873 handle generic supertypes of repositories
2024-03-22 01:31:27 +01:00
Gavin King
3176f25be5
HHH-17873 much better and now spec-compliant handling of repo inheritance
...
I got the spec changed to make this good :)
2024-03-22 01:31:27 +01:00
Gavin King
f7fbbae538
HHH-17873 some handling for generics in lifecycle method signatures
2024-03-22 01:31:27 +01:00
Gavin King
9305610a32
HHH-17873 initial impl of repository inheritance
...
needed for Jakarta Data, and useful
limited to single inheritance for now
2024-03-22 01:31:27 +01:00
Gavin King
0d0f8754ca
fix and test for KeyedResultList with EntityManager
...
missing an unwrap()
also fix up some whitespace
2024-03-20 16:28:57 -05:00
Gavin King
bcc3ea60de
HHH-17868 introduce @Pattern annotation
2024-03-20 11:29:32 +01:00
Gavin King
b5bfe07d36
support for @By("#id") in Jakarta Data parameters
2024-03-18 23:08:10 +01:00
Gavin King
5cd6ec4b54
add more Jakarta Data test method signatures
2024-03-18 23:08:10 +01:00
Gavin King
4bb5bc60e9
allow @Query methods to return array
2024-03-18 16:07:09 +01:00
Gavin King
813ae8ed9d
cleanup hacks in repo method return type handling
2024-03-18 16:07:09 +01:00
Gavin King
f8c0df8724
better handling of boxed types in @Find method parameter checking
2024-03-18 12:44:45 +01:00
Gavin King
008090b60e
treat a multivalued param of @Find method as an 'in' condition
...
exactly as I'm proposing for Jakarta Data
2024-03-18 11:47:37 +01:00
Gavin King
6441c60255
HHH-17859, HHH-17858 function() and column() functions
2024-03-17 11:14:57 +01:00
Gavin King
e3f069a5cd
add a ProcessLaterException to fix refs in @OrderBy
2024-03-15 01:21:29 +01:00
Gavin King
fbebc65f0a
string names for JD static metamodel were not generated
2024-03-15 01:21:29 +01:00
Gavin King
3e8b1b37be
HHH-17851 fix three bugs in Jakarta Data impl
...
- overloaded lifecycle methods
- handling of delimited compound names
- some missing imports
2024-03-14 23:41:42 +01:00
Laurent SCHOELENS
6941ddd58c
HHH-17579 fix classloader issues with JAXBContext since JDK11
2024-03-14 16:13:45 +01:00
Gavin King
0e3791cb64
fix two very minor bugs in generated newlines
2024-03-09 19:58:08 +01:00
Gavin King
c3bbd193c8
implement support for requestTotals() in processor
...
also fix up some newline handling
2024-03-09 17:49:35 +01:00
Gavin King
7773e28b2c
update to latest JD snapshot build
2024-03-09 13:25:20 +01:00
Akshit97
feac98e43a
HHH-17817 - Add option to Enable Byte Code Enhancement for specific classes
2024-03-07 12:13:38 -06:00
Gavin King
5a36652b20
use e.printStackTrace(PrintWriter)
...
as suggested by @beikov
2024-03-07 12:52:53 +01:00
Gavin King
f591ce1b36
allow compound paths in JD @By annotation
2024-03-06 08:13:16 +01:00
Gavin King
ebd72f8470
handle generic-typed parameters of query methods
2024-03-05 20:58:32 +01:00
Gavin King
19023a491e
report error if parameter of @Find matches a collection
2024-03-05 20:58:32 +01:00
Gavin King
db1b3b3f40
HHH-17807 add test
2024-03-05 19:04:10 +01:00
Gavin King
691a2d8109
HHH-17807 fix array-typed query method parameters
2024-03-05 19:04:10 +01:00
Marco Belladelli
096b667520
HHH-17805 Fix jpamodelgen quarkus/jd tests with jdk >= 17
2024-03-05 10:53:18 +01:00
Gavin King
9b4e61c984
HHH-17778 add a stub for the old processor
...
as requested by @beikov
2024-03-01 22:58:59 +01:00
Gavin King
4bc4ffe056
HHH-17778 rename jpametamodelgen -> processor
2024-03-01 22:58:59 +01:00
Gavin King
7636d78feb
HHH-17778 rename JPAMetaModelEntityProcessor -> HibernateProcessor
2024-03-01 22:58:59 +01:00
Gavin King
1c46c0060f
HHH-17772 use new record types to impl static metamodel
2024-03-01 21:35:25 +01:00
Gavin King
9014182e3c
HHH-17772 improve the test
2024-03-01 21:35:25 +01:00
Gavin King
2beb85e695
HHH-17772 support for returning the argument from lifecycle methods
2024-03-01 21:35:25 +01:00
Gavin King
ca12a4c874
tests for Jakarta Data
...
thanks @FroMage and others for giving me an example of how to do this
2024-03-01 20:16:37 +01:00
Gavin King
af285657db
add missing static imports to generated source
2024-03-01 19:21:26 +01:00
Gavin King
11fa929f20
minor code changes to generator
2024-03-01 19:21:26 +01:00
Stéphane Épardaud
6dfdbe197f
Make Panache tests run as part of regular tests
2024-03-01 18:24:07 +01:00
Christian Beikov
9e323963f0
Configure separate source directories for HR and ORM Quarkus Panache tests
2024-03-01 18:24:07 +01:00
Christian Beikov
1fe9c66fb4
Fix Gradle configuration issues
2024-03-01 18:24:07 +01:00
Stéphane Épardaud
85abce26f5
TestUtil: include entire diagnostic on failure
...
This way we get the line number
2024-03-01 18:24:07 +01:00
Stéphane Épardaud
7c453fb6b6
Start of tests
2024-03-01 18:24:07 +01:00
Stéphane Épardaud
b32296ff32
Auto-detect quarkus and default to dao with the proper session type
...
Unless there's a different session getter defined
2024-03-01 18:24:07 +01:00
Stéphane Épardaud
5b184caf9b
Make sure reactive update/delete return a Uni of Integer or Void
2024-03-01 18:24:07 +01:00
Stéphane Épardaud
06136ba5ec
Make sure ununi does not throw given a Uni<T>
2024-03-01 18:24:07 +01:00
Stéphane Épardaud
ed29057315
Support default session getters
...
In which case, we don't store the session in the DAO, we always call the getter
2024-03-01 18:24:07 +01:00
Stéphane Épardaud
1f3aed022c
Support ORM/HR+Panache
...
- Allow `@Find`/`@*QL` methods on `native` methods
- Look at session getters to find their session types, but never make
DAOs for Panache entities or repositories (we want generated static methods)
2024-03-01 18:24:07 +01:00
Stéphane Épardaud
36c9ce9d20
Support sessions of type Uni<Mutiny.Session>
2024-03-01 18:24:07 +01:00
Gavin King
3ca494be79
HHH-17772 allow array as return type for @Find methods
...
add tests
2024-03-01 12:22:08 +01:00
Gavin King
7ad39a86e9
HHH-17772 allow array as return type for @Find methods
...
as required by Jakarta Data
2024-03-01 12:22:08 +01:00
Gavin King
25d0899f28
HHH-17772 new approach to PU injection in Quarkus
...
as discussed with @FroMage
2024-03-01 11:07:39 +01:00
Gavin King
5d2527383e
HHH-17772 cleanup after sorting rework
2024-02-29 20:42:52 +01:00
Gavin King
7f4f760ac8
HHH-17772 cleanup disabled code
2024-02-29 20:42:52 +01:00
Gavin King
faec7c1a67
HHH-17772 redesign + unify handling of sorting
2024-02-29 20:42:52 +01:00
Gavin King
4ce2d317e5
HHH-17772 support Jakarta Data Page and Slice as return types
2024-02-29 13:16:47 +01:00
Gavin King
4fe6dad95b
HHH-17772 support KeysetAwarePage from Jakarta Data
...
+ fix some bugs
2024-02-29 07:53:57 +01:00
Gavin King
9e5ce60ac1
HHH-17772 support KeysetAwareSlice from Jakarta Data
...
significant refactoring
2024-02-29 01:31:49 +01:00
Gavin King
128859c3c8
HHH-17779 test new key-based pagination API generator
2024-02-27 22:11:48 +01:00
Gavin King
8c9e4f68bf
HHH-17779 support new key-based pagination API in generator
2024-02-27 22:11:48 +01:00
Christian Beikov
7713a074af
Also exclude Jakarta Data tests from Java 17+ runs
2024-02-27 09:56:36 +01:00
Gavin King
568ad5804e
HHH-17772 support @OrderBy for @Query methods
2024-02-26 11:56:51 +01:00
Gavin King
df84bcd84e
HHH-17772 support Jakarta Data PageRequest as a parameter
2024-02-25 23:25:22 +01:00
Gavin King
be448afdab
HHH-17772 allow lifecycle methods accepting arrays/iterables
...
as required by Jakarta Data
2024-02-25 21:34:20 +01:00
Gavin King
f73d7aac9f
add test coverage for Option and Stream return types
2024-02-25 21:34:20 +01:00
Gavin King
bfce032efc
add test coverage for Option and Stream return types
2024-02-25 21:34:20 +01:00
Gavin King
50c67a410e
reduce visibility of repository constructor
2024-02-25 21:34:20 +01:00
Gavin King
b039eecd8e
allow query and finder methods to return Stream
...
required by Jakarta Data spec
2024-02-25 21:34:20 +01:00
Gavin King
18bbbbb865
allow query and finder methods to return Optional
...
required by Jakarta Data spec
2024-02-25 21:34:20 +01:00
Gavin King
7e9b55ff92
HHH-17772 add option to suppress JD metamodel
...
- also squash an error
- and improve report bug reporting
2024-02-24 22:45:15 +01:00
Gavin King
582d736062
HHH-17772 rework processor bookkeeping
2024-02-24 22:45:15 +01:00
Gavin King
67a5590316
HHH-17772 Jakarta Data static metamodel
2024-02-24 22:45:15 +01:00
Gavin King
a23792ca1b
HHH-17772 Jakarta Data static metamodel
2024-02-24 22:45:15 +01:00
Gavin King
d6125e21f5
HHH-17772 make Jakarta Data repositories into proper CDI components
2024-02-24 14:49:06 +01:00
Gavin King
235fc26ee6
more null checking, and some refactoring
2024-02-24 14:49:06 +01:00
Gavin King
7abe8f5f2b
split out an inner class
2024-02-24 14:49:06 +01:00
Gavin King
9aa2f631f1
add a jakartaDataStyle option to processor
2024-02-24 14:49:06 +01:00
Gavin King
43905c657f
some cleanup in static metamodel code
2024-02-24 14:49:06 +01:00
Gavin King
862a967a17
HHH-17772 misc improvements to impl of Sort parameters
2024-02-24 01:42:16 +01:00
Gavin King
2281805e91
HHH-17772 tolerate vararg Sort parameters
2024-02-24 01:42:16 +01:00
Gavin King
df79c4491a
HHH-17772 add additional permutation to test
2024-02-24 01:42:16 +01:00
Gavin King
3539551305
HHH-17772 Jakarta exception conversion for @Query methods
2024-02-24 01:42:16 +01:00
Gavin King
25d7cc8681
HHH-17772 Jakarta exception conversion for @Find methods
2024-02-24 01:42:16 +01:00
Gavin King
394c9ef03f
HHH-17772 exclude Jakarta Data tests on older JDK
2024-02-24 01:42:16 +01:00
Gavin King
0cf8d18c3d
HHH-17772 exception mappings for lifecycle methods
2024-02-24 01:42:16 +01:00
Gavin King
9c707dd4e8
HHH-17772 map @Save lifecycle annotation to upsert()
2024-02-24 01:42:16 +01:00
Gavin King
83595ea461
HHH-17772 add tests
2024-02-24 01:42:16 +01:00
Gavin King
0bc198f265
HHH-17772 handle missing static constant refs
2024-02-24 01:42:16 +01:00
Gavin King
1e32439b3c
HHH-17772 interpret @Repository(dataSource) as a CDI @Named qualifier
...
This is sort of the simplest possible thing to do.
2024-02-24 01:42:16 +01:00
Gavin King
484fcb2984
HHH-17773 case-insensitive ordering
2024-02-24 01:42:16 +01:00
Gavin King
d0f3cdeb96
HHH-17772 support for Order
2024-02-24 01:42:16 +01:00
Gavin King
7a52cf9659
HHH-17772 better support for Sort
2024-02-24 01:42:16 +01:00
Gavin King
bd63c4af50
HHH-17772 support for Limit and Sort
2024-02-24 01:42:16 +01:00
Gavin King
4cfc3fb97d
HHH-17772 support Jakarta Data @OrderBy
2024-02-24 01:42:16 +01:00
Gavin King
aed8244dae
HHH-17772 support Jakarta Data @By and @Param
2024-02-24 01:42:16 +01:00
Gavin King
5be9463364
HHH-17772 initial, rudimentary support for Jakarta Data annotations
2024-02-24 01:42:16 +01:00
Christian Beikov
73221d0090
HHH-17765 Support some special chars in query method queries
2024-02-21 17:18:37 +01:00
Gavin King
24db2b04cc
HHH-17661 add test for issue
2024-02-20 10:46:24 +01:00
Gavin King
9ba93b7060
HHH-17613 - don't use reduce()
2024-02-20 10:46:24 +01:00
Cedomir Igaly
b17aa9674f
HHH-17613 - Adding recursion; avoiding regular expression
2024-02-20 10:37:01 +01:00
Cedomir Igaly
da41e5b4be
HHH-17613 - Fixing type import
2024-02-20 10:37:01 +01:00
Cedomir Igaly
f191d397c1
HHH-17613 - Test case demonstrating the problem
2024-02-20 10:37:01 +01:00
Gavin King
3769d4c233
use requiresService() much more consistently
...
we should usually avoid the use of getService() unless
there is an explicit null test on the client side
2024-02-16 23:18:30 +01:00
Gavin King
f1e099b8e8
HHH-17745 @HQL methods accepting embeddables
...
and replace usages of getJavaType().getTypeName(), since
using getTypeName() directly is much more freindly to the
annotation processor (as well as less verbose)
2024-02-16 21:08:49 +01:00
Gavin King
d7fe31643a
HHH-16048 add 'hibernate.query.hql.portable_integer_division'
...
consistent interpretation of division on MySQL and Oracle
2024-02-16 16:23:35 +01:00
Gavin King
f111d1a1a1
try to report more info from annotation processor failure
2024-02-14 15:14:23 +01:00
Gavin King
97099c0280
better handling of instantiation for @HQL methods
2024-02-12 20:53:09 +01:00
Gavin King
e5a994bfa1
fix typechecking of primitives in instantiations for query methods
2024-02-12 00:16:06 +01:00
Gavin King
d09d6ffdf0
HHH-17729 move validation of constructors in HQL instantiations to SemanticQueryBuilder
...
test for query method generation
2024-02-12 00:16:06 +01:00
Gavin King
24937b4e67
HHH-17729 move validation of constructors in HQL instantiations to SemanticQueryBuilder
...
report SemanticExceptions with the query string
fix some warnings in ReflectHelper
2024-02-12 00:16:06 +01:00
Gavin King
cb1b276ff8
validate the type arg of Order parameters in @Find and @HQL methods
2024-02-07 21:03:23 +01:00
Yanming Zhou
508df48686
Rename variable for better readability
2024-02-07 15:54:39 +01:00
Yanming Zhou
c804ff3ac5
HHH-17719 Supports boolean as return type of mutation query method
2024-02-07 14:10:48 +01:00
Gavin King
da0e327d09
validate parameters of @SQL query
2024-02-07 14:10:24 +01:00
Yoann Rodière
3b31351234
Move setting of net.bytebuddy.experimental to the Jenkinsfile
...
The hope is that whenever we add a new JDK version to test,
we'll notice this setting, will try to remove it and upgrade bytebuddy
if necessary. This would avoid mess-ups like the one that caused
https://github.com/hibernate/hibernate-orm/pull/7790
2024-02-06 13:42:21 +00:00
Gavin King
838bed00eb
better handling of the session variable in repositories
2024-02-06 13:45:12 +01:00
Gavin King
f4d17be10c
small fixes to @Find and @HQL methods
...
don't include session parameter type where not necessary
2024-02-03 01:28:49 +01:00
Gavin King
d96b5dfffc
clarify use of Order and Page with @Find
...
[It's allowed!]
2024-02-02 18:12:27 +01:00
Andrea Boriero
3122c81844
HHH-17326 deprecated lazyLoading no longer working
2024-01-31 11:57:48 +01:00
Yoann Rodière
1ac21756c6
HHH-17683 Reproducer for jpamodelgen generating wrong constructor for metamodel of entities whose methods contain a `static EntityManager getEntityManager()`
2024-01-30 12:44:54 +01:00
Gavin King
c829d9e5bf
HHH-17683 never look for session getters in mapped superclasses or embeddables
2024-01-29 21:18:15 +01:00
Yanming Zhou
df93517e1d
HHH-14429 Restore <fileset/> support for ant enhance task
...
fix regression introduced by HHH-11795
2024-01-26 10:59:31 +01:00
Steve Ebersole
58173f92ee
HHH-17559 - Prefer Java Time handling for all temporal values
2023-12-22 08:23:06 -06:00
Jan Schatteman
f8bfb85ce1
HHH-17253 - Fix for StackOverflowError in static metamodel generator
...
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2023-12-19 19:07:03 +01:00
Christian Beikov
fc43836c7e
HHH-17253 Test circular type variable stack overflow in metamodel generator
2023-12-19 19:07:03 +01:00
Réda Housni Alaoui
1d956eb400
HHH-17494 Metamodel generator produce an uncompilable class when an EntityGraph name contains a comma
2023-12-06 19:08:28 +01:00
Steve Ebersole
48451d2e2f
HHH-17362 - Define dependencies of hibernate-jpamodelgen as api
...
https://hibernate.atlassian.net/browse/HHH-17362
2023-11-17 13:11:24 -06:00
Steve Ebersole
5b6373fb34
HHH-17362 - Define dependencies of hibernate-jpamodelgen as api
...
https://hibernate.atlassian.net/browse/HHH-17362
2023-11-17 08:13:48 -06:00
Christian Beikov
5ea40e255d
HHH-14822 Support custom tenant identifier type
2023-10-25 18:58:20 +02:00
Jan Schatteman
763a70f633
HHH-17314 - Add a configuration option to ignore jdbc parameters in native queries
...
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2023-10-23 17:42:00 +02:00
Christian Beikov
627608e65c
HHH-17323 Add annotation processor for tests explicitly
2023-10-16 12:51:52 +02:00
Steve Ebersole
da522846d8
HHH-17157 - Some improvements to the metamodel generator documentation
2023-10-11 12:20:36 -05:00
Jan Schatteman
d325a5e90d
HHH-16515 - Get rid of nullness suppression in jpamodelgen TypeUtils
...
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2023-09-20 09:14:41 +02:00
Gavin King
5737235bf9
add another test for @HQL method return types
2023-09-05 20:05:24 +02:00
Gavin King
14151fdb97
improvements to validation of @HQL method return type
2023-09-05 19:29:26 +02:00
Gavin King
fad11299f3
HHH-17166 fix broken logic for inferring that @HQL method is a mutation
2023-09-05 19:29:26 +02:00
Gavin King
412217d011
HHH-17165 fix isGetter(), isSetter() in AnnotationMetaEntity
2023-09-05 19:29:26 +02:00
Gavin King
a541a64eec
search supertypes for session getter in repository type
2023-09-02 21:50:57 +02:00
Gavin King
2cfe93cd88
fix @Find method with varargs Order parameter
2023-09-02 20:11:43 +02:00
Steve Ebersole
a2d45a2679
HHH-16962 - General documentation improvements
...
HHH-17141 - Prepare for 6.3.0 release
https://hibernate.atlassian.net/browse/HHH-16962
https://hibernate.atlassian.net/browse/HHH-17141
2023-08-29 13:20:19 -05:00
Christian Beikov
13bc7ff38c
HHH-16952 Discover embeddable types through @Embedded annotation for enhancement in a pre-discovery phase
2023-08-28 18:24:45 +02:00
Sanne Grinovero
f49535d397
Migrate type from Serializable[] to String[]
2023-08-23 15:05:45 +02:00