Class BavetConstraintFactory<Solution_>
- java.lang.Object
-
- org.optaplanner.constraint.streams.common.InnerConstraintFactory<Solution_,BavetConstraint<Solution_>>
-
- org.optaplanner.constraint.streams.bavet.BavetConstraintFactory<Solution_>
-
- All Implemented Interfaces:
org.optaplanner.core.api.score.stream.ConstraintFactory
public final class BavetConstraintFactory<Solution_> extends org.optaplanner.constraint.streams.common.InnerConstraintFactory<Solution_,BavetConstraint<Solution_>>
-
-
Constructor Summary
Constructors Constructor Description BavetConstraintFactory(org.optaplanner.core.impl.domain.solution.descriptor.SolutionDescriptor<Solution_> solutionDescriptor)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <A> org.optaplanner.core.api.score.stream.uni.UniConstraintStream<A>
forEachIncludingNullVars(Class<A> sourceClass)
<A> BavetAbstractUniConstraintStream<Solution_,A>
fromUnfiltered(Class<A> fromClass)
String
getDefaultConstraintPackage()
org.optaplanner.core.impl.domain.solution.descriptor.SolutionDescriptor<Solution_>
getSolutionDescriptor()
<Stream_ extends BavetAbstractConstraintStream<Solution_>>
Stream_share(Stream_ stream)
<Stream_ extends BavetAbstractConstraintStream<Solution_>>
Stream_share(Stream_ stream, Consumer<Stream_> consumer)
Enables node sharing.-
Methods inherited from class org.optaplanner.constraint.streams.common.InnerConstraintFactory
assertValidFromType, buildConstraints, forEach, forEachUniquePair, from, fromUniquePair, getNullityFilter
-
-
-
-
Constructor Detail
-
BavetConstraintFactory
public BavetConstraintFactory(org.optaplanner.core.impl.domain.solution.descriptor.SolutionDescriptor<Solution_> solutionDescriptor)
-
-
Method Detail
-
share
public <Stream_ extends BavetAbstractConstraintStream<Solution_>> Stream_ share(Stream_ stream)
-
share
public <Stream_ extends BavetAbstractConstraintStream<Solution_>> Stream_ share(Stream_ stream, Consumer<Stream_> consumer)
Enables node sharing. If a constraint already exists in this factory, it replaces it by the old copy.BavetAbstractConstraintStream
implement equals/hashcode ignoring child streams.BavetConstraintSessionFactory.buildSession(boolean, Object)
relies on this occurring for all streams.This must be called before the stream receives child streams.
- Type Parameters:
Stream_
- theBavetAbstractConstraintStream
subclass- Parameters:
stream
- never nullconsumer
- never null- Returns:
- never null
-
forEachIncludingNullVars
public <A> org.optaplanner.core.api.score.stream.uni.UniConstraintStream<A> forEachIncludingNullVars(Class<A> sourceClass)
-
fromUnfiltered
public <A> BavetAbstractUniConstraintStream<Solution_,A> fromUnfiltered(Class<A> fromClass)
-
getSolutionDescriptor
public org.optaplanner.core.impl.domain.solution.descriptor.SolutionDescriptor<Solution_> getSolutionDescriptor()
- Specified by:
getSolutionDescriptor
in classorg.optaplanner.constraint.streams.common.InnerConstraintFactory<Solution_,BavetConstraint<Solution_>>
-
getDefaultConstraintPackage
public String getDefaultConstraintPackage()
-
-