Class MachineImageFamily

java.lang.Object
co.yellowdog.platform.model.MachineImageFamily
All Implemented Interfaces:
Identified, Named, Serializable

@ValidatedBy(MachineImageFamilyValidator.class) public class MachineImageFamily extends Object implements Identified, Named, Serializable
Defines a family of versions of machine image groups.
See Also:
  • Constructor Details

  • Method Details

    • builder

      public static MachineImageFamily.Builder builder()
    • toBuilder

      public MachineImageFamily.Builder toBuilder()
    • getId

      public String getId()
      Description copied from interface: Identified
      Returns the ID
      Specified by:
      getId in interface Identified
      Returns:
      the ID
    • getCreatedTime

      public Instant getCreatedTime()
      The date and time when this machine image family was first created.
      Returns:
      the date and time when this machine image family was first created
    • getNamespace

      public String getNamespace()
      The user allocated namespace used to group machine image families and other objects together.
      Returns:
      the machine image family namespace
    • getName

      public String getName()
      The user allocated name used to uniquely identify this machine image family within its namespace.
      Specified by:
      getName in interface Named
      Returns:
      the machine image family name
    • getOsType

      public ImageOsType getOsType()
      The operating system type of all images within this machine image family.
      Returns:
      the operating system type of all images within this machine image family
    • getAccess

      public ImageAccess getAccess()
      The access level for this machine image family and any contained groups and images.
      Returns:
      the access level for this machine image family
    • getMetadataSpecification

      public Map<@NotBlank String,String> getMetadataSpecification()
      A map of user-definable key-value pairs used to specify metadata keys and, optionally, values required to be on all images within the machine image family.
      Returns:
      the image metadata specification for the machine image family
    • getImageGroups

      public List<@NotNull @Valid MachineImageGroup> getImageGroups()
      A list of the related machine image groups.
      Returns:
      a list of related machine image groups
    • setId

      public void setId(String id)
    • setCreatedTime

      public void setCreatedTime(Instant createdTime)
      The date and time when this machine image family was first created.
      Parameters:
      createdTime - This should not be set outside of the YellowDog Images service.
    • setNamespace

      public void setNamespace(String namespace)
      The user allocated namespace used to group machine image families and other objects together.
      Parameters:
      namespace - the machine image family namespace
      This should not be changed once the machine image family has been submitted to the YellowDog Images service.
    • setName

      public void setName(String name)
      The user allocated name used to uniquely identify this machine image family within its namespace.
      Parameters:
      name - the machine image family name
      This should not be changed once the machine image family has been submitted to the YellowDog Images service.
    • setOsType

      public void setOsType(ImageOsType osType)
      The operating system type of all images within this machine image family.
      Parameters:
      osType - the operating system type of all images within this machine image family
    • setAccess

      public void setAccess(ImageAccess access)
      The access level for this machine image family and any contained groups and images.
      Parameters:
      access - the access level for this machine image family
    • setMetadataSpecification

      public void setMetadataSpecification(Map<@NotBlank String,String> metadataSpecification)
      A map of user-definable key-value pairs used to specify metadata keys and, optionally, values required to be on all images within the machine image family.
      Parameters:
      metadataSpecification - the image metadata specification for the machine image family
    • setImageGroups

      public void setImageGroups(List<@NotNull @Valid MachineImageGroup> imageGroups)
      A list of the related machine image groups.
      Parameters:
      imageGroups - a list of related machine image groups
    • 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