Skip to content

Commit d232b34

Browse files
committed
fix: add entityFactory() convenience method to CloningSpecificationBuilder
Adds a default method that delegates to entityClass() with an empty config, for cases where only the factory is needed without additional property definitions. Fixes compilation failure in CI.
1 parent 7b37414 commit d232b34

File tree

1 file changed

+8
-0
lines changed

1 file changed

+8
-0
lines changed

core/src/main/java/ai/timefold/solver/core/api/domain/specification/CloningSpecificationBuilder.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,14 @@ <V> CloningSpecificationBuilder<S> solutionProperty(String name, Function<S, V>
3838
<E> CloningSpecificationBuilder<S> entityClass(Class<E> entityClass, Supplier<E> factory,
3939
Consumer<CloneableClassBuilder<E>> config);
4040

41+
/**
42+
* Registers an entity class with its no-arg constructor, without additional property definitions.
43+
*/
44+
default <E> CloningSpecificationBuilder<S> entityFactory(Class<E> entityClass, Supplier<E> factory) {
45+
return entityClass(entityClass, factory, e -> {
46+
});
47+
}
48+
4149
/**
4250
* Registers a {@code @DeepPlanningClone} fact class with its no-arg constructor and property definitions.
4351
*/

0 commit comments

Comments
 (0)