verify method
Future<void>
verify({
- required VerifyAuthProvider provider,
- required VoidCallback onUserStateChanged,
override
Used to prove possession of the e-mail address.
Normally, this is done to send an authentication email.
Authentication is performed by passing a class inheriting from VerifyAuthProvider as provider.
Execute onUserStateChanged when a user's authentication state is changed.
メールアドレスの所有を証明するために利用します。
通常はこれを実行することで認証用のメールを送信します。
VerifyAuthProviderを継承したクラスをproviderで渡すことにより、認証を行ないます。
ユーザーの認証状態が変更されたときにonUserStateChangedを実行します。
Implementation
@override
Future<void> verify({
required VerifyAuthProvider provider,
required VoidCallback onUserStateChanged,
}) async {
if (provider is EmailAndPasswordVerifyAuthProvider) {
await _prepareProcessInternal();
if (_user!.emailVerified) {
throw Exception("This user has already been authenticated.");
}
await database.setLanguageCode(
provider.locale?.languageCode ?? defaultLocale.languageCode,
);
await _user!.sendEmailVerification();
onUserStateChanged.call();
} else if (provider is EmailLinkVerifyAuthProvider) {
await _prepareProcessInternal();
if (_user!.emailVerified) {
throw Exception("This user has already been authenticated.");
}
await database.setLanguageCode(
provider.locale?.languageCode ?? defaultLocale.languageCode,
);
await _user!.sendEmailVerification();
onUserStateChanged.call();
}
}