LazyDatabase class

A special database executor that delegates work to another QueryExecutor. The other executor is lazily opened by a DatabaseOpener.

Inheritance
Available extensions

Constructors

LazyDatabase(DatabaseOpener opener, {SqlDialect dialect = SqlDialect.sqlite, bool openImmediately = false})
Declares a LazyDatabase that will run opener when the database is first requested to be opened. You must specify the same dialect as the underlying database has.

Properties

dialect → SqlDialect
The SqlDialect to use for this database engine.
no setteroverride
hashCode → int
The hash code for this object.
no setterinherited
opener → DatabaseOpener
The function that will open the database when this LazyDatabase gets opened for the first time.
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited

Methods

beginExclusive() → QueryExecutor
Returns a new QueryExecutor that, when first opened, takes an exclusive lock over this executor and prevents queries from running until it is closed.
override
beginTransaction() → TransactionExecutor
Starts a TransactionExecutor.
override
close() → Future<void>
Closes this database connection and releases all resources associated with it. Implementations should also handle close calls in a state where the database isn't open.
override
ensureOpen(QueryExecutorUser user) → Future<bool>
Opens the executor, if it has not yet been opened.
override
interceptWith(QueryInterceptor interceptor) → QueryExecutor

Available on QueryExecutor, provided by the ApplyInterceptor extension

Returns a QueryExecutor that will use this executor internally, but with calls intercepted by the given interceptor.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
runBatched(BatchedStatements statements) → Future<void>
Prepares and runs statements.
override
runCustom(String statement, [List<Object?>? args]) → Future<void>
Runs a custom SQL statement without any variables. The result of that statement will be ignored.
override
runDelete(String statement, List<Object?> args) → Future<int>
Runs an delete statement and returns how many rows where affected.
override
runInsert(String statement, List<Object?> args) → Future<int>
Runs an insert statement with the given variables. Returns the row id or the auto_increment id of the inserted row.
override
runSelect(String statement, List<Object?> args) → Future<List<Map<String, Object?>>>
Runs a select statement with the given variables and returns the raw results.
override
runUpdate(String statement, List<Object?> args) → Future<int>
Runs an update statement with the given variables and returns how many rows where affected.
override
toString() → String
A string representation of this object.
inherited

Operators

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