Class ImmutableOutbreakHistoryCSV

java.lang.Object
io.github.ai4ci.output.ImmutableOutbreakHistoryCSV
All Implemented Interfaces:
CSVWriter.Writeable, CommonCSV.Execution, CommonCSV.Model, CommonCSV.State, OutbreakHistoryCSV

@ParametersAreNonnullByDefault @Generated("org.immutables.processor.ProxyProcessor") @Immutable @CheckReturnValue public final class ImmutableOutbreakHistoryCSV extends Object implements OutbreakHistoryCSV
Immutable implementation of OutbreakHistoryCSV.

Use the builder to create immutable instances: ImmutableOutbreakHistoryCSV.builder().

  • Method Details

    • getModelName

      public String getModelName()
      Specified by:
      getModelName in interface CommonCSV.Model
      Returns:
      The value of the modelName attribute
    • getExperimentName

      public String getExperimentName()
      Specified by:
      getExperimentName in interface CommonCSV.Model
      Returns:
      The value of the experimentName attribute
    • getModelReplica

      public int getModelReplica()
      Specified by:
      getModelReplica in interface CommonCSV.Execution
      Returns:
      The value of the modelReplica attribute
    • getExperimentReplica

      public int getExperimentReplica()
      Specified by:
      getExperimentReplica in interface CommonCSV.Execution
      Returns:
      The value of the experimentReplica attribute
    • getTime

      public int getTime()
      Specified by:
      getTime in interface CommonCSV.State
      Returns:
      The value of the time attribute
    • getObservationTime

      public int getObservationTime()
      Specified by:
      getObservationTime in interface OutbreakHistoryCSV
      Returns:
      The value of the observationTime attribute
    • getCurrentTestPositivesBySampleDate

      public long getCurrentTestPositivesBySampleDate()
      Specified by:
      getCurrentTestPositivesBySampleDate in interface OutbreakHistoryCSV
      Returns:
      The value of the currentTestPositivesBySampleDate attribute
    • getCurrentTestNegativesBySampleDate

      public long getCurrentTestNegativesBySampleDate()
      Specified by:
      getCurrentTestNegativesBySampleDate in interface OutbreakHistoryCSV
      Returns:
      The value of the currentTestNegativesBySampleDate attribute
    • withModelName

      public final ImmutableOutbreakHistoryCSV withModelName(String value)
      Copy the current immutable object by setting a value for the modelName attribute. An equals check used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for modelName
      Returns:
      A modified copy of the this object
    • withExperimentName

      public final ImmutableOutbreakHistoryCSV withExperimentName(String value)
      Copy the current immutable object by setting a value for the experimentName attribute. An equals check used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for experimentName
      Returns:
      A modified copy of the this object
    • withModelReplica

      public final ImmutableOutbreakHistoryCSV withModelReplica(int value)
      Copy the current immutable object by setting a value for the modelReplica attribute. A value equality check is used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for modelReplica
      Returns:
      A modified copy of the this object
    • withExperimentReplica

      public final ImmutableOutbreakHistoryCSV withExperimentReplica(int value)
      Copy the current immutable object by setting a value for the experimentReplica attribute. A value equality check is used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for experimentReplica
      Returns:
      A modified copy of the this object
    • withTime

      public final ImmutableOutbreakHistoryCSV withTime(int value)
      Copy the current immutable object by setting a value for the time attribute. A value equality check is used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for time
      Returns:
      A modified copy of the this object
    • withObservationTime

      public final ImmutableOutbreakHistoryCSV withObservationTime(int value)
      Copy the current immutable object by setting a value for the observationTime attribute. A value equality check is used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for observationTime
      Returns:
      A modified copy of the this object
    • withCurrentTestPositivesBySampleDate

      public final ImmutableOutbreakHistoryCSV withCurrentTestPositivesBySampleDate(long value)
      Copy the current immutable object by setting a value for the currentTestPositivesBySampleDate attribute. A value equality check is used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for currentTestPositivesBySampleDate
      Returns:
      A modified copy of the this object
    • withCurrentTestNegativesBySampleDate

      public final ImmutableOutbreakHistoryCSV withCurrentTestNegativesBySampleDate(long value)
      Copy the current immutable object by setting a value for the currentTestNegativesBySampleDate attribute. A value equality check is used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for currentTestNegativesBySampleDate
      Returns:
      A modified copy of the this object
    • equals

      public boolean equals(@Nullable Object another)
      This instance is equal to all instances of ImmutableOutbreakHistoryCSV that have equal attribute values.
      Overrides:
      equals in class Object
      Returns:
      true if this is equal to another instance
    • hashCode

      public int hashCode()
      Computes a hash code from attributes: modelName, experimentName, modelReplica, experimentReplica, time, observationTime, currentTestPositivesBySampleDate, currentTestNegativesBySampleDate.
      Overrides:
      hashCode in class Object
      Returns:
      hashCode value
    • toString

      public String toString()
      Prints the immutable value OutbreakHistoryCSV with attribute values.
      Overrides:
      toString in class Object
      Returns:
      A string representation of the value
    • copyOf

      public static ImmutableOutbreakHistoryCSV copyOf(OutbreakHistoryCSV instance)
      Creates an immutable copy of a OutbreakHistoryCSV value. Uses accessors to get values to initialize the new immutable instance. If an instance is already immutable, it is returned as is.
      Parameters:
      instance - The instance to copy
      Returns:
      A copied immutable OutbreakHistoryCSV instance
    • toBuilder

      Creates a builder for ImmutableOutbreakHistoryCSV.prefilled with attibute values of this instance to easily create modified copies.
      Returns:
      A new ImmutableOutbreakHistoryCSV builder with attributes of this instance
    • builder

      public static ImmutableOutbreakHistoryCSV.Builder builder()
      Creates a builder for ImmutableOutbreakHistoryCSV.
       ImmutableOutbreakHistoryCSV.builder()
          .setModelName(String) // required modelName
          .setExperimentName(String) // required experimentName
          .setModelReplica(int) // required modelReplica
          .setExperimentReplica(int) // required experimentReplica
          .setTime(int) // required time
          .setObservationTime(int) // required observationTime
          .setCurrentTestPositivesBySampleDate(long) // required currentTestPositivesBySampleDate
          .setCurrentTestNegativesBySampleDate(long) // required currentTestNegativesBySampleDate
          .build();
       
      Returns:
      A new ImmutableOutbreakHistoryCSV builder