The LISTBC exits receive control when users issue the
LISTBC command and when users log on to TSO/E (during logon, LISTBC
processes mail and notices).
- The initialization exit receives control
before LISTBC invokes the parse service routine to parse the command. The exit
gets control if you are using user logs or the broadcast data set
to store messages, that is, the value of EESCB_LOGNAME is either
* (indicating the name of the current broadcast data set) or a user
log name.
When a user logs on, the initialization exit receives
control before LISTBC opens the broadcast data set or the user log
to retrieve messages.
After the initialization exit returns
control to LISTBC, LISTBC determines whether it should process notices.
If so, LISTBC retrieves any notices from the broadcast data set.
LISTBC
then determines whether it should process mail. If not, LISTBC invokes
the termination exit and then completes processing. If so, LISTBC
determines whether it retrieves mail from the broadcast data set or
the user log. The LISTBC command processor then continues processing and invokes
the appropriate exits as described below.
- The pre-list exit receives control only
if EESCB_LOGNAME in the copy of the control block is a user log
name. The exit receives control before LISTBC associates (allocates)
the user log data set name to a ddname and opens the user log data
set.
- The pre-allocate exit receives control if
both of the following are true:
- EESCB_LOGNAME in the copy of the control block is a user log
name
- The user's user log data set does not yet exist
LISTBC tries to associate (allocate) the user log data set
name to a ddname. If the allocation fails because the user log does
not exist, LISTBC invokes the pre-allocate exit. If the allocation
is successful, the user log exists and the pre-allocate exit does
not receive control.
- The pre-read exit receives control only
if EESCB_LOGNAME in the copy of the control block is a user log
name. The exit receives control:
- After LISTBC opens the user log data set
- Before LISTBC reads a message
The pre-read exit gets control for each message in the user
log.
- The pre-display exit receives control only
if EESCB_LOGNAME in the copy of the control block is a user log
name. The exit receives control before LISTBC displays the message
to the user.
The pre-display exit gets control for each message
in the user log. After LISTBC reads and displays all of the messages,
it closes the data set.
- The failure exit receives control only if
EESCB_LOGNAME in the copy of the control block is a user log name.
The exit receives control whenever LISTBC detects an I/O error on
the user log when it is opening or closing the data set, or retrieving
a message.
- The termination exit receives control just
before LISTBC completes processing. The exit gets control if you
are using user logs or the broadcast data set to store messages, that
is, the value of EESCB_LOGNAME is either * (indicating the name
of the current broadcast data set) or a user log name.