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.
Metadata Browse / Search
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) BuilderThis 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.
Comments
- Anonymous
July 14, 2007
hi Sonu, my team is now working on a WCF LOB adapter that consumes a tcp-ip based system. We would like to know more about the connection pooling in this case since all samples just describes pooling over SQL Connections. one more thing, I'd like to know more about the message flow between Readers (Adapter Reader, Operation Reader, Structured Types Reader), and writers as well. Thanks