QueryInterceptor class abstract

An interceptor for SQL queries.

This wraps an existing QueryExecutor implemented by drift, and by default does nothing. However, specific methods can be overridden to customize the behavior of an existing query executor.

To apply an interceptor to an executor, use ApplyInterceptor.interceptWith. This returns a new QueryExecutor which can be used as a replacement when opening the database.

For an example on how interceptors may be used and installed, see this documentation page: https://drift.simonbinder.eu/docs/examples/tracing/

Constructors

QueryInterceptor()

Properties

hashCode int
The hash code for this object.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

beginExclusive(QueryExecutor parent) QueryExecutor
Intercept QueryExecutor.beginExclusive calls.
beginTransaction(QueryExecutor parent) TransactionExecutor
Intercept QueryExecutor.beginTransaction calls.
close(QueryExecutor inner) Future<void>
Intercept QueryExecutor.close calls.
commitTransaction(TransactionExecutor inner) Future<void>
Intercept TransactionExecutor.send calls.
dialect(QueryExecutor executor) SqlDialect
Intercept QueryExecutor.dialect calls.
ensureOpen(QueryExecutor executor, QueryExecutorUser user) Future<bool>
Intercept QueryExecutor.ensureOpen calls.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
rollbackTransaction(TransactionExecutor inner) Future<void>
Intercept TransactionExecutor.rollback calls.
runBatched(QueryExecutor executor, BatchedStatements statements) Future<void>
Intercept QueryExecutor.runBatched calls.
runCustom(QueryExecutor executor, String statement, List<Object?> args) Future<void>
Intercept QueryExecutor.runCustom calls.
runDelete(QueryExecutor executor, String statement, List<Object?> args) Future<int>
Intercept QueryExecutor.runDelete calls.
runInsert(QueryExecutor executor, String statement, List<Object?> args) Future<int>
Intercept QueryExecutor.runInsert calls.
runSelect(QueryExecutor executor, String statement, List<Object?> args) Future<List<Map<String, Object?>>>
Intercept QueryExecutor.runSelect calls.
runUpdate(QueryExecutor executor, String statement, List<Object?> args) Future<int>
Intercept QueryExecutor.runUpdate calls.
toString() String
A string representation of this object.
inherited
transactionCanBeNested(TransactionExecutor inner) bool
Intercept TransactionExecutor.supportsNestedTransactions calls.

Operators

operator ==(Object other) bool
The equality operator.
inherited