Package com.ibm.mq

Interface MQReceiveExit

All Known Implementing Classes:
MQExternalReceiveExit, MQReceiveExitChain

public interface MQReceiveExit
The receive exit interface allows you to examine, and possibly alter, the data received from the queue manager by the IBM MQ Client for Java.

Note: This interface does not apply when connecting directly to IBM MQ in bindings mode.

To provide your own receive exit, define a class that implements this interface. Create a new instance of your class and assign it to the MQEnvironment.receiveExit field before constructing your MQQueueManager object.

For example,

  // in MyReceiveExit.java
  class MyReceiveExit implements MQReceiveExit 
  {
      // you must provide an implementation of the receiveExit method
      public byte[] receiveExit(MQChannelExit       channelExitParms,
                                MQChannelDefinition channelDefinition,
                                byte[]              agentBuffer)
      {
          // your exit code goes here...
      }
  }
  // in your main program...
  MQEnvironment.receiveExit = new MyReceiveExit();
  ...    // other initialisation
  MQQueueManager qMgr        = new MQQueueManager("");
 
  • Method Summary

    Modifier and Type
    Method
    Description
    byte[]
    receiveExit(MQChannelExit channelExitParms, MQChannelDefinition channelDefinition, byte[] agentBuffer)
    The receive exit method that your class must provide.
  • Method Details

    • receiveExit

      byte[] receiveExit(MQChannelExit channelExitParms, MQChannelDefinition channelDefinition, byte[] agentBuffer)
      The receive exit method that your class must provide. It is invoked whenever the IBM MQ Client for Java receives a message from the queue manager.
      Parameters:
      channelExitParms - contains information about the context in which the exit is being invoked. channelExitParms.exitResponse is a parameter which you use to tell the IBM MQ Client for Java what action to take next.
      channelDefinition - contains details of the channel through which all communications with the queue manager take place.
      agentBuffer - contains the data received from the queue manager if channelExitParms.exitReason is MQChannelExit.MQXR_XMIT. Otherwise agentBuffer is null.
      Returns:
      the data to be processed. If the exit response code (in channelExitParms) is MQXCC_OK, the MQ Client for Java can now process the data. The simplest receive exit, therefore, consists of the single line:

      return agentBuffer;

      See Also: