init<T extends Auth<AuthKeys> > static method
Future<void>
init<T extends Auth<AuthKeys> >({
- required AuthDelegate delegate,
- required AuthBackupDelegate<
T> backup, - AuthMessages msg = const AuthMessages(),
- bool initialCheck = true,
- bool listening = false,
Implementation
static Future<void> init<T extends Auth>({
required AuthDelegate delegate,
required AuthBackupDelegate<T> backup,
AuthMessages msg = const AuthMessages(),
bool initialCheck = true,
bool listening = false,
}) async {
while (_ioLock != null) {
await _ioLock;
}
final completer = Completer<void>();
_ioLock = completer.future;
try {
final prev = _i;
if (prev != null) {
try {
prev.dispose();
} catch (_) {}
}
final created = Authorizer<T>(
delegate: delegate,
backup: backup,
msg: msg,
);
_i = created;
await created.initialize(
initialCheck: initialCheck,
listening: listening,
);
} finally {
completer.complete();
if (_ioLock == completer.future) _ioLock = null;
}
}