borland Packages Class Hierarchy dx.sql.dataset Package
java.lang.Object +----com.borland.dx.sql.dataset.ResolutionManager +----com.borland.dx.sql.dataset.SQLResolutionManager
Constructors Properties Methods
Implements DefaultResolver, TransactionSupport
The SQLResolutionManager
component performs most of the work for the resolution process. The algorithms for transaction management and the change resolution reside in this object. An instance of this class is instantiated with an implementation of the DefaultResolver
and TransactionSupport
interfaces.
If a null TransactionSupport
object is passed in, the SQLResolutionManager
takes no action for transaction processing (as is applicable to non-transaction-processing data sources).
This object manages the resolution process as follows:
DataSet
components passed into the saveChanges()
method is analyzed and split into a list of trees. Each tree encapsulates any one-to-many-to-many (and so on) behavior.
DataSet
is represented as a tree with no children.
The resolution process is broken into two different algorithms. For stand-alone DataSet
components, all rows in the following categories are processed in this order to preserve the integrity of the data:
Deleted
rows
Modified
rows
For one-to-many DataSet
relationships, all rows in the following categories are processed in this order:
Deleted
rows for the bottom-most children DataSet
components
DataSet
components are recursively processed:
Inserted
rows, starting at the root DataSet
and working recursively downward
Modified
rows, bottom-up.
Since changes are not in sequential order, changing link fields in a one-to-many relationship can cause data loss. Therefore, this action is disallowed by default.
public SQLResolutionManager()Constructs a
SQLResolutionManager
object.
public Database getDatabase() public void setDatabase(Database database)Specifies the
Database
object that this component is associated with.
public boolean isDoTransactions() public void setDoTransactions(boolean doTransactions)Specifies whether transactions are supported or not.
public void setTransactionSupport(TransactionSupport transactionSupport)Write-only property that overwrites the superclass setter to make this class the default
TransactionSupport
object.
protected final void initError(int code, DataSet dataSet, DataSet view, ResolveError resolveError)Adds extra error context information to
resolveError
object.
code
ResolutionException
variables.
dataSet
DataSet
passed into the ResolutionManager
.
view
ResolveError
ResolveError
for more information.