From 88cf4e001a82ece6154105e841ec5bc3022eb116 Mon Sep 17 00:00:00 2001 From: Rob Bygrave Date: Tue, 11 Feb 2025 22:06:20 +1300 Subject: [PATCH] #3557 [Query beans] Remove deprecated filterMany(String expressions, Object... params) from generated query beans, migrate to filterManyRaw() --- .../java/io/ebean/typequery/TQAssocBean.java | 6 ---- .../java/io/ebean/typequery/TQAssocMany.java | 32 ------------------- .../java/org/querytest/QCustomerTest.java | 4 +-- .../generator/SimpleQueryBeanWriter.java | 6 ---- .../generator/SimpleQueryBeanWriter.java | 4 --- 5 files changed, 2 insertions(+), 50 deletions(-) diff --git a/ebean-querybean/src/main/java/io/ebean/typequery/TQAssocBean.java b/ebean-querybean/src/main/java/io/ebean/typequery/TQAssocBean.java index f71e86b96..600bdbcf5 100644 --- a/ebean-querybean/src/main/java/io/ebean/typequery/TQAssocBean.java +++ b/ebean-querybean/src/main/java/io/ebean/typequery/TQAssocBean.java @@ -196,12 +196,6 @@ public abstract class TQAssocBean extends TQAssoc { return _root; } - /** Deprecated(forRemoval = true) */ - protected final R _filterMany(String expressions, Object... params) { - expr().filterMany(_name, expressions, params); - return _root; - } - protected final R _filterManyRaw(String rawExpressions, Object... params) { expr().filterManyRaw(_name, rawExpressions, params); return _root; diff --git a/ebean-querybean/src/main/java/io/ebean/typequery/TQAssocMany.java b/ebean-querybean/src/main/java/io/ebean/typequery/TQAssocMany.java index f390b90cc..ebeaea1be 100644 --- a/ebean-querybean/src/main/java/io/ebean/typequery/TQAssocMany.java +++ b/ebean-querybean/src/main/java/io/ebean/typequery/TQAssocMany.java @@ -22,38 +22,6 @@ public interface TQAssocMany { */ R filterMany(ExpressionList filter); - /** - * @param expressions The expressions including and, or, not etc with ? and ?1 bind params. - * @param params The bind parameter values - * @deprecated for removal - migrate to {@link #filterManyRaw(String, Object...)}. - *

- * Apply a filter when fetching these beans. - *

- * The expressions can use any valid Ebean expression and contain - * placeholders for bind values using ? or ?1 style. - *

- * - *
{@code
-   *
-   *     new QCustomer()
-   *       .name.startsWith("Postgres")
-   *       .contacts.filterMany("firstName istartsWith ?", "Rob")
-   *       .findList();
-   *
-   * }
- * - *
{@code
-   *
-   *     new QCustomer()
-   *       .name.startsWith("Postgres")
-   *       .contacts.filterMany("whenCreated inRange ? to ?", startDate, endDate)
-   *       .findList();
-   *
-   * }
- */ - @Deprecated(forRemoval = true) - R filterMany(String expressions, Object... params); - /** * Add filter expressions for the many path. The expressions can include SQL functions if * desired and the property names are translated to column names. diff --git a/ebean-querybean/src/test/java/org/querytest/QCustomerTest.java b/ebean-querybean/src/test/java/org/querytest/QCustomerTest.java index f17a0573a..f55e2bbb0 100644 --- a/ebean-querybean/src/test/java/org/querytest/QCustomerTest.java +++ b/ebean-querybean/src/test/java/org/querytest/QCustomerTest.java @@ -667,7 +667,7 @@ public class QCustomerTest { new QCustomer() .name.startsWith("Postgres") - .contacts.filterMany("firstName istartsWith ?", "Rob") + .contacts.filterManyRaw("firstName like ?", "Rob%") .findList(); final LocalDate startDate = LocalDate.now().minusDays(7); @@ -675,7 +675,7 @@ public class QCustomerTest { new QCustomer() .name.startsWith("Postgres") - .contacts.filterMany("whenCreated inRange ? to ?", startDate, endDate) + .contacts.filterManyRaw("whenCreated >= ? and whenCreated < ?", startDate, endDate) .findList(); } diff --git a/kotlin-querybean-generator/src/main/java/io/ebean/querybean/generator/SimpleQueryBeanWriter.java b/kotlin-querybean-generator/src/main/java/io/ebean/querybean/generator/SimpleQueryBeanWriter.java index b72fe4020..d0462ca94 100644 --- a/kotlin-querybean-generator/src/main/java/io/ebean/querybean/generator/SimpleQueryBeanWriter.java +++ b/kotlin-querybean-generator/src/main/java/io/ebean/querybean/generator/SimpleQueryBeanWriter.java @@ -328,12 +328,6 @@ class SimpleQueryBeanWriter { writer.append(" return _filterManyRaw(rawExpressions, *params)").eol(); writer.append(" }").eol().eol(); - // Ebean 14.x only - writer.append(" @Deprecated(\"for removal, migrate to filterManyRaw()\")").eol(); - writer.append(" override fun filterMany(rawExpressions: String, vararg params: Any): R {").eol(); - writer.append(" return _filterMany(rawExpressions, *params)").eol(); - writer.append(" }").eol().eol(); - writer.append(" override fun isEmpty(): R {").eol(); writer.append(" return _isEmpty() ").eol(); writer.append(" }").eol().eol(); diff --git a/querybean-generator/src/main/java/io/ebean/querybean/generator/SimpleQueryBeanWriter.java b/querybean-generator/src/main/java/io/ebean/querybean/generator/SimpleQueryBeanWriter.java index c64214683..8f793b8bd 100644 --- a/querybean-generator/src/main/java/io/ebean/querybean/generator/SimpleQueryBeanWriter.java +++ b/querybean-generator/src/main/java/io/ebean/querybean/generator/SimpleQueryBeanWriter.java @@ -322,10 +322,6 @@ class SimpleQueryBeanWriter { writer.append(" public R filterManyRaw(String rawExpressions, Object... params) { return _filterManyRaw(rawExpressions, params); }").eol(); writer.eol(); writer.append(" @Override").eol(); - writer.append(" @Deprecated(forRemoval = true)").eol(); - writer.append(" public R filterMany(String expressions, Object... params) { return _filterMany(expressions, params); }").eol(); - writer.eol(); - writer.append(" @Override").eol(); writer.append(" public R isEmpty() { return _isEmpty(); }").eol(); writer.eol(); writer.append(" @Override").eol();