Class TelescopeArray

java.lang.Object
org.ivoa.dm.proposal.prop.TelescopeArray
All Implemented Interfaces:
org.ivoa.vodml.jpa.JPAManipulations, org.ivoa.vodml.jpa.JPAManipulationsForObjectType<Long>

@Entity @VoDml(id="proposal:TelescopeArray", role=objectType) public class TelescopeArray extends Object implements org.ivoa.vodml.jpa.JPAManipulationsForObjectType<Long>
a set of telescopes that are operated together for an observation. objectType: TelescopeArray
  • Field Details

    • _id

      protected Long _id
      inserted database key
    • name

      @VoDml(id="proposal:TelescopeArray.name", role=attribute, type="ivoa:string", typeRole=primitiveType) protected String name
      the array name. : Attribute name : multiplicity 1
    • arrayMembers

      @VoDml(id="proposal:TelescopeArray.arrayMembers", role=composition, type="proposal:TelescopeArrayMember", typeRole=objectType) protected List<TelescopeArrayMember> arrayMembers
      the telescopes that make up the array. composition arrayMembers : ( Multiplicity : 1..* )
  • Constructor Details

    • TelescopeArray

      public TelescopeArray()
      Creates a new TelescopeArray
    • TelescopeArray

      public TelescopeArray(String name, List<TelescopeArrayMember> arrayMembers)
      full parameter constructor.
      Parameters:
      name - the array name.
      arrayMembers - the telescopes that make up the array.
    • TelescopeArray

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

    • getId

      public Long getId()
      Specified by:
      getId in interface org.ivoa.vodml.jpa.JPAManipulationsForObjectType<Long>
      Returns:
      the id
    • updateClonedReferences

      public void updateClonedReferences()
      updates any cloned references that are contained within the hierarchy.
    • updateUsing

      public void updateUsing(TelescopeArray 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.
    • getName

      public String getName()
      Returns name Attribute
      Returns:
      name Attribute
    • setName

      public void setName(String pName)
      Defines name Attribute
      Parameters:
      pName - value to set
    • withName

      public TelescopeArray withName(String pName)
    • getArrayMembers

      public List<TelescopeArrayMember> getArrayMembers()
      Returns arrayMembers composition as an immutable list.
      Returns:
      arrayMembers composition
    • setArrayMembers

      public void setArrayMembers(List<TelescopeArrayMember> pArrayMembers)
      Defines whole arrayMembers composition.
      Parameters:
      pArrayMembers - composition to set
    • addToArrayMembers

      public void addToArrayMembers(TelescopeArrayMember p)
      Add a org.ivoa.dm.proposal.prop.TelescopeArrayMember to the composition.
      Parameters:
      p - org.ivoa.dm.proposal.prop.TelescopeArrayMember to add
    • removeFromArrayMembers

      public void removeFromArrayMembers(TelescopeArrayMember p)
      Remove a org.ivoa.dm.proposal.prop.TelescopeArrayMember from the composition.
      Parameters:
      p - org.ivoa.dm.proposal.prop.TelescopeArrayMember to remove
    • replaceInArrayMembers

      public void replaceInArrayMembers(TelescopeArrayMember _p)
      update a org.ivoa.dm.proposal.prop.TelescopeArrayMember in the composition.
      Parameters:
      _p - org.ivoa.dm.proposal.prop.TelescopeArrayMember to update the match is done via the database key
    • createTelescopeArray

      public static TelescopeArray createTelescopeArray(Consumer<TelescopeArray.TelescopeArrayBuilder> f)
      create a TelescopeArray 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
    • jpaClone

      public void jpaClone(jakarta.persistence.EntityManager em)
      Specified by:
      jpaClone in interface org.ivoa.vodml.jpa.JPAManipulations
    • persistRefs

      public void persistRefs(jakarta.persistence.EntityManager _em)
      Specified by:
      persistRefs in interface org.ivoa.vodml.jpa.JPAManipulations