Class HeuristicOptimizationAlgorithmConfig.Builder
java.lang.Object
com.dna.jopt.framework.body.scheme.helper.HeuristicOptimizationAlgorithmConfig.Builder
- All Implemented Interfaces:
HeuristicOptimizationAlgorithmConfig.AlgorithmBuildStage,HeuristicOptimizationAlgorithmConfig.BuildFinal
- Enclosing class:
- HeuristicOptimizationAlgorithmConfig
@NotThreadSafe
public static final class HeuristicOptimizationAlgorithmConfig.Builder
extends Object
implements HeuristicOptimizationAlgorithmConfig.AlgorithmBuildStage, HeuristicOptimizationAlgorithmConfig.BuildFinal
Builds instances of type
HeuristicOptimizationAlgorithmConfig.
Initialize attributes and then invoke the build() method to create an
immutable instance.
Builder is not thread-safe and generally should not be stored in a field or collection,
but instead used immediately to create instances.
-
Method Summary
Modifier and TypeMethodDescriptionInitializes the value for thealgorithmattribute.build()Builds a newHeuristicOptimizationAlgorithmConfig.hasAutoFilter(boolean hasAutoFilter) Initializes the value for thehasAutoFilterattribute.simulatedAnnealingOverrideNumIterationsValue(int simulatedAnnealingOverrideNumIterationsValue) Initializes the optional valuesimulatedAnnealingOverrideNumIterationsValueto simulatedAnnealingOverrideNumIterationsValue.simulatedAnnealingOverrideNumIterationsValue(Optional<Integer> simulatedAnnealingOverrideNumIterationsValue) Initializes the optional valuesimulatedAnnealingOverrideNumIterationsValueto simulatedAnnealingOverrideNumIterationsValue.
-
Method Details
-
algorithm
@CanIgnoreReturnValue public final HeuristicOptimizationAlgorithmConfig.Builder algorithm(AbstractHeuristicOptimizationAlgorithmConfig.OptimizationAlgorithmConfig algorithm) Initializes the value for thealgorithmattribute.- Specified by:
algorithmin interfaceHeuristicOptimizationAlgorithmConfig.AlgorithmBuildStage- Parameters:
algorithm- The value for algorithm- Returns:
thisbuilder for use in a chained invocation
-
simulatedAnnealingOverrideNumIterationsValue
@CanIgnoreReturnValue public final HeuristicOptimizationAlgorithmConfig.Builder simulatedAnnealingOverrideNumIterationsValue(int simulatedAnnealingOverrideNumIterationsValue) Initializes the optional valuesimulatedAnnealingOverrideNumIterationsValueto simulatedAnnealingOverrideNumIterationsValue.- Specified by:
simulatedAnnealingOverrideNumIterationsValuein interfaceHeuristicOptimizationAlgorithmConfig.BuildFinal- Parameters:
simulatedAnnealingOverrideNumIterationsValue- The value for simulatedAnnealingOverrideNumIterationsValue- Returns:
thisbuilder for chained invocation
-
simulatedAnnealingOverrideNumIterationsValue
@CanIgnoreReturnValue public final HeuristicOptimizationAlgorithmConfig.Builder simulatedAnnealingOverrideNumIterationsValue(Optional<Integer> simulatedAnnealingOverrideNumIterationsValue) Initializes the optional valuesimulatedAnnealingOverrideNumIterationsValueto simulatedAnnealingOverrideNumIterationsValue.- Specified by:
simulatedAnnealingOverrideNumIterationsValuein interfaceHeuristicOptimizationAlgorithmConfig.BuildFinal- Parameters:
simulatedAnnealingOverrideNumIterationsValue- The value for simulatedAnnealingOverrideNumIterationsValue- Returns:
thisbuilder for use in a chained invocation
-
hasAutoFilter
@CanIgnoreReturnValue public final HeuristicOptimizationAlgorithmConfig.Builder hasAutoFilter(boolean hasAutoFilter) Initializes the value for thehasAutoFilterattribute.If not set, this attribute will have a default value as returned by the initializer of
hasAutoFilter.- Specified by:
hasAutoFilterin interfaceHeuristicOptimizationAlgorithmConfig.BuildFinal- Parameters:
hasAutoFilter- The value for hasAutoFilter- Returns:
thisbuilder for use in a chained invocation
-
build
Builds a newHeuristicOptimizationAlgorithmConfig.- Specified by:
buildin interfaceHeuristicOptimizationAlgorithmConfig.BuildFinal- Returns:
- An immutable instance of HeuristicOptimizationAlgorithmConfig
- Throws:
IllegalStateException- if any required attributes are missing
-