Interfaces for an In-Process Receive Adapter

The Messaging Engine instantiates and configures in-process adapters, passing in the transport proxy to allow the adapter to access its functionality. To enable configuration and binding to the transport proxy, adapters must implement the following configuration interfaces:

  • IBTTransport

  • IBTTransportControl

  • IBTTransportConfig

  • IBaseComponent

    Optionally if the adapter wants to receive handler information during initialization it needs to implement IPersistPropertyBag.

    The Messaging Engine creates an instance of an adapter, initializes it, and sets the configuration of receive locations. The Messaging Engine passes a property bag to an adapter on the AddReceiveEndpoint method call. The property bag contains the configuration for the receive location and receive handler. The configuration is stored in the database in the form of an XML-styled property bag. The Messaging Engine reads the XML and rehydrates a property bag from the XML. After at least one endpoint (receive location) is added, the adapter can start submitting messages.

Note

Adapters should not block Messaging Engine calls such as IBTTransportControl.Initialize, IPersistPropertyBag.Load, and IBTTransportConfig.AddReceiveEndpoint. Performing excessive processing in these calls will affect service startup time.

The following figure shows the object interactions involved in creating an in-process receive adapter.

Image that shows the object interactions involved in creating an in-process receive adapter.
Workflow for an in-process receive adapter

See Also

Adapter Variables
Developing a Receive Adapter
Instantiating and Initializing a Receive Adapter
Interfaces for an Isolated Receive Adapter
Interfaces for a Batch-Supported Receive Adapter
Interfaces for a Transactional Batch-Supported Receive Adapter
Interfaces for a Synchronous Request-Response Receive Adapter