User-defined extensions overview

A user-defined extension is an optional component that you design and create to extend the functionality of IBM® Integration Bus.

You can create the following types of user-defined extension:

  • Input nodes
  • Message processing nodes
  • Output nodes
  • Connectors
  • Parsers
  • User exits

The user-defined nodes and parsers that you create can be used with the nodes and parsers that are supplied with the product, and with nodes and parsers that are supplied by other vendors. You can configure a user-defined node to use a user-defined parser.

You can write user-defined exits and parsers only in the C programming language. You can write user-defined nodes in the C or the Java™ programming languages, or you can use a subflow as a user-defined node. You can write connectors in the Java programming language only. You must compile user-defined nodes and parsers that are written in C into a loadable implementation library (LIL), and user exits that are written in C into a loadable exit library (LEL): that is, a shared library on Linux® and UNIX systems, or a dynamic link library (DLL) on Windows systems. You must package connectors and user-defined nodes that are written in Java as a JAR file. You must import any user-defined nodes that you create into the IBM Integration Toolkit before you can use them. You must create a connector for the runtime environment, and a user-defined node to represent the connector in a message flow.

To achieve platform independence, use the ANSI standard C or Java programming languages, and avoid platform-specific code in your user-defined extension.

The following topics help you to understand how your user-defined extensions interact with other components of IBM Integration Bus, such as message flows and integration servers. A good understanding of the integration node architecture helps you to plan and construct user-defined extensions more effectively.