[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 register or sign in to comment