Record Class WorkloadOutcome

java.lang.Object
java.lang.Record
com.eqixiac.equinix.design.resilience.WorkloadOutcome
Record Components:
workload - the workload label
status - how it fares
activeMetro - the metro it runs in during the scenario, or null when no host survives
failedOver - true when it runs in its standby metro
siteShare - share (0..1) of the site weight with a known path that still reaches it within its limits
capacityShare - share (0..1) of its bandwidth its cloud connections still carry (1 when it needs no cloud or a capacity is unknown; 0 for a cloud it cannot reach)
serviceIndex - siteShare x capacityShare: the share of the workload still served
sitePaths - per site: the path taken and its round trip, or unreachable
cloudPaths - per cloud: the connection used, the path and its round trip, or unreachable
worstSiteLatencyMs - the worst known round trip from a site that reaches it, or null when none is known
issues - what it lost, in words

public record WorkloadOutcome(String workload, WorkloadStatus status, String activeMetro, boolean failedOver, double siteShare, double capacityShare, double serviceIndex, Map<String,String> sitePaths, Map<String,String> cloudPaths, Double worstSiteLatencyMs, List<String> issues) extends Record
What happens to one workload in one scenario.
  • Constructor Details

  • Method Details

    • toString

      public final String toString()
      Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components.
      Specified by:
      toString in class Record
      Returns:
      a string representation of this object
    • hashCode

      public final int hashCode()
      Returns a hash code value for this object. The value is derived from the hash code of each of the record components.
      Specified by:
      hashCode in class Record
      Returns:
      a hash code value for this object
    • equals

      public final boolean equals(Object o)
      Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. Reference components are compared with Objects::equals(Object,Object); primitive components are compared with the compare method from their corresponding wrapper classes.
      Specified by:
      equals in class Record
      Parameters:
      o - the object with which to compare
      Returns:
      true if this object is the same as the o argument; false otherwise.
    • workload

      public String workload()
      Returns the value of the workload record component.
      Returns:
      the value of the workload record component
    • status

      public WorkloadStatus status()
      Returns the value of the status record component.
      Returns:
      the value of the status record component
    • activeMetro

      public String activeMetro()
      Returns the value of the activeMetro record component.
      Returns:
      the value of the activeMetro record component
    • failedOver

      public boolean failedOver()
      Returns the value of the failedOver record component.
      Returns:
      the value of the failedOver record component
    • siteShare

      public double siteShare()
      Returns the value of the siteShare record component.
      Returns:
      the value of the siteShare record component
    • capacityShare

      public double capacityShare()
      Returns the value of the capacityShare record component.
      Returns:
      the value of the capacityShare record component
    • serviceIndex

      public double serviceIndex()
      Returns the value of the serviceIndex record component.
      Returns:
      the value of the serviceIndex record component
    • sitePaths

      public Map<String,String> sitePaths()
      Returns the value of the sitePaths record component.
      Returns:
      the value of the sitePaths record component
    • cloudPaths

      public Map<String,String> cloudPaths()
      Returns the value of the cloudPaths record component.
      Returns:
      the value of the cloudPaths record component
    • worstSiteLatencyMs

      public Double worstSiteLatencyMs()
      Returns the value of the worstSiteLatencyMs record component.
      Returns:
      the value of the worstSiteLatencyMs record component
    • issues

      public List<String> issues()
      Returns the value of the issues record component.
      Returns:
      the value of the issues record component