Class DockerPlatformSpec

java.lang.Object
org.ivoa.dm.executionbroker.DockerPlatformSpec
All Implemented Interfaces:
org.ivoa.vodml.jpa.JPAManipulations

@Embeddable @VoDml(id="execbroker:DockerPlatformSpec", role=dataType) public class DockerPlatformSpec extends Object implements org.ivoa.vodml.jpa.JPAManipulations
Details of the platform the container image is built for. Debatable whether we need to have this here. The information will be in the container, and the platform will probably need to check it anyway to make sure. So why have the duplicate information ?. dataType: DockerPlatformSpec
  • Field Details

    • architecture

      @VoDml(id="execbroker:DockerPlatformSpec.architecture", role=attribute, type="ivoa:string", typeRole=primitiveType) protected String architecture
      The CPU architecture the image is built for. The default is `amd64`. : Attribute architecture : multiplicity 1
    • os

      @VoDml(id="execbroker:DockerPlatformSpec.os", role=attribute, type="ivoa:string", typeRole=primitiveType) protected String os
      The operating system the image is built for. The default is `linux`. : Attribute os : multiplicity 1
  • Constructor Details

    • DockerPlatformSpec

      public DockerPlatformSpec()
      Creates a new DockerPlatformSpec
    • DockerPlatformSpec

      public DockerPlatformSpec(String architecture, String os)
      full parameter constructor.
      Parameters:
      architecture - The CPU architecture the image is built for. The default is `amd64`.
      os - The operating system the image is built for. The default is `linux`.
    • DockerPlatformSpec

      public DockerPlatformSpec(DockerPlatformSpec other)
      Copy Constructor. Note that references will remain as is rather than be copied.
      Parameters:
      other - the object to be copied.
  • Method Details

    • updateUsing

      public void updateUsing(DockerPlatformSpec other)
      Update this object with the content of the given object. Note that references will remain as is rather than be copied.
      Parameters:
      other - the object to be copied.
    • getArchitecture

      public String getArchitecture()
      Returns architecture Attribute.
      Returns:
      architecture Attribute
    • setArchitecture

      public void setArchitecture(String pArchitecture)
      Set architecture Attribute.
      Parameters:
      pArchitecture - value to set
    • withArchitecture

      public DockerPlatformSpec withArchitecture(String pArchitecture)
      fluent setter for architecture Attribute.
      Parameters:
      pArchitecture - value to set
      Returns:
      DockerPlatformSpec
    • getOs

      public String getOs()
      Returns os Attribute.
      Returns:
      os Attribute
    • setOs

      public void setOs(String pOs)
      Set os Attribute.
      Parameters:
      pOs - value to set
    • withOs

      public DockerPlatformSpec withOs(String pOs)
      fluent setter for os Attribute.
      Parameters:
      pOs - value to set
      Returns:
      DockerPlatformSpec
    • createDockerPlatformSpec

      public static DockerPlatformSpec createDockerPlatformSpec(Consumer<DockerPlatformSpec.DockerPlatformSpecBuilder> f)
      create a DockerPlatformSpec in functional builder style.
      Parameters:
      f - the functional builder.
      Returns:
      an object initialized from the builder.
    • forceLoad

      public void forceLoad()
      Specified by:
      forceLoad in interface org.ivoa.vodml.jpa.JPAManipulations