Package org.ivoa.dm.proposal.prop
Class ObservingProposal
java.lang.Object
org.ivoa.dm.proposal.prop.AbstractProposal
org.ivoa.dm.proposal.prop.ObservingProposal
- All Implemented Interfaces:
org.ivoa.vodml.jaxb.XmlIdManagement
,org.ivoa.vodml.jpa.JPAManipulations
,org.ivoa.vodml.jpa.JPAManipulationsForObjectType<Long>
@Entity
@VoDml(id="proposal:ObservingProposal",
role=objectType)
public class ObservingProposal
extends AbstractProposal
implements org.ivoa.vodml.jpa.JPAManipulationsForObjectType<Long>, org.ivoa.vodml.jaxb.XmlIdManagement
a complete proposal.
objectType: ObservingProposal
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
A builder class for ObservingProposal, mainly for use in the functional builder pattern. -
Field Summary
Fields inherited from class org.ivoa.dm.proposal.prop.AbstractProposal
_id, fields, investigators, kind, observations, relatedProposals, scientificJustification, summary, supportingDocuments, targets, technicalGoals, technicalJustification, title
-
Constructor Summary
ConstructorDescriptionCreates a new ObservingProposalObservingProposal
(String title, String summary, Justification scientificJustification, Justification technicalJustification, List<Investigator> investigators, ProposalKind kind, List<RelatedProposal> relatedProposals, List<SupportingDocument> supportingDocuments, List<Target> targets, List<Field> fields, List<TechnicalGoal> technicalGoals, List<Observation> observations) full parameter constructor.ObservingProposal
(AbstractProposal superinstance) Constructor from supertype instance.Copy Constructor. -
Method Summary
Modifier and TypeMethodDescriptioncopyMe()
make a clone of the object taking into account current polymorhic type.static ObservingProposal
create a ObservingProposal in functional builder style.void
delete
(jakarta.persistence.EntityManager em) void
void
persistRefs
(jakarta.persistence.EntityManager _em) Deprecated.generally better to use the model level reference persistence as only this can deal with "contained" references properly.void
updates any cloned references that are contained within the hierarchy.void
updateUsing
(ObservingProposal other) Update this object with the content of the given object.Methods inherited from class org.ivoa.dm.proposal.prop.AbstractProposal
addToFields, addToInvestigators, addToObservations, addToRelatedProposals, addToSupportingDocuments, addToTargets, addToTechnicalGoals, getFields, getId, getInvestigators, getKind, getObservations, getRelatedProposals, getScientificJustification, getSummary, getSupportingDocuments, getTargets, getTechnicalGoals, getTechnicalJustification, getTitle, getXmlId, hasNaturalKey, removeFromFields, removeFromInvestigators, removeFromObservations, removeFromRelatedProposals, removeFromSupportingDocuments, removeFromTargets, removeFromTechnicalGoals, replaceInFields, replaceInInvestigators, replaceInObservations, replaceInRelatedProposals, replaceInSupportingDocuments, replaceInTargets, replaceInTechnicalGoals, setFields, setInvestigators, setKind, setObservations, setRelatedProposals, setScientificJustification, setSummary, setSupportingDocuments, setTargets, setTechnicalGoals, setTechnicalJustification, setTitle, setXmlId, updateUsing, withKind, withScientificJustification, withSummary, withTechnicalJustification, withTitle
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.ivoa.vodml.jpa.JPAManipulationsForObjectType
getId
Methods inherited from interface org.ivoa.vodml.jaxb.XmlIdManagement
getXmlId, hasNaturalKey, setXmlId
-
Constructor Details
-
ObservingProposal
public ObservingProposal()Creates a new ObservingProposal -
ObservingProposal
public ObservingProposal(String title, String summary, Justification scientificJustification, Justification technicalJustification, List<Investigator> investigators, ProposalKind kind, List<RelatedProposal> relatedProposals, List<SupportingDocument> supportingDocuments, List<Target> targets, List<Field> fields, List<TechnicalGoal> technicalGoals, List<Observation> observations) full parameter constructor.- Parameters:
title
- the proposal title.summary
- a short summary/abstract of the proposal.scientificJustification
- scientific justification.technicalJustification
- technical justification.investigators
- the person(s) making the proposal.kind
- the type of proposal.relatedProposals
- .supportingDocuments
- any additional documents.targets
- the targets of the proposal.fields
- the fields observed in the proposal.technicalGoals
- the technical goals of the proposal.observations
- the proposed observations.
-
ObservingProposal
Copy Constructor. Note that references will remain as is rather than be copied.- Parameters:
other
- the object to be copied.
-
ObservingProposal
Constructor from supertype instance.- Parameters:
superinstance
- The supertype.
-
-
Method Details
-
copyMe
make a clone of the object taking into account current polymorhic type.- Specified by:
copyMe
in classAbstractProposal
- Returns:
- the cloned object.
-
updateClonedReferences
public void updateClonedReferences()updates any cloned references that are contained within the hierarchy.- Overrides:
updateClonedReferences
in classAbstractProposal
-
updateUsing
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.
-
createObservingProposal
public static ObservingProposal createObservingProposal(Consumer<ObservingProposal.ObservingProposalBuilder> f) create a ObservingProposal in functional builder style.- Parameters:
f
- the functional builder.- Returns:
- an object initialized from the builder.
-
forceLoad
public void forceLoad()- Specified by:
forceLoad
in interfaceorg.ivoa.vodml.jpa.JPAManipulations
- Overrides:
forceLoad
in classAbstractProposal
-
persistRefs
Deprecated.generally better to use the model level reference persistence as only this can deal with "contained" references properly.- Specified by:
persistRefs
in interfaceorg.ivoa.vodml.jpa.JPAManipulations
- Overrides:
persistRefs
in classAbstractProposal
-
delete
public void delete(jakarta.persistence.EntityManager em) - Specified by:
delete
in interfaceorg.ivoa.vodml.jpa.JPAManipulationsForObjectType<Long>
-