Rob Bygrave
2929483b0d
Refactor ebean-core internal API - getters -> accessors
2023-06-01 22:05:53 +12:00
Rob Bygrave
e71be4e1b1
Deprecate order() methods on Query, ExpressionList - migrate to orderBy()
...
Unfortunately we have order() and orderBy() methods which do the
same thing. I have decided to deprecate the order() ones in
favour of the orderBy() methods so that ultimately we will end
up with less methods and I think orderBy() is the correct choice.
Apologies for the migration pain here.
2023-06-01 21:21:39 +12:00
Rob Bygrave
bac7cd1ee7
Remove deprecated Query Bean fetchAll() - migrate to fetch()
...
```java
/**
* Deprecated in favor of fetch().
*/
@Deprecated
public final R fetchAll() {
return fetch();
}
```
2023-06-01 20:48:13 +12:00
Rob Bygrave
430926c5a9
Remove deprecated Query setLoadBeanCache() - migrate to setBeanCacheMode()
...
Typically migrate to `.setBeanCacheMode(CacheMode.PUT)` or `.setBeanCacheMode(CacheMode.OFF)`
```java
/**
* Deprecated - migrate to use setBeanCacheMode(CacheMode.PUT) or other CacheMode.
* <p>
* When set to true all the beans from this query are loaded into the bean cache.
*/
@Deprecated
Query<T> setLoadBeanCache(boolean loadBeanCache);
```
2023-06-01 20:44:31 +12:00
Rob Bygrave
79fd689e9a
Add support for raw SQL SubQuery expressions IN,EQ,NE,GT,GE,LT,LE,EXISTS,Not IN, Not EXISTS
...
For these expressions the SQL SubQuery is not parsed by ebean and
just used as is.
2023-03-24 22:38:52 +13:00
Rob Bygrave
0bb2f104a4
[QueryBeans] Fix for missing inherited properties when parent only has @DiscriminatorValue
...
A parent in the Inheritance hierarchy has @DiscriminatorValue but not the @Inheritance annotation. The bug means the inherited properties are not included on the generated query bean.
The fix is to the querybean-generator to pick up inherited properties for this case.
2023-02-28 23:02:19 +13:00
Rob Bygrave
4ec46e3008
[QueryBeans] Refactor splitting TQAssocBean into TQAssoc & TQAssocBean
...
- Requires ebean-agent to be up-to-date (13.13.2 or greater)
- Split TQAssocBean into 2, one for embeddable beans and the other for the reset
- The eq(), in() etc expressions go to TQAssoc
- Add fetch() methods to TQAssocBean
- No longer generate the fetch() methods as we now have them on TQAssocBean
2023-02-27 17:46:11 +13:00
Rob Bygrave
25416a3cda
For querybean associated beans, add missing eqIfPresent() + in() + notIn() + expressions
2023-02-26 19:24:00 +13:00
rob
2e0dba3741
#2981 - ENH: Add profile-line-number-mode with options none | all | auto ... to control adding line numbers to profile locations
2023-02-22 23:02:42 +13:00
rob
0b615a79cc
Add _ifPresent() expressions for GT, GE, LT, LE (follow up from #2768 )
2023-02-22 14:04:26 +13:00
rob
5882169641
Merge branch 'feature/StdExpressions'
2023-02-14 11:35:31 +13:00
Rob Bygrave
f97dcb60c0
Improve test only, QCustomerTest using AttributeConverter
2023-02-13 08:08:16 +13:00
Rob Bygrave
d2f629e7bb
#2914 - Query bean generation support for @ElementCollection with validaiton annotations - NPE NullPointerException
2022-12-08 11:10:23 +13:00
Rob Bygrave
4a0f8931a0
Add parameter type for Query.Property with DefaultUpdateQuery and TQRootBean
2022-11-09 23:41:42 +13:00
Rob Bygrave
3c8c52ca7f
Simplify to use single type (not use another different type for Query.Property)
2022-11-09 23:30:51 +13:00
Rob Bygrave
d29ef8934d
Add more operators to StdOperators
...
- stricter use of UpdateQuery.set()
- Numbers just use their own type - PBaseNumber
- PEnum just uses its own type
- Expr.factory() to expose factory
2022-11-09 17:47:16 +13:00
Rob Bygrave
97bbce321d
Make Query.Property parameterised with <BT> "Base Type" as Number, String, Temporal, Boolean or Object
...
These types then determine which functions are valid for the types. So:
- Number functions
- String/varchar functions
- Temporal Date, DateTime, Time functions
- Boolean functions
- Object being everything else
2022-11-08 21:57:36 +13:00
Rob Bygrave
3da924b943
Add Query.Property.of(), Move StdFunctions to ebean-api
2022-11-07 12:57:39 +13:00
Rob Bygrave
8565f5f807
Rename TQColumn -> Query.Property and move to api + use with UpdateQuery.set()
...
- Refactor rename TQColumn to Query.Property and move to ebean-api module
- Add UpdateQuery.set() methods to use Query.Property (as per #2849 )
2022-11-03 17:33:11 +13:00
Rob Bygrave
96e79248dc
Add StdFunctions, StdExpressions, TQColumn marker interface
2022-11-03 11:16:30 +13:00
Rob Bygrave
0a61852711
#2847 - Add support for Sub-query EQ, NE, LT, LE, GT, GE expressions
2022-11-03 00:22:48 +13:00
Rob Bygrave
dd0ed8ea76
#2873 - Query Beans: Support more TQProperty's as target value for inRangeWith()
2022-11-02 17:35:00 +13:00
Rob Bygrave
600aa10453
#2877 - Query Beans: Add lt, le, gt, ge <other property> e.g. whenRegistered.gt(QCustomer.Alias.whenActivated)
2022-11-02 16:32:49 +13:00
Rob Bygrave
f6b87ed0b4
#2876 & #2875 - Query Beans subquery exists/notExists + eq(other property), ne(other property)
2022-11-02 16:14:44 +13:00
Rob Bygrave
475f937421
#2858 - Example for entity-field-access
2022-10-14 11:08:49 +13:00
Rob Bygrave
674150dc75
Minor dependency bump for jackson, assertj-core, joda-time, h2database
2022-09-02 10:50:23 +12:00
Rob Bygrave
8632aef268
Add missing final modifier on methods of query bean types
2022-08-18 16:49:39 +12:00
Rob Bygrave
595c057964
#2784 - Fix @Return javadoc for TQRootBean.findSingleAttribute()
2022-08-16 17:03:07 +12:00
Rob Bygrave
d703709f14
#2784 - Correct documentation for TQRootBean.findSingleAttribute with @Nullable
2022-08-12 15:50:17 +12:00
Rob Bygrave
7474430a63
#2768 - ENH: Add eqIfPresent() - a helper expression for fluid style when some EQ are optional
2022-08-01 16:36:09 +12:00
Snōwball and GitHub
52759e0510
Add notIn(Query) to query beans
...
Missing from query beans, but is available in the `ExpressionList` class.
2022-07-20 14:54:30 +02:00
Rob Bygrave
9252e72581
#2748 - Fix such that .setLoadBeanCache(false) ... sets CacheMode.OFF
2022-07-20 07:45:20 +12:00
Rob Bygrave
23d52ca192
#2731 - Change ebean-querybean annotations from Retention RUNTIME to CLASS
2022-07-04 16:58:06 +12:00
Rob Bygrave
9dea51b7a0
#2692 - [querybean generation] Compile error, incorrect generation with nested inner class/record @Embeddable and @IdClass
2022-05-16 18:48:42 +12:00
Rob Bygrave
4b8eadad1c
Bump to 13.3.0-SNAPSHOT
2022-04-11 14:00:45 +12:00
Rob Bygrave
0a43b64f71
#2641 - Add a simple integration test for toString() implementation
2022-04-11 13:52:30 +12:00
Rob Bygrave
48d7e79b16
Remove deprecated findLargeStream(), migrate to findStream()
...
findLargeStream() became no longer become needed due to improvements in the persistence context. Migrate to just use findStream() instead.
2022-04-06 18:17:25 +12:00
Rob Bygrave
24d8f38b1d
#2374 - Bump to Java 11 and module-path
2022-03-31 08:42:14 +13:00
Rob Bygrave
86768dfe4d
Touch application-test.properties
2022-01-26 21:57:41 +13:00
Rob Bygrave
a9dbc036e9
Support H2database 2.x
2022-01-25 21:28:09 +13:00
Rob Bygrave
b3ee982b64
Use @NonNullApi to explicitly reflect non-null return types and params by default
2021-10-20 15:45:20 +13:00
Rob Bygrave
a445557ec3
#2422 - Remove extraneous jsr 305 @Nonnull
2021-10-19 17:59:25 +13:00
Rob Bygrave
8ee67410f9
#2387 - Additionally support setIdIn(Collection<?> ids)
...
Add overloaded method taking Collection of id values.
2021-09-23 15:32:40 +12:00
Rob Bygrave and GitHub
0bf8c9eb64
Add module-info support via multi-version jar ( #2381 )
2021-09-21 14:37:51 +12:00
rbygrave
eae8bbac82
Junit5 bump - ebean-querybean
2021-09-06 18:05:11 +12:00
Rob Bygrave
12c5e9ea5d
#2344 - Rename Database.getDataSource() to dataSource() with deprecation
2021-09-02 22:48:09 +12:00
rbygrave
99acd6d64f
Tidy test only - static imports for QCustomerByteArrayTest
2021-09-02 17:28:04 +12:00
Ryszard Trojnacki
847ce5db88
Added PByteArray query bean type for byte[] column type.
2021-08-31 11:34:35 +02:00
rbygrave
9161e17476
#2318 - Refactor internals - final classes in querybean package
2021-08-17 21:39:57 +12:00
rbygrave
1642833fdb
Improve javadoc on TQRootBean and generated javadoc on query bean forFetchGroup() method
2021-07-22 18:56:02 +12:00