The valid state transitions specified for the DomainDownload Program are specified inTable A.1.Each of the transitions defines a start state and end state for the transition and is identified by a unique number. Five of the transitions are from the base ProgramStateMachineTypeand retain the transition identifier numbers specified for Programs. The additional transitions relate the base Program states with the subordinate states defined for the DomainDownload. These states have been assigned unique transition identifier numbers that distinguish them from the base Programtransition identifiers. In cases where transitions occur between substates and the Program’sbase states, two transitions are specified. One transition identifies the base state change and a second substate change. For example, ReadyToRunning and ToOpening occur at the same time.

Table A.1 also specifies the defined states, causes for the transitions, and the effects of each transition. Program Control Methodsare used by the Clientto “run” the DomainDownload. The Methodscause or trigger the specified transitions. The transition effects are the specified EventTypeswhich notify the Clientof Programactivity.

Table A.1– DomainDownload states

No.

Transition name

Cause

From State

To State

Effect

2

ReadyToRunning

Start Method

Ready

Running

Report Transition 2 Event/Result

3

RunningToHalted

Halt Method/Error or Internal.

Running

Halted

Report Transition 3 Event/Result

5

RunningToSuspended

Suspend Method

Running

Suspended

Report Transition 5 Event/Result

6

SuspendedToRunning

Resume Method

Suspended

Running

Report Transition 6 Event/Result

7

SuspendedToHalted

Halt Method

Suspended

Halted

Report Transition 7 Event/Result

10

OpeningToSending

Internal

Opening

Sending

Report Transition 10 Event/Result

11

SendingToSending

Internal

Sending

Sending

Report Transition 11 Event/Result

12

SendingToClosing

Internal

Sending

Closing

Report Transition 12 Event/Result

13

SendingToAborted

Halt Method/Error

Opening

Aborted

Report Transition 13 Event/Result

14

ClosingToCompleted

Internal

Closing

Completed

Report Transition 14 Event/Result

15

SendingToSuspended

Suspend Method

Sending

Suspended

Report Transition 16 Event/Result

16

SuspendedToSending

Resume Method

Suspended

Sending

Report Transition 17 Event/Result

18

SuspendedToAborted

Halt Method

Suspended

Aborted

Report Transition 18 Event/Result

17

ToOpening

Internal

Ready

Opening

Report Transition 19 Event/Result