Record Class ResourceUsage

java.lang.Object
java.lang.Record
cloud.spawnery.agent.api.ResourceUsage

public record ResourceUsage(long cpuUsedMillicores, long cpuRequestedMillicores, long cpuLimitMillicores, boolean cpuUnlimited, long memoryUsedBytes, long memoryRequestedBytes, long memoryLimitBytes, boolean memoryUnlimited, int pods, int podsMeasured) extends Record
What a set of pods uses right now, and what they asked for. CPU in millicores, memory in bytes. The used figures cover podsMeasured of pods; a pod the metrics API has no sample for is left out rather than counted as idle.

cpuUnlimited (and memoryUnlimited) means some container has no limit, so the limit figure is a floor.

  • Constructor Summary

    Constructors
    Constructor
    Description
    ResourceUsage(long cpuUsedMillicores, long cpuRequestedMillicores, long cpuLimitMillicores, boolean cpuUnlimited, long memoryUsedBytes, long memoryRequestedBytes, long memoryLimitBytes, boolean memoryUnlimited, int pods, int podsMeasured)
    Creates an instance of a ResourceUsage record class.
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    Whether every pod in the set was measured.
    long
    Returns the value of the cpuLimitMillicores record component.
    long
    Returns the value of the cpuRequestedMillicores record component.
    boolean
    Returns the value of the cpuUnlimited record component.
    long
    Returns the value of the cpuUsedMillicores record component.
    final boolean
    Indicates whether some other object is "equal to" this one.
    final int
    Returns a hash code value for this object.
    boolean
    Whether any pod in the set was measured.
    long
    Returns the value of the memoryLimitBytes record component.
    long
    Returns the value of the memoryRequestedBytes record component.
    boolean
    Returns the value of the memoryUnlimited record component.
    long
    Returns the value of the memoryUsedBytes record component.
    int
    Returns the value of the pods record component.
    int
    Returns the value of the podsMeasured record component.
    final String
    Returns a string representation of this record class.

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • ResourceUsage

      public ResourceUsage(long cpuUsedMillicores, long cpuRequestedMillicores, long cpuLimitMillicores, boolean cpuUnlimited, long memoryUsedBytes, long memoryRequestedBytes, long memoryLimitBytes, boolean memoryUnlimited, int pods, int podsMeasured)
      Creates an instance of a ResourceUsage record class.
      Parameters:
      cpuUsedMillicores - the value for the cpuUsedMillicores record component
      cpuRequestedMillicores - the value for the cpuRequestedMillicores record component
      cpuLimitMillicores - the value for the cpuLimitMillicores record component
      cpuUnlimited - the value for the cpuUnlimited record component
      memoryUsedBytes - the value for the memoryUsedBytes record component
      memoryRequestedBytes - the value for the memoryRequestedBytes record component
      memoryLimitBytes - the value for the memoryLimitBytes record component
      memoryUnlimited - the value for the memoryUnlimited record component
      pods - the value for the pods record component
      podsMeasured - the value for the podsMeasured record component
  • Method Details

    • measured

      public boolean measured()
      Whether any pod in the set was measured.
    • complete

      public boolean complete()
      Whether every pod in the set was measured.
    • 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. All components in this record class are compared with '=='.
      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.
    • cpuUsedMillicores

      public long cpuUsedMillicores()
      Returns the value of the cpuUsedMillicores record component.
      Returns:
      the value of the cpuUsedMillicores record component
    • cpuRequestedMillicores

      public long cpuRequestedMillicores()
      Returns the value of the cpuRequestedMillicores record component.
      Returns:
      the value of the cpuRequestedMillicores record component
    • cpuLimitMillicores

      public long cpuLimitMillicores()
      Returns the value of the cpuLimitMillicores record component.
      Returns:
      the value of the cpuLimitMillicores record component
    • cpuUnlimited

      public boolean cpuUnlimited()
      Returns the value of the cpuUnlimited record component.
      Returns:
      the value of the cpuUnlimited record component
    • memoryUsedBytes

      public long memoryUsedBytes()
      Returns the value of the memoryUsedBytes record component.
      Returns:
      the value of the memoryUsedBytes record component
    • memoryRequestedBytes

      public long memoryRequestedBytes()
      Returns the value of the memoryRequestedBytes record component.
      Returns:
      the value of the memoryRequestedBytes record component
    • memoryLimitBytes

      public long memoryLimitBytes()
      Returns the value of the memoryLimitBytes record component.
      Returns:
      the value of the memoryLimitBytes record component
    • memoryUnlimited

      public boolean memoryUnlimited()
      Returns the value of the memoryUnlimited record component.
      Returns:
      the value of the memoryUnlimited record component
    • pods

      public int pods()
      Returns the value of the pods record component.
      Returns:
      the value of the pods record component
    • podsMeasured

      public int podsMeasured()
      Returns the value of the podsMeasured record component.
      Returns:
      the value of the podsMeasured record component