03.03.2015 Views

CA Dynam for VSE User Guide

CA Dynam for VSE User Guide

CA Dynam for VSE User Guide

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

DYNACC <strong>User</strong> Exits<br />

DYNACC <strong>User</strong> Exits<br />

DYNACC supports two types of user exit processing. The first type of exit<br />

provided is an EXCP exit. Each time <strong>CA</strong> <strong>Dynam</strong> Catalog Management issues an<br />

EXCP, if the exit is active, control will be passed to it. This is designed to allow<br />

the exit to per<strong>for</strong>m a WAIT operation on the event control block which is<br />

passed as a parameter. This permits users who call DYNACC from within a<br />

data communications environment or multitasking environment to per<strong>for</strong>m<br />

their own WAIT processing and to avoid an operating system level WAIT<br />

operation which might be detrimental to per<strong>for</strong>mance.<br />

The exit may also be used <strong>for</strong> other purposes, such as per<strong>for</strong>mance metrics.<br />

DYNATEST programs use the exit to count EXCPs, <strong>for</strong> example.<br />

The other type of exit supported is a logical error exit. This is supplied <strong>for</strong><br />

debugging purposes and <strong>for</strong> error analysis of Catalog errors. If the exit is<br />

active, and the DYNACC catalog search routines encounter an unexpected<br />

error condition, the exit will be invoked. DYNATEST, <strong>for</strong> example, can generate<br />

code to dump areas of interest in such a situation.<br />

DYNAEXIT EXCP Exit<br />

This exit is activated by including a user exit module called DYNAEXIT with the<br />

DYNACC root module when the user application program is link edited. The<br />

routine will receive control immediately after an EXCP on the Catalog is issued.<br />

Control must be returned to <strong>CA</strong> <strong>Dynam</strong> or results are unpredictable. After<br />

control is returned from the user exit, Catalog Management will check to see<br />

whether a WAIT is still necessary. If none was per<strong>for</strong>med by the exit, <strong>CA</strong><br />

<strong>Dynam</strong> will issue one in the normal fashion. Upon entry to the users exit, the<br />

following conditions will exist:<br />

R0<br />

R13<br />

R14<br />

R15<br />

points to the save area provided by the caller on entry to DYNACC. This is<br />

assumed to be a standard <strong>for</strong>mat save area of 72 bytes. DYNACC stored the<br />

caller's registers R14 through R12 starting at offset decimal 12 on entry from<br />

the calling program. This save area may be used by the exit to obtain the<br />

addresses of code and data in the caller's program.<br />

points to a standard <strong>for</strong>mat save area in which the exit must save its registers<br />

on entry and restore them on exit. The first three words contain save area<br />

chain pointers and should not be changed.<br />

will point to the return address in <strong>CA</strong> <strong>Dynam</strong>.<br />

will point to the user exit entry point and may be used to obtain addressability.<br />

Chapter 10: Accessing the Catalog 10–17

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!