Class Proposal

java.lang.Object
org.ivoa.dm.caom2.Proposal
All Implemented Interfaces:
org.ivoa.vodml.jpa.JPAManipulations, org.ivoa.vodml.jpa.JPAManipulationsForObjectType<String>

@Entity @VoDml(id="caom2:Proposal", role=objectType) public class Proposal extends Object implements org.ivoa.vodml.jpa.JPAManipulationsForObjectType<String>
description of the science proposal or programme that initiated the observation. objectType: Proposal
  • Field Details

    • id

      @VoDml(id="caom2:Proposal.id", role=attribute, type="ivoa:string", typeRole=primitiveType) protected String id
      collection-specific identifier for the proposal. : Attribute id : multiplicity 1
    • pi

      @VoDml(id="caom2:Proposal.pi", role=attribute, type="ivoa:string", typeRole=primitiveType) protected String pi
      proper name of the principal investigator. : Attribute pi : multiplicity 0..1
    • project

      @VoDml(id="caom2:Proposal.project", role=attribute, type="ivoa:string", typeRole=primitiveType) protected String project
      common name of the project this proposal belongs to; typically used for larger or long-running projects that include mutliple proposals. : Attribute project : multiplicity 0..1
    • title

      @VoDml(id="caom2:Proposal.title", role=attribute, type="ivoa:string", typeRole=primitiveType) protected String title
      title of the proposal. : Attribute title : multiplicity 0..1
    • keywords

      @VoDml(id="caom2:Proposal.keywords", role=attribute, type="ivoa:string", typeRole=primitiveType) protected List<String> keywords
      additional keywords that describe the science goals of the proposal; keywords cannot contain the pipe (|) character - it is reserved for use in persistence systems (e.g. to store all keywords in a single column in a table). : Attribute keywords : multiplicity 0..*
    • reference

      @VoDml(id="caom2:Proposal.reference", role=attribute, type="ivoa:anyURI", typeRole=primitiveType) protected String reference
      identifier for external resource with proposal details. : Attribute reference : multiplicity 0..1
  • Constructor Details

    • Proposal

      public Proposal()
      Creates a new Proposal
    • Proposal

      public Proposal(String id, String pi, String project, String title, List<String> keywords, String reference)
      full parameter constructor.
      Parameters:
      id - collection-specific identifier for the proposal.
      pi - proper name of the principal investigator.
      project - common name of the project this proposal belongs to; typically used for larger or long-running projects that include mutliple proposals.
      title - title of the proposal.
      keywords - additional keywords that describe the science goals of the proposal; keywords cannot contain the pipe (|) character - it is reserved for use in persistence systems (e.g. to store all keywords in a single column in a table).
      reference - identifier for external resource with proposal details.
    • Proposal

      public Proposal(Proposal 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(Proposal 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.
    • getId

      public String getId()
      Returns id Attribute.
      Specified by:
      getId in interface org.ivoa.vodml.jpa.JPAManipulationsForObjectType<String>
      Returns:
      id Attribute
    • setId

      public void setId(String pId)
      Set id Attribute.
      Parameters:
      pId - value to set
    • withId

      public Proposal withId(String pId)
      fluent setter for id Attribute.
      Parameters:
      pId - value to set
      Returns:
      Proposal
    • getPi

      public String getPi()
      Returns pi Attribute.
      Returns:
      pi Attribute
    • setPi

      public void setPi(String pPi)
      Set pi Attribute.
      Parameters:
      pPi - value to set
    • withPi

      public Proposal withPi(String pPi)
      fluent setter for pi Attribute.
      Parameters:
      pPi - value to set
      Returns:
      Proposal
    • getProject

      public String getProject()
      Returns project Attribute.
      Returns:
      project Attribute
    • setProject

      public void setProject(String pProject)
      Set project Attribute.
      Parameters:
      pProject - value to set
    • withProject

      public Proposal withProject(String pProject)
      fluent setter for project Attribute.
      Parameters:
      pProject - value to set
      Returns:
      Proposal
    • getTitle

      public String getTitle()
      Returns title Attribute.
      Returns:
      title Attribute
    • setTitle

      public void setTitle(String pTitle)
      Set title Attribute.
      Parameters:
      pTitle - value to set
    • withTitle

      public Proposal withTitle(String pTitle)
      fluent setter for title Attribute.
      Parameters:
      pTitle - value to set
      Returns:
      Proposal
    • getKeywords

      public List<String> getKeywords()
      Returns keywords Attribute.
      Returns:
      keywords Attribute
    • setKeywords

      public void setKeywords(List<String> pKeywords)
      Set keywords Attribute.
      Parameters:
      pKeywords - value to set
    • withKeywords

      public Proposal withKeywords(List<String> pKeywords)
      fluent setter for keywords Attribute.
      Parameters:
      pKeywords - value to set
      Returns:
      Proposal
    • getReference

      public String getReference()
      Returns reference Attribute.
      Returns:
      reference Attribute
    • setReference

      public void setReference(String pReference)
      Set reference Attribute.
      Parameters:
      pReference - value to set
    • withReference

      public Proposal withReference(String pReference)
      fluent setter for reference Attribute.
      Parameters:
      pReference - value to set
      Returns:
      Proposal
    • createProposal

      public static Proposal createProposal(Consumer<Proposal.ProposalBuilder> f)
      create a Proposal 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
    • delete

      public void delete(jakarta.persistence.EntityManager em)
      Specified by:
      delete in interface org.ivoa.vodml.jpa.JPAManipulationsForObjectType<String>