[UWS] Add the new Execution Phase `ARCHIVED` and check phase transitions.
A JUnit test case has been added in order to check that all possible phase
transitions are respecting the UWS-1.1 standard. However, there is anyway
a bit more freedom for some of them:
- it is possible to go to and come from UNKNOWN at any time, whatever is
the source or target phase.
- it is possible to go to ERROR or ABORTED from the phases HELD and
SUSPENDED. This fact was not specified in the State Machine figure of the
UWS standard but the following sentence at section
"2.1.3 Execution Phase" (page 7) should allow that:
"At any time before the COMPLETED phase a job may either be ABORTED or
may suffer an ERROR."
- the UWS-1.1 document has an inconsistency about the HELD phase. At
section "2.1.3 Execution Phase" (page 7), the following sentence implies
that it is only possible to go to HELD from PENDING (because it would not
be possible to queue the job). And so, when PHASE=RUN is sent by the UWS
client, if now possible, the job should go in phase QUEUED. However the
State Machine figure suggests that it is possible to go to HELD only from
EXECUTING and that a PHASE=RUN would make the job go back to EXECUTING (if
now possible). Because of this inconsistency, the UWSLibrary made possible
the following transitions: PENDING/EXECUTING->HELD->QUEUED/EXECUTING.
(note: a figure illustrating the phase transitions supported by the
UWSLibrary-4.3 has been created in the directory `img` of the
UWS-Tutorial website under the file name `state_machine.png`...which of
course will be visible only when uwslib-4.3 will be released)
Besides, this commit also include almost a full rewriting of the Javadoc of
JobPhase and ExecutionPhase. The Javadoc of UWSJob has just been reformated
so that comments do not exceed 80 (+2) characters. This reformating aims to
improve the human reading of the Javadoc while looking at the source files ;
however this should not affect much the HTML version of the Javadoc.
Loading
Please sign in to comment