Class ImmutableStochasticModel.Builder

java.lang.Object
io.github.ai4ci.config.inhost.ImmutableStochasticModel.Builder
Enclosing class:
ImmutableStochasticModel

@NotThreadSafe public static final class ImmutableStochasticModel.Builder extends Object
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 Details

    • from

      @CanIgnoreReturnValue public final ImmutableStochasticModel.Builder from(StochasticModel instance)
      Fill a builder with attribute values from the provided StochasticModel 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 the targetCellCount 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 the immuneTargetRatio 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 the immuneActivationRate 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 the immuneWaningRate 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 the infectionCarrierProbability 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 the targetRecoveryRate 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 the baselineViralInfectionRate 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 the baselineViralReplicationRate 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 the virionsDiseaseCutoff attribute.
      Parameters:
      virionsDiseaseCutoff - The value for virionsDiseaseCutoff
      Returns:
      this builder for use in a chained invocation
    • build

      public ImmutableStochasticModel build()
      Returns:
      An immutable instance of StochasticModel
      Throws:
      IllegalStateException - if any required attributes are missing