dispose method

  1. @protected
  2. @override
void dispose()

Called by deactivate; should contain the actual object deactivation code.

If propose throws an Exception, the default Actor implementation will call dispose to clean up even a partially initialized object.

Implementation

@protected
@override
void dispose() {
  if (_txStatus == _TxStatus.txReady) ////
    rollbackTransaction();
  for (var query in _queries.values) ////
    query.deactivate();
  scheme.deactivateUpdatersLookup();
  _beginTransaction?.close();
  _beginTransaction = null;
  _commitTransaction?.close();
  _commitTransaction = null;
  _rollbackTransaction?.close();
  _rollbackTransaction = null;
  _savepoint?.close();
  _savepoint = null;
  _rollbackToSavepoint?.close();
  _rollbackToSavepoint = null;
  _insert?.close();
  _insert = null;
  _updateByRowId?.close();
  _updateByRowId = null;
  _updateByKeyId?.close();
  _updateByKeyId = null;
  _deleteByRowId?.close();
  _deleteByRowId = null;
  _deleteByKeyId?.close();
  _deleteByKeyId = null;
  _existsByRowId?.close();
  _existsByRowId = null;
  _existsByKeyId?.close();
  _existsByKeyId = null;
  _selectByRowId?.close();
  _selectByRowId = null;
  _selectByKeyId?.close();
  _selectByKeyId = null;
  _database?.close();
  _database = null;
  super.dispose();
}