asmj002 - Asynchronous Calls with Message Qualifiers
Followed by:
ECI_GET_SPECIFIC_REPLY_WAIT or ECI_GET_SPECIFIC_REPLY loop.
Summary: Issue 5 async calls with Message Qualifiers 5, 4, 3, 2, 1,
with optional 2 second delay between each one.
Issue ECI_GET_SPECIFIC_REPLY(_WAIT) for each Message_Qualifier
in order 1, 2, 3, 4, 5 checking timestamps are in reverse order.
asmj002 is a Java program that on each requested iteration
issues five asynchronous calls with Message Qualifiers assigned
5 through 1 (in reverse order).
This is followed either by an ECI_GET_SPECIFIC_REPLY_WAIT (if the -w
option is specified), or an ECI_GET_SPECIFIC_REPLY (the default) for
each Message Qualifier in the ascending order 1 through 5.
The timestamps returned in the commarea should appear in descending
order to indicate that the eci_get_specific_reply(_wait) picked
up the related Message Qualifier. On fast networks the timestamps
may appear the same, and so the -2 option can be specified to
separate each asynchronous call by 2 seconds (see Options: below).
ECI_GET_SPECIFIC_REPLY calls:
Up to nine ECI_GET_SPECIFIC_REPLY calls are issued to obtain
the required response from the server. Between each attempt to
receive this reply there is a one second delay to allow for network
traffic or a busy server. The output shows which call obtained the
response. For example, "eci_get_specific_reply #3 MQ 5" means that
the response was obtained on the third attempt for Message Qualifier 5.
If the result shows "eci_get_specific_reply #9" with a CICS Rc of -5,
this indicates that the response was not received after nine attempts.
Prior to each asynchronous call the commarea is initialised to
18 dashes. The server returns the current date and timestamp.
The default CICS server program is the supplied SRVTIME
which is compatible on all CICS servers. If desired, a different server
program can be supplied as an input parameter to this application.
Options:
- -wait ... eci_get_specific_reply is the default. The -w option
requests eci_get_specific_reply_wait.
- -2 ...... between each asynchronous call a 2 second delay is
issued. This allows the user to see the timestamps
on the replies in reverse order to confirm that the
eci Message_Qualifier is being used correctly.
- -clear .. in certain circumstances (eg timeouts, or security
error received on eci_get_specific_reply(_wait))
there may be outstanding replies from previous runs.
The -c option issues repeated eci_get_specific_reply
calls until eci_err_no_reply reports no more outstanding
replies. (Alternatively stop and restart JGate).
Security errors are specifically ignored.
Warning: using the -c and -w options
Care should be taken when running the program from multiple
processes as the -c option may clear outstanding replies
which another process is waiting on (if -w specified).
Data conversion:
This program contains no data conversion for the commarea.
Data conversion should be carried out on the server, if required.
Issue "asmj002 -?" for help and the default settings.
Sample Input
java jgtest.eci.asmj002 -clear -2sec
Sample Output
asmj002 - ECI Asynchronous Calls with Message Qualifiers
-j JGate -> hollings
-r JGate port -> 2006
-list list systems only -> false
-s CICS server -> (not specified)
-a application -> SRVTIME
-wait eci_get_specific_reply_wait -> false
-2sec delay between async calls -> true
-clear clear outstanding replies first -> true
-i # iterations -> 1
-u userid -> SYSAD
-p password -> SYSAD
-d delay -> 0 seconds
-x exit on ECI error -> false
-! debug -> false
-? Display settings only
--- asmj002 started 12/06/98 06:48
--- Successfully created JavaGateway connection ---
--- Using CICS Region: NETBTCLR
Request to clear outstanding replies
No more outstanding replies
# Call + Message_Qualifier Commarea-Data Length CICS Rc Abend
-- ------------------------------ ----------------- ------ ------- -----
1 Asynchronous call + MsgQual 5 ----------------- 18 0
1 Asynchronous call + MsgQual 4 ----------------- 18 0
1 Asynchronous call + MsgQual 3 ----------------- 18 0
1 Asynchronous call + MsgQual 2 ----------------- 18 0
1 Asynchronous call + MsgQual 1 ----------------- 18 0
1 eci_get_specific_reply#1 MQ 1 12/06/98 07:48:35 18 0
1 eci_get_specific_reply#1 MQ 2 12/06/98 07:48:33 18 0
1 eci_get_specific_reply#1 MQ 3 12/06/98 07:48:31 18 0
1 eci_get_specific_reply#1 MQ 4 12/06/98 07:48:29 18 0
1 eci_get_specific_reply#1 MQ 5 12/06/98 07:48:27 18 0
--- Successfully closed JavaGateway connection ---
--- asmj002 completed 12/06/98 06:48
--- Calls successful ... 10 out of 10
--- Iterations run ..... 1 out of 1
History log:
- Written : Apr 97 - Alan Hollingshead
- Updated : Apr 98 - uses inputParms, ECIlist, setJGate classes