Developing a user exit

Develop a user exit by declaring it, implementing its behavior, then compiling it.

To develop a user exit, follow these steps.

  1. Declare the user exit.

    Declare a user exit by using the bipInitializeUserExits function to specify the following properties:

    1. Name (used to register and control the active state of the exit)
    2. User context storage
    3. A function to be invoked (for one or more Event Types)
  2. Implement the user exit behavior.

    When the user exit is declared, a set of functions is registered, and these functions are invoked when specific events occur. The behavior of the user exit is provided by implementing these functions. The following table lists the events and their associated functions:

    Event Function
    A message is dequeued from the input source cciInputMessageCallback
    A message is propagated to the node for processing cciPropagatedMessageCallback
    The node completes processing cciNodeCompletionCallback
    The transaction ends cciTransactionEventCallback
  3. Your user exit code must implement the cleanup function.

    The user exit library must implement the bipTerminateUserExits function. This function is invoked as the ExecutionGroup's process is ending, and your user exit must clear up any resources allocated during the bipInitializeUserExits function.

  4. Compile.

    Use your existing process for your environment to compile your user exit. The supported C compilers are shown in Optional software support. See Compiling a C user-defined extension for more details.

  5. Start of changeLink the compiled code to a library with the extension .lel that exports the bipInitializeUserExits and bipTerminateUserExits functions.End of change
Related concepts
User exits
Related tasks
Deploying a user exit
Exploiting user exits
Related reference
mqsicreatebroker command
mqsichangebroker command
mqsireportflowuserexits command
mqsichangeflowuserexits command
Notices | Trademarks | Downloads | Library | Support | Feedback

Copyright IBM Corporation 1999, 2009Copyright IBM Corporation 1999, 2009.
Last updated : 2009-01-07 15:19:59

ac02150_