You can have many converter programs in a CICS® system to support the operation of
the CICS business
logic interface. The place of converters in the CICS business logic interface is illustrated
in
Figure 1 and
Figure 1.
Each converter must provide two functions:
- Decode is used before the CICS application program is called. It
can:
- Use the data from the incoming request to build the COMMAREA
in the format expected by the application program.
- Supply the lengths of the input and output data in the application program's
COMMAREA.
- Perform administrative tasks related to the request.
- Encode is used after the CICS application program has been called.
It can:
- Use the data from the application program to build the response.
- Perform administrative tasks related to the response.
Notes: - If DECODE_DATA_PTR or ENCODE_DATA_PTR has been altered to address another
storage location, it is the converter program's responsibility to freemain
the original storage.
- It is the responsibility of the caller of the CICS business logic interface to free the
buffer addressed by ENCODE_DATA_PTR (that is, the address returned in field
WBBL_OUTDATA_PTR minus 4).
- If the converter abends, CICS will attempt to free the storage addressed by DECODE_DATA_PTR
and ENCODE_DATA_PTR. Therefore, you should ensure that these pointers never
contain the address of storage that has already been freed.