Package io.github.ai4ci.config.inhost
Class ImmutableStochasticModel.Builder
java.lang.Object
io.github.ai4ci.config.inhost.ImmutableStochasticModel.Builder
- Enclosing class:
- ImmutableStochasticModel
Builds instances of type
ImmutableStochasticModel
.
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 TypeMethodDescriptionbuild()
Builds a newImmutableStochasticModel
.from
(StochasticModel instance) Fill a builder with attribute values from the providedStochasticModel
instance.setBaselineViralInfectionRate
(Double baselineViralInfectionRate) Initializes the value for thebaselineViralInfectionRate
attribute.setBaselineViralReplicationRate
(Double baselineViralReplicationRate) Initializes the value for thebaselineViralReplicationRate
attribute.setImmuneActivationRate
(Abstraction.Distribution immuneActivationRate) Initializes the value for theimmuneActivationRate
attribute.setImmuneTargetRatio
(Abstraction.Distribution immuneTargetRatio) Initializes the value for theimmuneTargetRatio
attribute.setImmuneWaningRate
(Abstraction.Distribution immuneWaningRate) Initializes the value for theimmuneWaningRate
attribute.setInfectionCarrierProbability
(Abstraction.Distribution infectionCarrierProbability) Initializes the value for theinfectionCarrierProbability
attribute.setTargetCellCount
(Integer targetCellCount) Initializes the value for thetargetCellCount
attribute.setTargetRecoveryRate
(Abstraction.Distribution targetRecoveryRate) Initializes the value for thetargetRecoveryRate
attribute.setVirionsDiseaseCutoff
(Integer virionsDiseaseCutoff) Initializes the value for thevirionsDiseaseCutoff
attribute.
-
Method Details
-
from
Fill a builder with attribute values from the providedStochasticModel
instance. Regular attribute values will be replaced with those from the given instance. Absent optional values will not replace present values.- Parameters:
instance
- The instance from which to copy values- Returns:
this
builder for use in a chained invocation
-
setTargetCellCount
@CanIgnoreReturnValue public final ImmutableStochasticModel.Builder setTargetCellCount(Integer targetCellCount) Initializes the value for thetargetCellCount
attribute.- Parameters:
targetCellCount
- The value for targetCellCount- Returns:
this
builder for use in a chained invocation
-
setImmuneTargetRatio
@CanIgnoreReturnValue public final ImmutableStochasticModel.Builder setImmuneTargetRatio(Abstraction.Distribution immuneTargetRatio) Initializes the value for theimmuneTargetRatio
attribute.- Parameters:
immuneTargetRatio
- The value for immuneTargetRatio- Returns:
this
builder for use in a chained invocation
-
setImmuneActivationRate
@CanIgnoreReturnValue public final ImmutableStochasticModel.Builder setImmuneActivationRate(Abstraction.Distribution immuneActivationRate) Initializes the value for theimmuneActivationRate
attribute.- Parameters:
immuneActivationRate
- The value for immuneActivationRate- Returns:
this
builder for use in a chained invocation
-
setImmuneWaningRate
@CanIgnoreReturnValue public final ImmutableStochasticModel.Builder setImmuneWaningRate(Abstraction.Distribution immuneWaningRate) Initializes the value for theimmuneWaningRate
attribute.- Parameters:
immuneWaningRate
- The value for immuneWaningRate- Returns:
this
builder for use in a chained invocation
-
setInfectionCarrierProbability
@CanIgnoreReturnValue public final ImmutableStochasticModel.Builder setInfectionCarrierProbability(Abstraction.Distribution infectionCarrierProbability) Initializes the value for theinfectionCarrierProbability
attribute.- Parameters:
infectionCarrierProbability
- The value for infectionCarrierProbability- Returns:
this
builder for use in a chained invocation
-
setTargetRecoveryRate
@CanIgnoreReturnValue public final ImmutableStochasticModel.Builder setTargetRecoveryRate(Abstraction.Distribution targetRecoveryRate) Initializes the value for thetargetRecoveryRate
attribute.- Parameters:
targetRecoveryRate
- The value for targetRecoveryRate- Returns:
this
builder for use in a chained invocation
-
setBaselineViralInfectionRate
@CanIgnoreReturnValue public final ImmutableStochasticModel.Builder setBaselineViralInfectionRate(Double baselineViralInfectionRate) Initializes the value for thebaselineViralInfectionRate
attribute.- Parameters:
baselineViralInfectionRate
- The value for baselineViralInfectionRate- Returns:
this
builder for use in a chained invocation
-
setBaselineViralReplicationRate
@CanIgnoreReturnValue public final ImmutableStochasticModel.Builder setBaselineViralReplicationRate(Double baselineViralReplicationRate) Initializes the value for thebaselineViralReplicationRate
attribute.- Parameters:
baselineViralReplicationRate
- The value for baselineViralReplicationRate- Returns:
this
builder for use in a chained invocation
-
setVirionsDiseaseCutoff
@CanIgnoreReturnValue public final ImmutableStochasticModel.Builder setVirionsDiseaseCutoff(Integer virionsDiseaseCutoff) Initializes the value for thevirionsDiseaseCutoff
attribute.- Parameters:
virionsDiseaseCutoff
- The value for virionsDiseaseCutoff- Returns:
this
builder for use in a chained invocation
-
build
Builds a newImmutableStochasticModel
.- Returns:
- An immutable instance of StochasticModel
- Throws:
IllegalStateException
- if any required attributes are missing
-