com.ibm.cics.jcicsx

Interface ProgramLinker

  • All Known Subinterfaces:
    ChannelProgramLinker


    public interface ProgramLinker
    An interface for linking to a CICS program. This interface does not inherently support passing data to or from the target program. For an implementation that supports passing data using a Channel and its associated Containers, see ChannelProgramLinker
    Since CICS TS version:
    5.6
    Since package version:
    1.000.0
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method and Description
      ProgramLinkerResponse link()
      Link to another program expecting return.
      ProgramLinker setSyncOnReturn(boolean syncOnReturn)
      Specifies that the server region named on the SYSID option is to take a sync point on successful completion of the server program.
      ProgramLinker setSysId(java.lang.String sysId)
      Specify the system name of a CICS server region to where the program link request is to be routed.
      ProgramLinker setTransId(java.lang.String transId)
      Specifies the name of the mirror transaction that the remote region is to attach and under which it is to run the server program.
    • Method Detail

      • setSyncOnReturn

        ProgramLinker setSyncOnReturn(boolean syncOnReturn)
        Specifies that the server region named on the SYSID option is to take a sync point on successful completion of the server program. Changes to recoverable resources made by the server program are committed or rolled back independently of changes to recoverable resources made by the client program issuing the LINK request or changes made by the server in any subsequent LINK.

        A CICSConditionException with a RespCode.ROLLEDBACK is thrown by link() if changes to recoverable resources are rolled back before return from the server program.

        A CICSConditionException with a RespCode.TERMERR is thrown by link() following failure of the communications link or the system in which the server program is running. Programs are responsible for handling this condition and ensuring that data consistency is restored.

        Parameters:
        syncOnReturn - Whether to take a syncpoint after the target program has been invoked. The default value is false
        Returns:
        The ProgramLinker instance
      • setSysId

        ProgramLinker setSysId(java.lang.String sysId)
        Specify the system name of a CICS server region to where the program link request is to be routed. If you do not specify a remote system name CICS uses the REMOTESYSTEM attribute defined in the installed PROGRAM definition. If you specify a local system name in the SYSID option or the REMOTESYSTEM attribute, CICS ignores the name.

        A remote system name specified on the SYSID option takes priority over any remote system name specified on the PROGRAM resource definition or returned by the dynamic routing program.

        Parameters:
        sysId - Specifies the system name of a CICS server region to where the program link request is to be routed
        Returns:
        The ProgramLinker instance
      • setTransId

        ProgramLinker setTransId(java.lang.String transId)
        Specifies the name of the mirror transaction that the remote region is to attach and under which it is to run the server program. The transaction name that you specify on the LINK command takes priority over any transaction specified on the program resource definition. While you can specify your own name for the mirror transaction initiated by DPL requests, the transaction must be defined in the server region, and the transaction definition must specify the mirror program, DFHMIRS.

        If you omit the TRANSID option, reference is made to PROGRAM resource definitions held locally if the installed PROGRAM definition specifies remote attribute DYNAMIC(YES). Otherwise, the server region attaches either CSMI, CPMI, or CVMI by default.

        Parameters:
        transId - Specifies the name of the mirror transaction that the remote region is to attach and under which it is to run the server program
        Returns:
        The ProgramLinker instance