Adapter Anatomy

The adapter built using WCF LOB Adapter SDK is comprised of design-time and run-time components. The design-time user experience consists of browsing, searching and extracting Service Contract with choice of operations from the adapter. The run-time provides features such as Connection Pool Management and in-memory Metadata Cache Management.

 

Adapter SDK Channel Implementation

The adapter built using Adapter SDK is basically a transport channel. This component intercepts messages coming in from a WCF client (channel factory) and sends messages to the WCF service (channel listener). It understands the internal WCF channel shapes (IInputChannel, IOutputChannel, IRequestChannel, etc.) and accordingly invokes the appropriate Metadata Handlers and Message Exchange Handlers in the adapter.

Handles the Browse and Search calls and invokes relevant queries on the adapter’s Metadata Handlers.

Metadata Cache Management

It maintains the in-memory cache for the adapter metadata (based on the Adapter SDK Metadata Object Model), used by the Adapter SDK for building Service Description Contracts and within Metadata Driven XML Reader / Writer.

Metadata Exchanger

It handles the client’s metadata messages including WS-MEX and Adapter SDK’s Search / Browse / Get Metadata.

<o:p></o:p>

Dynamic Contract (WSDL) Builder

This component is responsible for building the contract for the client from the adapter’s metadata based on the client’s request (after searching and browsing).

(Target System) Connection Pool Management

This component manages the adapter’s connections.

(Target System) Connection URI Builder

The Connection Uri Builder component is a helper class for the Adapter Developer to define the connection string for target system in a Uri format. It contains “Build” and “Parse” methods that are used by the Adapter Metadata Utility Tool to help the Adapter Consumer define the connection string. It also provides a secure representation for used in tracing and logging.