Table 91 shows the formats owned by the requeststream domain, and shows the functions performed. The modules that issue requests in this format make them to RZ.
Format | Module called | Calling modules | Functions |
---|---|---|---|
LSTN | DFHRZLN |
DFHIIDM DFHIIRP DFHIIRR |
REGISTER LISTEN CANCEL DEREGISTER |
NOTI |
DFHIIRP DFHIIRR |
DFHRZLN | NOTIFY |
Register the notify interface with the server domain. The calback_gate is the gate number +in the caller’s domain+. The caller’s domain is inferred by kernel linkage.
Returns the "notify_token" which identifies this registration.
Returns ("exception, registration_rejected") if the domain is not ready to allow registrations (initializing or quiescing, for example), or if it cannot issue any more tokens (due to resource limitations, for example). This response is given if the other functions of the domain are not compromised by this failure. Higher severity responses may be given otherwise.
The caller must supply the parameters "call_domain()" and "call_gate()" on this function. See design file for details.
OK|EXCEPTION|DISASTER|INVALID|KERNERROR|PURGED
RESPONSE | Possible REASON values |
---|---|
EXCEPTION | REGISTRATION_REJECTED |
Listen to the server object and notify the registered notify callback gate, identified by "notify_token", if the object requires service. Pass the supplied "client_token" on the notify call.
Exceptions:
The caller must supply the parameters "call_domain()" and "call_gate()" on this function. See design file for details.
OK|EXCEPTION|DISASTER|INVALID|KERNERROR|PURGED
RESPONSE | Possible REASON values |
---|---|
EXCEPTION |
NOTIFY_TOKEN_UNKNOWN NOTIFY_TOKEN_IN_USE NOTIFY_TOKEN_MISUSED SERVER_TOKEN_UNKNOWN SERVER_TOKEN_IN_USE |
Cancel an outstanding listen request. Ensure that it is not driven upon return from this call. The "notify_token" and the "server_token" are to be specified, and optionally the "client_token" that was specified on the "listen" request can be retrieved.
Exceptions:
The caller must supply the parameters "call_domain()" and "call_gate()" on this function. See design file for details.
OK|EXCEPTION|DISASTER|INVALID|KERNERROR|PURGED
RESPONSE | Possible REASON values |
---|---|
EXCEPTION |
NOTIFY_TOKEN_UNKNOWN NOTIFY_TOKEN_MISUSED SERVER_TOKEN_UNKNOWN LISTEN_NOT_OUTSTANDING |
Call outstanding notifies on this registration (identified by "notify_token") with a normal termination notification, and then remove the registration of the client (caller) domain from this server domain. The "notify_token" is no longer valid.
Exceptions:
The caller must supply the parameters "call_domain()" and "call_gate()" on this function. See design file for details.
OK|EXCEPTION|DISASTER|INVALID|KERNERROR|PURGED
RESPONSE | Possible REASON values |
---|---|
EXCEPTION |
NOTIFY_TOKEN_UNKNOWN, NOTIFY_TOKEN_MISUSED |
Call the client domain notify gate registered as "notify_token" passing the "server_token" and the "client_token" given on the "listen" call, and with a status indicating the notification reason. The listen is considered discharged after this call, and this notify will not be called again unless another "listen" request is made.
If the callback returns an exception response then the registration should be deleted. This is equivalent to a "deregister" call, including the call of this same notify callback gate for any other outstanding "listen" requests.
If the callback returns a response more serious than exception ("disaster", "purged", etc.) then the registration should be deleted but no other callbacks are to be made to outstanding "listen"s for this registration. In particular a kernel error, or an "invalid" response, should not attempt to recall the same gate again. This is deemed to be a severe internal error.
The caller (the server domain) will use "call_gate()" with the value of the callback gate supplied on registration, and "call_domain()" with the client domain who registered. This must refer to a valid gate or a kernel error will result.
OK|EXCEPTION|DISASTER|INVALID|KERNERROR|PURGED
RESPONSE | Possible REASON values |
---|---|
EXCEPTION | NOTIFY_CALLBACK_FAILED |