diff --git a/src/main/java/io/ebeaninternal/api/SpiSqlUpdate.java b/src/main/java/io/ebeaninternal/api/SpiSqlUpdate.java index 3f2ee2c3e..1a19bb4e3 100644 --- a/src/main/java/io/ebeaninternal/api/SpiSqlUpdate.java +++ b/src/main/java/io/ebeaninternal/api/SpiSqlUpdate.java @@ -33,4 +33,9 @@ public interface SpiSqlUpdate extends SqlUpdate { * Reset bind position to be ready for another bind execute. */ void reset(); + + /** + * Return a copy of the SqlUpdate with empty bind parameters. + */ + SpiSqlUpdate copy(); } diff --git a/src/main/java/io/ebeaninternal/server/core/DefaultSqlUpdate.java b/src/main/java/io/ebeaninternal/server/core/DefaultSqlUpdate.java index e7d2195f6..65dc9d762 100644 --- a/src/main/java/io/ebeaninternal/server/core/DefaultSqlUpdate.java +++ b/src/main/java/io/ebeaninternal/server/core/DefaultSqlUpdate.java @@ -117,6 +117,11 @@ public final class DefaultSqlUpdate implements Serializable, SpiSqlUpdate { this(null, sql, new BindParams()); } + @Override + public SpiSqlUpdate copy() { + return new DefaultSqlUpdate(server, origSql, new BindParams()); + } + @Override public void reset() { addPos = 0;