LotSizingDataModel.Checker 2.0.1
Reusable validation engine for structural, mathematical and objective consistency checks.
Loading...
Searching...
No Matches
SolutionVerificationOptions.cs
Go to the documentation of this file.
2
3/// <summary>
4/// Configures the high-level verification facade and the application of
5/// checker results back to domain objects.
6/// </summary>
7public sealed class SolutionVerificationOptions
8{
9 /// <summary>
10 /// Gets or sets the options used by the underlying solution checker.
11 /// </summary>
13 {
14 get;
15 set;
16 } = new();
17
18 /// <summary>
19 /// Gets or sets whether the computed checker result is written to
20 /// <c>LotSizingSolution.Evaluation</c>.
21 /// </summary>
23 {
24 get;
25 set;
26 } = true;
27
28 /// <summary>
29 /// Gets or sets whether an explicitly supplied known result receives
30 /// the independently established feasibility status.
31 /// </summary>
33 {
34 get;
35 set;
36 } = true;
37
38 /// <summary>
39 /// Gets or sets whether a known result is promoted to
40 /// AutomaticallyVerified when a complete Full check succeeds.
41 /// </summary>
43 {
44 get;
45 set;
46 } = true;
47
48 /// <summary>
49 /// Gets or sets the evaluator name written to the solution evaluation.
50 /// </summary>
51 public string EvaluatorName
52 {
53 get;
54 set;
55 } = "LotSizingSolutionChecker";
56
57 /// <summary>
58 /// Gets or sets the evaluator version written to the solution evaluation.
59 /// </summary>
60 public string EvaluatorVersion
61 {
62 get;
63 set;
64 } = "1.0";
65
66 /// <summary>
67 /// Validates this configuration.
68 /// </summary>
69 public void EnsureValid()
70 {
71 if (CheckOptions is null)
72 {
73 throw new InvalidOperationException(
74 "CheckOptions cannot be null.");
75 }
76
77 CheckOptions.EnsureValid();
78
79 if (string.IsNullOrWhiteSpace(EvaluatorName))
80 {
81 throw new InvalidOperationException(
82 "EvaluatorName cannot be empty.");
83 }
84
85 if (string.IsNullOrWhiteSpace(EvaluatorVersion))
86 {
87 throw new InvalidOperationException(
88 "EvaluatorVersion cannot be empty.");
89 }
90 }
91}
Configures generic lot-sizing solution checking.
Configures the high-level verification facade and the application of checker results back to domain o...
SolutionCheckOptions CheckOptions
Gets or sets the options used by the underlying solution checker.
bool UpdateKnownResultFeasibility
Gets or sets whether an explicitly supplied known result receives the independently established feasi...
bool ApplyToSolutionEvaluation
Gets or sets whether the computed checker result is written to LotSizingSolution.Evaluation.
string EvaluatorVersion
Gets or sets the evaluator version written to the solution evaluation.
string EvaluatorName
Gets or sets the evaluator name written to the solution evaluation.
bool PromoteFullyVerifiedKnownResult
Gets or sets whether a known result is promoted to AutomaticallyVerified when a complete Full check s...