Setup program

This program installs the resources—property sets, nodes, targets, and pools—that are used by the FEPI sample programs.

The definitions of each of these resources are organized so that they can easily be changed. They are kept separate from the processing that does the installation, and there is no hard-coding of values in the CICS® commands. There are four main tables, holding details of each resource type. This enables the resources to be changed by repeating sets of definitions which are in an easy-to-understand form. If required, you can change the program to obtain the resource definitions from a file.

The resources defined are:
  Pool     Property set   Nodes                  Targets
  POOL1    PROPSET1       NODE1  NODE2  NODE3    TARGET1
                          NODE4  NODE5
  POOL2    PROPSET2       NODE6  NODE7  NODE8    TARGET1
                          NODE9  NODE10
  POOL3    PROPSET3       NODE1  NODE2  NODE3    TARGET2
                          NODE4  NODE5

You must customize these definitions to match the requirements of your system. If you do, you may also need to change the definitions in the sample customization constants copy book DFH0BZCx. You do not need to change any other samples—you need recompile them.

Each table is processed in turn. Nodes and targets are organized into lists for reasons of efficiency. Details of resource installation are written to the CICS log automatically by FEPI.

On completion, a message is sent. The setup program would typically be started by a PLT program, in which case the message goes to the CICS log. It can, however, be invoked from a terminal and, in this case, the message is sent to the terminal.

For clarity, error checking is minimal. In particular, the FEPI INSTALL commands do not check errors at all, because FEPI reports any errors that occur to the FEPI transient data queue, and they are then recorded by the sample monitor program.

Program logic

For each property set in table
   FEPI INSTALL PROPERTYSET
For each node in table
   Add node to list
FEPI INSTALL NODELIST
For each target in table
   Add target to list
FEPI INSTALL TARGETLIST
For each pool in table
   Start new lists of nodes and targets
   For each entry within pool definition
       If node, add details to node list
       If target, add details to target list
   FEPI INSTALL POOL with NODELIST and TARGETLIST
Send completion message
RETURN