IProvider Interface
ASTA Interop for Linux and Windows provides a familiar migration path for users of MIDAS with the new TAstaIOIProvider
which uses the IProvider Interface to allow remote AstaIOClientProviders to communicate with AstaIO servers running
on Linux or Windows.
ASTA for Windows, released in 1998, abstracted
the server side database process to allow any Delphi 3rd Party Component to be used on ASTA servers and ASTA
Interop for Linux and Windows continues in that tradition. For 3rd Party Components that do not support the IProvider
Interface or for client side SQL support, AstaIO provides a similar abstraction.
The TAstaIOIProvider is used can be used on AstaIO servers to provide data from a dataset to a client dataset
and to resolve updates from a client dataset back to that dataset or to its underlying database. A TAstaIOIProvider
is invoked with TAstaIOClientIProvider on the remote clients. Windows (Delphi 5 and higher) and Linux servers and
clients can be mixed and matched.
Asta was looking at ways of limiting the coding needed on an Asta server to produce servers in the tradition of
MIDAS.The idea of the provider is to use the IProvider interface methods of the linked dataset to perform all actions
needed.
Not all TDataset descendants implement IProvider. That means that a TAstaIOIProvider component can only be linked/used
with a TDataset descendant that implements IProvider. Some of them are the BDE datasets, IBO, IBX and the datasets
from CTLibComps (Sybase Open Client).
When a TAstaIOIProvider is used to access a dataset, absolutely no code on the server is needed for any selects,
updates etc. Every action is handled by the dataset. Below
The only steps required to use a TAstaIOIProvider, is to put a TAstaIOIProvider on the datamodule and set the DataSet
property.
The DataSet property must point to a TDataSet that implements IProvider.
The TAstaIOClientIProvider dataset on the Asta client will point to a TAstaIOIProvider on the server. The description
of TAstaIOClientIProvider will explain it further.
Below is what the TAstaIOIProvider looks like the Kylix and Delphi 5 Object Inspector.:

To summarize, TAstaIOIProvider enables you to have a "code-less" Asta server, in terms of updating and
selecting data from a dataset.
|