Class MachineImageGroup

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

@ValidatedBy(MachineImageGroupValidator.class) public class MachineImageGroup extends Object implements Identified, Named, Serializable
Defines a group of functionally equivalent machine images across different provider/region environments.
See Also:
  • Constructor Details

  • Method Details

    • builder

      public static MachineImageGroup.Builder builder()
    • toBuilder

      public MachineImageGroup.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 group was first created.
      Returns:
      the date and time when this machine image group was first created
    • getName

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

      public ImageOsType getOsType()
      The operating system type of all images within this machine image group.
      Returns:
      the operating system type of all images within this machine image group
    • 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 group.
      Returns:
      the image metadata specification for the machine image family
    • getImages

      public List<@NotNull @Valid MachineImage> getImages()
      A list of functionally equivalent machine images
      Returns:
      a list of functionally equivalent machine images
    • setId

      public void setId(String id)
    • setCreatedTime

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

      public void setName(String name)
      The user allocated name used to uniquely identify this machine image group within its family.
      Parameters:
      name - the machine image group name
      This should not be changed once the machine image group 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 group.
      Parameters:
      osType - the operating system type of all images within this machine image group
    • 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 group.
      Parameters:
      metadataSpecification - the image metadata specification for the machine image family
    • setImages

      public void setImages(List<@NotNull @Valid MachineImage> images)
      A list of functionally equivalent machine images
      Parameters:
      images - a list of functionally equivalent machine images
    • 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