Required components – Pitney Bowes MapXtreme User Manual
Page 497

Appendix D: Extensible Data Providers
Required Components
MapXtreme v7.1
504
Developer Guide
Required Components
To build a basic data provider, the following components must be implemented. These classes
support basic data access operations including opening a table, reading the table contents and
associated metadata, and searching the table contents.
Refer to the
SpatiaLite Sample Data Provider
as a complete and robust provider implementation
for tips and guidance on how to implement these interfaces.
IDataProvider Interface
The IDataProvider interface provides the basis for a custom data provider implementation by
exposing the capabilities for opening the table formats serviced by this provider. This also exposes
capabilities related to data sources that manage those tables. Implementing the IDataSource
interface is an optional task as you can build a data provider without going through a data source.
This class is typically defined to be a singleton instance.
ITableDefinition Interface
The ITableDefinition interface provides the main link between your extensible data provider and the
MapXtreme public API Table model. It provides the properties necessary to instantiate an ITable for
a specific data provider. Classes that implement this interface identify the information required to be
supplied by the user of MapXtreme to open a table. The MapXtreme Catalog provides a few
overloads to the OpenTable method that allow you and other users of your data provider to
instantiate a table from an ITable. After the call to OpenTable, all other interfaces such as
ITableMetadata, ICursor, IFeature, etc are hidden to the user and used internally by MapXtreme.