Class NodeDetails

java.lang.Object
co.yellowdog.platform.model.NodeDetails
All Implemented Interfaces:
Serializable

public class NodeDetails extends Object implements Serializable
Describes the details of a worker pool node.
See Also:
  • Method Details

    • builder

      public static NodeDetails.Builder builder()
    • getInstanceId

      public String getInstanceId()
      The ID of the node's instance.
      Returns:
      the ID of the node's instance
    • getProvider

      public CloudProvider getProvider()
      The provider of the node's instance.
      Returns:
      the provider of the node's instance
    • getRegion

      public String getRegion()
      The region in which the node's instance is running.
      Returns:
      the region
    • getSourceName

      public String getSourceName()
      The name of the compute source from which the node's instance was provisioned.
      Returns:
      the compute source name
    • getSourceNumber

      public Integer getSourceNumber()
      The number of the compute source based on its order within the parent compute requirement.
      Returns:
      the compute source number
    • getInstanceType

      public String getInstanceType()
      The instance type of the instance.
      Returns:
      the instance type
    • getHostname

      public String getHostname()
      The hostname of the instance.
      Returns:
      the hostname
    • getPrivateIpAddress

      public String getPrivateIpAddress()
      The private IP address of the instance.
      Returns:
      the private IP address
    • getPublicIpAddress

      public String getPublicIpAddress()
      The public IP address of the instance.
      Returns:
      the public IP address
    • getVcpus

      public Double getVcpus()
      The number of processors (threads) on the node's instance.
      Returns:
      the number of processors
    • getRam

      public Double getRam()
      The amount of RAM in GB on the node's instance.
      Returns:
      the amount of RAM in GB
    • getSupportedTaskTypes

      public List<@NotBlank String> getSupportedTaskTypes()
      The task types supported by this node.
      Returns:
      the supported task types
    • getWorkerTag

      public String getWorkerTag()
      An optional tag value that can be used to constrain worker allocation.
      Returns:
      an optional tag value
    • getNodeType

      public String getNodeType()
      The node type of this node if node types have been configured.
      Returns:
      the node type of this node (can be null)
    • getNodeSlot

      public Integer getNodeSlot()
      The slot number of this node within its node type if slot numbering has been configured.
      Returns:
      the slot number of this node within its node type (can be null)
    • getSpot

      public Boolean getSpot()
      Whether this Node is running on Spot compute. If it has not been possible to determine if the Node is running on Spot, this will be null.
      Returns:
      `true` if this Node is running on Spot compute.
    • setInstanceId

      public void setInstanceId(String instanceId)
      The ID of the node's instance.
      Parameters:
      instanceId - the ID of the node's instance
    • setProvider

      public void setProvider(CloudProvider provider)
      The provider of the node's instance.
      Parameters:
      provider - the provider of the node's instance
    • setRegion

      public void setRegion(String region)
      The region in which the node's instance is running.
      Parameters:
      region - the region
    • setSourceName

      public void setSourceName(String sourceName)
      The name of the compute source from which the node's instance was provisioned.
      Parameters:
      sourceName - the compute source name
    • setSourceNumber

      public void setSourceNumber(Integer sourceNumber)
      The number of the compute source based on its order within the parent compute requirement.
      Parameters:
      sourceNumber - the compute source number
    • setInstanceType

      public void setInstanceType(String instanceType)
      The instance type of the instance.
      Parameters:
      instanceType - the instance type
    • setHostname

      public void setHostname(String hostname)
      The hostname of the instance.
      Parameters:
      hostname - the hostname
    • setPrivateIpAddress

      public void setPrivateIpAddress(String privateIpAddress)
      The private IP address of the instance.
      Parameters:
      privateIpAddress - the private IP address
    • setPublicIpAddress

      public void setPublicIpAddress(String publicIpAddress)
      The public IP address of the instance.
      Parameters:
      publicIpAddress - the public IP address
    • setVcpus

      public void setVcpus(Double vcpus)
      The number of processors (threads) on the node's instance.
      Parameters:
      vcpus - the number of processors
    • setRam

      public void setRam(Double ram)
      The amount of RAM in GB on the node's instance.
      Parameters:
      ram - the amount of RAM in GB
    • setSupportedTaskTypes

      public void setSupportedTaskTypes(List<@NotBlank String> supportedTaskTypes)
      The task types supported by this node.
      Parameters:
      supportedTaskTypes - the supported task types
    • setWorkerTag

      public void setWorkerTag(String workerTag)
      An optional tag value that can be used to constrain worker allocation.
      Parameters:
      workerTag - an optional tag value
    • setNodeType

      public void setNodeType(String nodeType)
      The node type of this node if node types have been configured.
      Parameters:
      nodeType - the node type of this node
    • setNodeSlot

      public void setNodeSlot(Integer nodeSlot)
      The slot number of this node within its node type if slot numbering has been configured.
      Parameters:
      nodeSlot - the slot number of this node within its node type
    • setSpot

      public void setSpot(Boolean spot)
      Whether this Node is running on Spot compute. If it has not been possible to determine if the Node is running on Spot, this will be null.
      Parameters:
      spot - `true` if this Node is running on Spot compute.
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • canEqual

      protected boolean canEqual(Object other)
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object