/**
* Commits the supplied operations to the underlying database within a transactional scope.
*
* @param array $EntitiesToPersist The entities to persist
* @param array $ProceduresToExecute The procedures to execute
* @param array $EntitiesToDiscard The entities to discard
* @param array $CriteriaToDiscard The criteria of entities to discard
* @return void
*/
public final function Commit(array $EntitiesToPersist, array $ProceduresToExecute, array $EntitiesToDiscard, array $CriteriaToDiscard)
{
$UnitOfWork = $this->Domain->BuildUnitOfWork($EntitiesToPersist, $ProceduresToExecute, $EntitiesToDiscard, $CriteriaToDiscard);
$Transaction = new Relational\Transaction();
$this->MapUnitOfWorkToTransaction($UnitOfWork, $Transaction);
$this->Database->Commit($Transaction);
}