Horizon conversation states and statements
Overview
The communication statements (verbs) that an application program may issue at any given point in the conversation depend upon the current state of the conversation. The Model 204 Horizon conversation states are described briefly below. Statement and state dependencies lists the Horizon statements that can be issued in each state.
Conversation states
The following conversation states are used in Horizon:
Reset | The application program may allocate a conversation (open a process). |
---|---|
Send | The application program may send data, request confirmation, or (stop sending and) receive data. |
Receive | The application program may receive data from the partner application program or request permission to send. |
Confirm | The application program may comply with the request for confirmation. (It may also request permission to send later, after the confirmation.) |
Close | The application program may deallocate the conversation (close the process) with the remote application program. |
Conversation Statement/State Dependencies
The matrix in the following table lists the Horizon statements that can be issued in a given conversation state.
- "No" means that a state check is incurred because the statement is not valid in that state. State checks are issued only when a process is already open.
- The dashes in the matrix mean that some error other than a state check is incurred.
- N/A's (not applicable) are entered for TEST RECEIPT and WAIT FOR RECEIPT because they are not state dependent.
Reset | Send | Receive | Confirm | Close |
---|---|---|---|---|
OPEN PROCESS | Yes | - | - | - |
CONFIRM | - | Yes | No | No |
CONFIRMED | - | No | No | Yes |
CLOSE PROCESS | - | Yes | Yes | Yes |
FLUSH | - | Yes | No | No |
INVITE | - | Yes | No | No |
QUERY PROCESS | Yes | Yes | Yes | Yes |
RECEIVE | - | Yes | Yes | No |
SIGNAL | - | No | Yes | Yes |
SEND | - | Yes | No | No |
SEND ERROR | - | Yes | Yes | Yes |
TEST RECEIPT | N/A | N/A | N/A | N/A |
WAIT FOR RECEIPT | N/A | N/A | N/A | N/A |