Package org.ivoa.dm.execution
Class JobExecution
java.lang.Object
org.ivoa.dm.execution.JobExecution
- All Implemented Interfaces:
org.ivoa.vodml.jpa.JPAManipulations,org.ivoa.vodml.jpa.JPAManipulationsForObjectType<String>
@Entity
@VoDml(id="execution:JobExecution",
role=objectType)
public class JobExecution
extends Object
implements org.ivoa.vodml.jpa.JPAManipulationsForObjectType<String>
the execution of a job on a computational resource.
objectType: JobExecution
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classA builder class for JobExecution, mainly for use in the functional builder pattern. -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected Datethe time when the job execution was created.protected Datethe time at which the job execution will be destroyed.protected Datethe time at which the job execution finished.protected ExecutionNodeReferenceObject executionNode : the node where the job is being executed.protected StringUnique job execution identifier.protected List<ParameterValue>the input parameter values for the job execution.protected List<ParameterValue>the output parameter values for the job execution.protected Stringthe identifier of the user who owns the job execution.protected List<PerformanceMetric>performance metrics for the job execution.protected Stringthis is a client supplied identifier - the system does nothing other than to return it as part of the description of the job.protected Datethe start time of the job execution.protected ExecutionPhasethe current status of the job execution.protected ToolReferenceObject tool : the tool being executed. -
Constructor Summary
ConstructorsConstructorDescriptionCreates a new JobExecutionJobExecution(String id, String runId, String ownerID, Tool tool, List<ParameterValue> inputs, List<ParameterValue> outputs, ExecutionPhase status, ExecutionNode executionNode, Date creationTime, Date startTime, Date endTime, Date destructionTime, List<PerformanceMetric> performanceMetrics) full parameter constructor.JobExecution(JobExecution other) Copy Constructor. -
Method Summary
Modifier and TypeMethodDescriptionvoidAdd a org.ivoa.dm.execution.ParameterValue to the composition.voidAdd a org.ivoa.dm.execution.ParameterValue to the composition.voidAdd a org.ivoa.dm.execution.PerformanceMetric to the composition.static JobExecutioncreate a JobExecution in functional builder style.voiddelete(jakarta.persistence.EntityManager em) voidReturns creationTime Attribute.Returns destructionTime Attribute.Returns endTime Attribute.Returns executionNode ReferencegetId()Returns id Attribute.Returns inputs composition as an immutable list.Returns outputs composition as an immutable list.Returns ownerID Attribute.Returns performanceMetrics composition as an immutable list.getRunId()Returns runId Attribute.Returns startTime Attribute.Returns status Attribute.getTool()Returns tool ReferencevoidRemove a org.ivoa.dm.execution.ParameterValue from the composition.voidRemove a org.ivoa.dm.execution.ParameterValue from the composition.voidRemove a org.ivoa.dm.execution.PerformanceMetric from the composition.voidupdate a org.ivoa.dm.execution.ParameterValue in the composition.voidupdate a org.ivoa.dm.execution.ParameterValue in the composition.voidupdate a org.ivoa.dm.execution.PerformanceMetric in the composition.voidsetCreationTime(Date pCreationTime) Set creationTime Attribute.voidsetDestructionTime(Date pDestructionTime) Set destructionTime Attribute.voidsetEndTime(Date pEndTime) Set endTime Attribute.voidsetExecutionNode(ExecutionNode pExecutionNode) Defines executionNode ReferencevoidSet id Attribute.voidsetInputs(List<ParameterValue> pInputs) Defines whole inputs composition.voidsetOutputs(List<ParameterValue> pOutputs) Defines whole outputs composition.voidsetOwnerID(String pOwnerID) Set ownerID Attribute.voidsetPerformanceMetrics(List<PerformanceMetric> pPerformanceMetrics) Defines whole performanceMetrics composition.voidSet runId Attribute.voidsetStartTime(Date pStartTime) Set startTime Attribute.voidsetStatus(ExecutionPhase pStatus) Set status Attribute.voidDefines tool Referencevoidupdates any cloned references that are contained within the hierarchy.voidupdateUsing(JobExecution other) Update this object with the content of the given object.withCreationTime(Date pCreationTime) fluent setter for creationTime Attribute.withDestructionTime(Date pDestructionTime) fluent setter for destructionTime Attribute.withEndTime(Date pEndTime) fluent setter for endTime Attribute.fluent setter for id Attribute.withOwnerID(String pOwnerID) fluent setter for ownerID Attribute.fluent setter for runId Attribute.withStartTime(Date pStartTime) fluent setter for startTime Attribute.withStatus(ExecutionPhase pStatus) fluent setter for status Attribute.
-
Field Details
-
id
@VoDml(id="execution:JobExecution.id", role=attribute, type="ivoa:string", typeRole=primitiveType) protected String idUnique job execution identifier. : Attribute id type ivoa:string : multiplicity 1 -
runId
@VoDml(id="execution:JobExecution.runId", role=attribute, type="ivoa:string", typeRole=primitiveType) protected String runIdthis is a client supplied identifier - the system does nothing other than to return it as part of the description of the job. : Attribute runId type ivoa:string : multiplicity 0..1 -
ownerID
@VoDml(id="execution:JobExecution.ownerID", role=attribute, type="ivoa:string", typeRole=primitiveType) protected String ownerIDthe identifier of the user who owns the job execution. : Attribute ownerID type ivoa:string : multiplicity 1 -
tool
@VoDml(id="execution:JobExecution.tool", role=reference, type="tool:Tool", typeRole=objectType) protected Tool toolReferenceObject tool : the tool being executed. ( Multiplicity : 1 ) -
inputs
@VoDml(id="execution:JobExecution.inputs", role=composition, type="execution:ParameterValue", typeRole=objectType) protected List<ParameterValue> inputsthe input parameter values for the job execution. composition inputs : ( Multiplicity : 0..* ) -
outputs
@VoDml(id="execution:JobExecution.outputs", role=composition, type="execution:ParameterValue", typeRole=objectType) protected List<ParameterValue> outputsthe output parameter values for the job execution. composition outputs : ( Multiplicity : 0..* ) -
status
@VoDml(id="execution:JobExecution.status", role=attribute, type="execution:ExecutionPhase", typeRole=enumeration) protected ExecutionPhase statusthe current status of the job execution. : Attribute status type execution:ExecutionPhase : multiplicity 1 -
executionNode
@VoDml(id="execution:JobExecution.executionNode", role=reference, type="execution:ExecutionNode", typeRole=objectType) protected ExecutionNode executionNodeReferenceObject executionNode : the node where the job is being executed. ( Multiplicity : 1 ) -
creationTime
@VoDml(id="execution:JobExecution.creationTime", role=attribute, type="ivoa:datetime", typeRole=primitiveType) protected Date creationTimethe time when the job execution was created. : Attribute creationTime type ivoa:datetime : multiplicity 1 -
startTime
@VoDml(id="execution:JobExecution.startTime", role=attribute, type="ivoa:datetime", typeRole=primitiveType) protected Date startTimethe start time of the job execution. : Attribute startTime type ivoa:datetime : multiplicity 0..1 -
endTime
@VoDml(id="execution:JobExecution.endTime", role=attribute, type="ivoa:datetime", typeRole=primitiveType) protected Date endTimethe time at which the job execution finished. : Attribute endTime type ivoa:datetime : multiplicity 0..1 -
destructionTime
@VoDml(id="execution:JobExecution.destructionTime", role=attribute, type="ivoa:datetime", typeRole=primitiveType) protected Date destructionTimethe time at which the job execution will be destroyed. : Attribute destructionTime type ivoa:datetime : multiplicity 0..1 -
performanceMetrics
@VoDml(id="execution:JobExecution.performanceMetrics", role=composition, type="execution:PerformanceMetric", typeRole=objectType) protected List<PerformanceMetric> performanceMetricsperformance metrics for the job execution. composition performanceMetrics : ( Multiplicity : 0..* )
-
-
Constructor Details
-
JobExecution
public JobExecution()Creates a new JobExecution -
JobExecution
public JobExecution(String id, String runId, String ownerID, Tool tool, List<ParameterValue> inputs, List<ParameterValue> outputs, ExecutionPhase status, ExecutionNode executionNode, Date creationTime, Date startTime, Date endTime, Date destructionTime, List<PerformanceMetric> performanceMetrics) full parameter constructor.- Parameters:
id- Unique job execution identifier.runId- this is a client supplied identifier - the system does nothing other than to return it as part of the description of the job.ownerID- the identifier of the user who owns the job execution.tool- the tool being executed.inputs- the input parameter values for the job execution.outputs- the output parameter values for the job execution.status- the current status of the job execution.executionNode- the node where the job is being executed.creationTime- the time when the job execution was created.startTime- the start time of the job execution.endTime- the time at which the job execution finished.destructionTime- the time at which the job execution will be destroyed.performanceMetrics- performance metrics for the job execution.
-
JobExecution
Copy Constructor. Note that references will remain as is rather than be copied.- Parameters:
other- the object to be copied.
-
-
Method Details
-
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.
-
getId
Returns id Attribute.- Specified by:
getIdin interfaceorg.ivoa.vodml.jpa.JPAManipulationsForObjectType<String>- Returns:
- id Attribute
-
setId
Set id Attribute.- Parameters:
pId- value to set
-
withId
fluent setter for id Attribute.- Parameters:
pId- value to set- Returns:
- JobExecution
-
getRunId
Returns runId Attribute.- Returns:
- runId Attribute
-
setRunId
Set runId Attribute.- Parameters:
pRunId- value to set
-
withRunId
fluent setter for runId Attribute.- Parameters:
pRunId- value to set- Returns:
- JobExecution
-
getOwnerID
Returns ownerID Attribute.- Returns:
- ownerID Attribute
-
setOwnerID
Set ownerID Attribute.- Parameters:
pOwnerID- value to set
-
withOwnerID
fluent setter for ownerID Attribute.- Parameters:
pOwnerID- value to set- Returns:
- JobExecution
-
getTool
Returns tool Reference- Returns:
- tool Reference
-
setTool
Defines tool Reference- Parameters:
pTool- reference to set
-
getInputs
Returns inputs composition as an immutable list.- Returns:
- inputs composition.
-
setInputs
Defines whole inputs composition.- Parameters:
pInputs- composition to set.
-
addToInputs
Add a org.ivoa.dm.execution.ParameterValue to the composition.- Parameters:
p- org.ivoa.dm.execution.ParameterValue to add
-
removeFromInputs
Remove a org.ivoa.dm.execution.ParameterValue from the composition.- Parameters:
p- org.ivoa.dm.execution.ParameterValue to remove
-
replaceInInputs
update a org.ivoa.dm.execution.ParameterValue in the composition.- Parameters:
_p- org.ivoa.dm.execution.ParameterValue to update the match is done via the database key
-
getOutputs
Returns outputs composition as an immutable list.- Returns:
- outputs composition.
-
setOutputs
Defines whole outputs composition.- Parameters:
pOutputs- composition to set.
-
addToOutputs
Add a org.ivoa.dm.execution.ParameterValue to the composition.- Parameters:
p- org.ivoa.dm.execution.ParameterValue to add
-
removeFromOutputs
Remove a org.ivoa.dm.execution.ParameterValue from the composition.- Parameters:
p- org.ivoa.dm.execution.ParameterValue to remove
-
replaceInOutputs
update a org.ivoa.dm.execution.ParameterValue in the composition.- Parameters:
_p- org.ivoa.dm.execution.ParameterValue to update the match is done via the database key
-
getStatus
Returns status Attribute.- Returns:
- status Attribute
-
setStatus
Set status Attribute.- Parameters:
pStatus- value to set
-
withStatus
fluent setter for status Attribute.- Parameters:
pStatus- value to set- Returns:
- JobExecution
-
getExecutionNode
Returns executionNode Reference- Returns:
- executionNode Reference
-
setExecutionNode
Defines executionNode Reference- Parameters:
pExecutionNode- reference to set
-
getCreationTime
Returns creationTime Attribute.- Returns:
- creationTime Attribute
-
setCreationTime
Set creationTime Attribute.- Parameters:
pCreationTime- value to set
-
withCreationTime
fluent setter for creationTime Attribute.- Parameters:
pCreationTime- value to set- Returns:
- JobExecution
-
getStartTime
Returns startTime Attribute.- Returns:
- startTime Attribute
-
setStartTime
Set startTime Attribute.- Parameters:
pStartTime- value to set
-
withStartTime
fluent setter for startTime Attribute.- Parameters:
pStartTime- value to set- Returns:
- JobExecution
-
getEndTime
Returns endTime Attribute.- Returns:
- endTime Attribute
-
setEndTime
Set endTime Attribute.- Parameters:
pEndTime- value to set
-
withEndTime
fluent setter for endTime Attribute.- Parameters:
pEndTime- value to set- Returns:
- JobExecution
-
getDestructionTime
Returns destructionTime Attribute.- Returns:
- destructionTime Attribute
-
setDestructionTime
Set destructionTime Attribute.- Parameters:
pDestructionTime- value to set
-
withDestructionTime
fluent setter for destructionTime Attribute.- Parameters:
pDestructionTime- value to set- Returns:
- JobExecution
-
getPerformanceMetrics
Returns performanceMetrics composition as an immutable list.- Returns:
- performanceMetrics composition.
-
setPerformanceMetrics
Defines whole performanceMetrics composition.- Parameters:
pPerformanceMetrics- composition to set.
-
addToPerformanceMetrics
Add a org.ivoa.dm.execution.PerformanceMetric to the composition.- Parameters:
p- org.ivoa.dm.execution.PerformanceMetric to add
-
removeFromPerformanceMetrics
Remove a org.ivoa.dm.execution.PerformanceMetric from the composition.- Parameters:
p- org.ivoa.dm.execution.PerformanceMetric to remove
-
replaceInPerformanceMetrics
update a org.ivoa.dm.execution.PerformanceMetric in the composition.- Parameters:
_p- org.ivoa.dm.execution.PerformanceMetric to update the match is done via the database key
-
createJobExecution
create a JobExecution in functional builder style.- Parameters:
f- the functional builder.- Returns:
- an object initialized from the builder.
-
forceLoad
public void forceLoad()- Specified by:
forceLoadin interfaceorg.ivoa.vodml.jpa.JPAManipulations
-
delete
public void delete(jakarta.persistence.EntityManager em) - Specified by:
deletein interfaceorg.ivoa.vodml.jpa.JPAManipulationsForObjectType<String>
-