The transport layer
The transport layer is the front-end of the IAF. The transport layer’s purpose is to communicate with an external message source and/or sink, extracting downstream messages from the message source ready for delivery to the codec layer, and sending Apama events already encoded by the codec layer on to the message sink.
This layer interfaces with the middleware message bus or message source/sink through the latter’s custom programming interface. It receives and dispatches messages from and to it as well as carrying out other proprietary operations. Depending on the nature of the message bus or message source in use, these operations could include opening a database file and running SQL queries on it, registering interest in specific message topics with a message bus, or providing security credentials for authentication. Note that if the IAF is also being used to output messages back to a message sink, then it must also carry out the operations required to enable this; for example, opening and writing to a database file, or dispatching messages onto a message bus.
As this functionality depends entirely on the message source and/or sink the IAF needs to interface with, the transport layer’s functionality is loaded dynamically through a custom transport plug-in.
Although Apama provides a set of standard transport plug-ins for popular messaging systems, the user may develop new transport plug-ins. See
C/C++ Transport Plug-in Development and
Java Transport Plug-in Development for the C/C++ and Java Transport plug-in Development Specifications, which describe how custom transport plug-ins may be developed using the C, C++ and Java programming languages.
The transport layer can contain one or more transport layer plug-ins. These are loaded when the adapter starts, and the set of loaded plug-ins can be changed while the adapter is running. In addition, a loaded plug-in may be re-configured at any time using the IAF Client tool. If a transport plug-in requires startup or re-configuration parameters, these need to be supplied in the IAF configuration file as documented in
The IAF configuration file.
Because a transport layer plug-in effectively implements a custom message transport, this manual uses the terms transport layer plug-in and event transport interchangeably.
Copyright © 2013
Software AG, Darmstadt, Germany and/or Software AG USA Inc., Reston, VA, USA, and/or Terracotta Inc., San Francisco, CA, USA, and/or Software AG (Canada) Inc., Cambridge, Ontario, Canada, and/or, Software AG (UK) Ltd., Derby, United Kingdom, and/or Software A.G. (Israel) Ltd., Or-Yehuda, Israel and/or their licensors.