Interface ConstraintVerifier<ConstraintProvider_ extends ConstraintProvider,Solution_> 
- Type Parameters:
 ConstraintProvider_-Solution_-
- All Known Implementing Classes:
 DefaultConstraintVerifier
public interface ConstraintVerifier<ConstraintProvider_ extends ConstraintProvider,Solution_> 
Implementations must be thread-safe, in order to enable parallel test execution.
- 
Method Summary
Modifier and TypeMethodDescriptionstatic <ConstraintProvider_ extends ConstraintProvider,Solution_> 
ConstraintVerifier<ConstraintProvider_,Solution_> build(ConstraintProvider_ constraintProvider, Class<Solution_> planningSolutionClass, Class<?>... entityClasses) Entry point to the API.static <ConstraintProvider_ extends ConstraintProvider,Solution_> 
ConstraintVerifier<ConstraintProvider_,Solution_> create(SolverConfig solverConfig) Uses aSolverConfigto build aConstraintVerifier.Creates a constraint verifier for all constraints of theConstraintProvider.verifyThat(BiFunction<ConstraintProvider_, ConstraintFactory, Constraint> constraintFunction) Creates a constraint verifier for a givenConstraintof theConstraintProvider.withConstraintStreamImplType(ConstraintStreamImplType constraintStreamImplType) All subsequent calls toverifyThat(BiFunction)andverifyThat()use the givenConstraintStreamImplType.withDroolsAlphaNetworkCompilationEnabled(boolean droolsAlphaNetworkCompilationEnabled) Applies only toConstraintStreamImplType.DROOLS. 
- 
Method Details
- 
build
static <ConstraintProvider_ extends ConstraintProvider,Solution_> ConstraintVerifier<ConstraintProvider_,Solution_> build(ConstraintProvider_ constraintProvider, Class<Solution_> planningSolutionClass, Class<?>... entityClasses) Entry point to the API.- Type Parameters:
 ConstraintProvider_- type of theConstraintProviderSolution_- type of thePlanningSolution-annotated class- Parameters:
 constraintProvider- never null,PlanningEntityused by thePlanningSolutionplanningSolutionClass- never null,PlanningSolution-annotated class associated with the constraintsentityClasses- never null, at least one,PlanningEntitytypes used by thePlanningSolution- Returns:
 - never null
 
 - 
create
static <ConstraintProvider_ extends ConstraintProvider,Solution_> ConstraintVerifier<ConstraintProvider_,Solution_> create(SolverConfig solverConfig) Uses aSolverConfigto build aConstraintVerifier. Alternative tobuild(ConstraintProvider, Class, Class[]).- Type Parameters:
 ConstraintProvider_- type of theConstraintProviderSolution_- type of thePlanningSolution-annotated class- Parameters:
 solverConfig- never null, must have aPlanningSolutionclass,PlanningEntityclasses and aConstraintProviderconfigured.- Returns:
 - never null
 
 - 
withConstraintStreamImplType
ConstraintVerifier<ConstraintProvider_,Solution_> withConstraintStreamImplType(ConstraintStreamImplType constraintStreamImplType) All subsequent calls toverifyThat(BiFunction)andverifyThat()use the givenConstraintStreamImplType.- Parameters:
 constraintStreamImplType- never null- Returns:
 - this
 
 - 
withDroolsAlphaNetworkCompilationEnabled
ConstraintVerifier<ConstraintProvider_,Solution_> withDroolsAlphaNetworkCompilationEnabled(boolean droolsAlphaNetworkCompilationEnabled) Applies only toConstraintStreamImplType.DROOLS. Do not enable when running in a native image.- Parameters:
 droolsAlphaNetworkCompilationEnabled- true to enable the alpha network compiler- Returns:
 - this
 
 - 
verifyThat
SingleConstraintVerification<Solution_> verifyThat(BiFunction<ConstraintProvider_, ConstraintFactory, Constraint> constraintFunction) Creates a constraint verifier for a givenConstraintof theConstraintProvider.- Parameters:
 constraintFunction- never null- Returns:
 - never null
 
 - 
verifyThat
MultiConstraintVerification<Solution_> verifyThat()Creates a constraint verifier for all constraints of theConstraintProvider.- Returns:
 - never null
 
 
 -