com.ibm.connector2.cics

Class ECIInteraction

  • All Implemented Interfaces:
    javax.resource.cci.Interaction


    public final class ECIInteraction
    extends CICSInteraction

    The ECIInteraction class is used to control interaction with CICS via the ECIConnection object. The execute method on this class is used to pass input and output records to CICS, as well as passing an ECIInteractionSpec which is used to define details of the interaction with CICS.

    The only execute method supported within this implementation is the two record version allowing the user to specify both the input and output records to be used.

    The ECIInteraction holds the message id for use in ASYNC calls. This is to allow you to use multiple ECIInteractions to carry out concurrent ASYNC calls.

    Concurrent ASYNC calls are only possible however using separate ECIInteractions. Only one ASYNC call can be in progress at any one time on an ECIInteraction. Also there cannot be any transaction context associated with the ECIInteraction for concurrent ASYNC calls to be possible e.g. LocalTransaction cannot have been begun.

    • Method Summary

      Methods 
      Modifier and Type Method and Description
      void close()
      Close the interaction and disable any further communication with CICS.
      boolean execute(javax.resource.cci.InteractionSpec spec, javax.resource.cci.Record in, javax.resource.cci.Record out)
      In order to interact with CICS this method must be used to pass the definition of the call in an ECIInteractionSpec and the input and output records that will carry the data used in the interaction.
      void finalize()
      Clean up any outstanding Async replies if necessary.
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Method Detail

      • close

        public void close()
                   throws javax.resource.ResourceException
        Close the interaction and disable any further communication with CICS. If any outstanding SYNC_RECEIVE requests exist they will be cleaned up on close(). This may cause a delay on calling the close() method.
        Specified by:
        close in interface javax.resource.cci.Interaction
        Overrides:
        close in class CICSInteraction
        Throws:
        javax.resource.ResourceException
      • execute

        public boolean execute(javax.resource.cci.InteractionSpec spec,
                      javax.resource.cci.Record in,
                      javax.resource.cci.Record out)
                        throws javax.resource.ResourceException

        In order to interact with CICS this method must be used to pass the definition of the call in an ECIInteractionSpec and the input and output records that will carry the data used in the interaction.

        All SYNC_SEND requests made through an ECIInteraction must be followed by a SYNC_RECEIVE request. Any attempts to make a SYNC_SEND or SYNC_SEND_RECEIVE directly after a SYNC_SEND will result in an exception being thrown.

        Parameters:
        spec - An ECIInteractionSpec detailing the interaction to be made with CICS.
        in - The input data
        out - The output data
        Returns:
        Whether the call completed successfully or not.
        Throws:
        javax.resource.ResourceException - Thrown if there was a problem during the interaction with CICS.
      • finalize

        public void finalize()
        Clean up any outstanding Async replies if necessary.
        Overrides:
        finalize in class java.lang.Object
©Copyright IBM Corp. 1994, 2013
Legal