An object oriented framework mechanism for data transfer between a data source
and a data target provides an infrastructure that embodies the steps necessary
to perform the data transfer and a mechanism to extend the framework to fit a particular
data transfer environment. Certain core functions are provided by the framework,
which interact with extensible functions provided by the framework user. The architecture
of the framework allows a developer to determine the conditions and parameters
that apply to the data transfer while allowing a user to interact with the framework
with an interface that is consistent regardless of the specific combination of
data source, data target, connection type, or protocol. The extensible functions
allow new data transfer environments to be easily implemented using the framework.
The framework thus allows a common user interface for transferring data between
any data source and any data target, which may be easily customized to include
data sources, new data targets, new transfer protocols, etc. The framework greatly
simplifies the user's job of transferring data since it provides a common interface,
and greatly simplifies the developer's job of providing a user interface for a
new combination of hardware and/or software by providing established classes that
may be easily extended to implement the desired data transfer environment.