Package org.ivoa.dm.proposal.management
Class SubmittedProposal
java.lang.Object
org.ivoa.dm.proposal.management.SubmittedProposal
- All Implemented Interfaces:
org.ivoa.vodml.jaxb.XmlIdManagement
,org.ivoa.vodml.jpa.JPAManipulations
,org.ivoa.vodml.jpa.JPAManipulationsForObjectType<Long>
@Entity
@VoDml(id="proposalManagement:SubmittedProposal",
role=objectType)
public class SubmittedProposal
extends Object
implements org.ivoa.vodml.jpa.JPAManipulationsForObjectType<Long>, org.ivoa.vodml.jaxb.XmlIdManagement
an instance of a proposal that has been submitted.
objectType: SubmittedProposal
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
A builder class for SubmittedProposal, mainly for use in the functional builder pattern. -
Field Summary
Modifier and TypeFieldDescriptionprotected Long
inserted database keyprotected List<ObservationConfiguration>
.protected ObservingProposal
ReferenceObject proposal : the proposal that was submitted.protected List<ProposalReview>
the reviews.protected Date
the date when all the proposals are due.protected Date
the date that the proposal was submitted.protected Boolean
the proposal can go on to allocation. -
Constructor Summary
ConstructorDescriptionCreates a new SubmittedProposalCopy Constructor.SubmittedProposal
(ObservingProposal proposal, List<ObservationConfiguration> config, Date submissionDate, Boolean successful, Date reviewsCompleteDate, List<ProposalReview> reviews) full parameter constructor. -
Method Summary
Modifier and TypeMethodDescriptionvoid
Add a org.ivoa.dm.proposal.management.ObservationConfiguration to the composition.void
Add a org.ivoa.dm.proposal.management.ProposalReview to the composition.static SubmittedProposal
create a SubmittedProposal in functional builder style.void
Returns config composition as an immutable list.getId()
Returns proposal ReferenceReturns reviews composition as an immutable list.Returns reviewsCompleteDate Attribute.Returns submissionDate Attribute.Returns successful Attribute.getXmlId()
getter for XMLIDboolean
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
Remove a org.ivoa.dm.proposal.management.ObservationConfiguration from the composition.void
Remove a org.ivoa.dm.proposal.management.ProposalReview from the composition.void
update a org.ivoa.dm.proposal.management.ObservationConfiguration in the composition.void
update a org.ivoa.dm.proposal.management.ProposalReview in the composition.void
setConfig
(List<ObservationConfiguration> pConfig) Defines whole config composition.void
setProposal
(ObservingProposal pProposal) Defines proposal Referencevoid
setReviews
(List<ProposalReview> pReviews) Defines whole reviews composition.void
setReviewsCompleteDate
(Date pReviewsCompleteDate) Set reviewsCompleteDate Attribute.void
setSubmissionDate
(Date pSubmissionDate) Set submissionDate Attribute.void
setSuccessful
(Boolean pSuccessful) Set successful Attribute.void
void
updates any cloned references that are contained within the hierarchy.void
updateUsing
(SubmittedProposal other) Update this object with the content of the given object.withReviewsCompleteDate
(Date pReviewsCompleteDate) fluent setter for reviewsCompleteDate Attribute.withSubmissionDate
(Date pSubmissionDate) fluent setter for submissionDate Attribute.withSuccessful
(Boolean pSuccessful) fluent setter for successful Attribute.
-
Field Details
-
_id
inserted database key -
submissionDate
@VoDml(id="proposalManagement:SubmittedProposal.submissionDate", role=attribute, type="ivoa:datetime", typeRole=primitiveType) protected Date submissionDatethe date that the proposal was submitted. : Attribute submissionDate : multiplicity 1 -
successful
@VoDml(id="proposalManagement:SubmittedProposal.successful", role=attribute, type="ivoa:boolean", typeRole=primitiveType) protected Boolean successfulthe proposal can go on to allocation. : Attribute successful : multiplicity 1 -
reviewsCompleteDate
@VoDml(id="proposalManagement:SubmittedProposal.reviewsCompleteDate", role=attribute, type="ivoa:datetime", typeRole=primitiveType) protected Date reviewsCompleteDatethe date when all the proposals are due. : Attribute reviewsCompleteDate : multiplicity 1 -
config
@VoDml(id="proposalManagement:SubmittedProposal.config", role=composition, type="proposalManagement:ObservationConfiguration", typeRole=objectType) protected List<ObservationConfiguration> config. composition config : ( Multiplicity : 0..* ) -
reviews
@VoDml(id="proposalManagement:SubmittedProposal.reviews", role=composition, type="proposalManagement:ProposalReview", typeRole=objectType) protected List<ProposalReview> reviewsthe reviews. composition reviews : ( Multiplicity : 1..* ) -
proposal
@VoDml(id="proposalManagement:SubmittedProposal.proposal", role=reference, type="proposal:ObservingProposal", typeRole=objectType) protected ObservingProposal proposalReferenceObject proposal : the proposal that was submitted. ( Multiplicity : 1 )
-
-
Constructor Details
-
SubmittedProposal
public SubmittedProposal()Creates a new SubmittedProposal -
SubmittedProposal
public SubmittedProposal(ObservingProposal proposal, List<ObservationConfiguration> config, Date submissionDate, Boolean successful, Date reviewsCompleteDate, List<ProposalReview> reviews) full parameter constructor.- Parameters:
proposal
- the proposal that was submitted.config
- .submissionDate
- the date that the proposal was submitted.successful
- the proposal can go on to allocation.reviewsCompleteDate
- the date when all the proposals are due.reviews
- the reviews.
-
SubmittedProposal
Copy Constructor. Note that references will remain as is rather than be copied.- Parameters:
other
- the object to be copied.
-
-
Method Details
-
getId
- Specified by:
getId
in interfaceorg.ivoa.vodml.jpa.JPAManipulationsForObjectType<Long>
- Returns:
- the id
-
getXmlId
getter for XMLID- Specified by:
getXmlId
in interfaceorg.ivoa.vodml.jaxb.XmlIdManagement
-
setXmlId
- Specified by:
setXmlId
in interfaceorg.ivoa.vodml.jaxb.XmlIdManagement
-
hasNaturalKey
public boolean hasNaturalKey()- Specified by:
hasNaturalKey
in interfaceorg.ivoa.vodml.jaxb.XmlIdManagement
-
updateClonedReferences
public void updateClonedReferences()updates any cloned references that are contained within the hierarchy. -
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.
-
getProposal
Returns proposal Reference- Returns:
- proposal Reference
-
setProposal
Defines proposal Reference- Parameters:
pProposal
- reference to set
-
getConfig
Returns config composition as an immutable list.- Returns:
- config composition.
-
setConfig
Defines whole config composition.- Parameters:
pConfig
- composition to set.
-
addToConfig
Add a org.ivoa.dm.proposal.management.ObservationConfiguration to the composition.- Parameters:
p
- org.ivoa.dm.proposal.management.ObservationConfiguration to add
-
removeFromConfig
Remove a org.ivoa.dm.proposal.management.ObservationConfiguration from the composition.- Parameters:
p
- org.ivoa.dm.proposal.management.ObservationConfiguration to remove
-
replaceInConfig
update a org.ivoa.dm.proposal.management.ObservationConfiguration in the composition.- Parameters:
_p
- org.ivoa.dm.proposal.management.ObservationConfiguration to update the match is done via the database key
-
getSubmissionDate
Returns submissionDate Attribute.- Returns:
- submissionDate Attribute
-
setSubmissionDate
Set submissionDate Attribute.- Parameters:
pSubmissionDate
- value to set
-
withSubmissionDate
fluent setter for submissionDate Attribute.- Parameters:
pSubmissionDate
- value to set- Returns:
- SubmittedProposal
-
getSuccessful
Returns successful Attribute.- Returns:
- successful Attribute
-
setSuccessful
Set successful Attribute.- Parameters:
pSuccessful
- value to set
-
withSuccessful
fluent setter for successful Attribute.- Parameters:
pSuccessful
- value to set- Returns:
- SubmittedProposal
-
getReviewsCompleteDate
Returns reviewsCompleteDate Attribute.- Returns:
- reviewsCompleteDate Attribute
-
setReviewsCompleteDate
Set reviewsCompleteDate Attribute.- Parameters:
pReviewsCompleteDate
- value to set
-
withReviewsCompleteDate
fluent setter for reviewsCompleteDate Attribute.- Parameters:
pReviewsCompleteDate
- value to set- Returns:
- SubmittedProposal
-
getReviews
Returns reviews composition as an immutable list.- Returns:
- reviews composition.
-
setReviews
Defines whole reviews composition.- Parameters:
pReviews
- composition to set.
-
addToReviews
Add a org.ivoa.dm.proposal.management.ProposalReview to the composition.- Parameters:
p
- org.ivoa.dm.proposal.management.ProposalReview to add
-
removeFromReviews
Remove a org.ivoa.dm.proposal.management.ProposalReview from the composition.- Parameters:
p
- org.ivoa.dm.proposal.management.ProposalReview to remove
-
replaceInReviews
update a org.ivoa.dm.proposal.management.ProposalReview in the composition.- Parameters:
_p
- org.ivoa.dm.proposal.management.ProposalReview to update the match is done via the database key
-
createSubmittedProposal
public static SubmittedProposal createSubmittedProposal(Consumer<SubmittedProposal.SubmittedProposalBuilder> f) create a SubmittedProposal 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
-
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
-